เพื่อดึงดูดสายตาให้กับข้อมูลของคุณ คุณสามารถ สลับสีแถวใน Excel ได้แม้ไม่ได้สร้างตาราง ในบทความนี้ ผมจะอธิบายวิธี สลับสีแถวใน Excel โดยไม่ใช้ตาราง
คุณสามารถดาวน์โหลดสมุดงานฝึกฝนได้ที่นี่:
5 วิธีสลับสีแถวใน Excel โดยไม่ใช้ตาราง
ที่นี่ ผมจะอธิบาย 5 วิธีในการ สลับสีแถวใน Excel โดยไม่ใช้ตาราง นอกจากนี้ เพื่อความเข้าใจที่ดียิ่งขึ้น ผมจะใช้ข้อมูลตัวอย่างที่มี 4 คอลัมน์ ได้แก่ Product, Sales, Profit และ Status

1. ใช้ตัวเลือก Fill Color เพื่อสลับสีแถวใน Excel
คุณสามารถใช้คุณสมบัติ Fill Color เพื่อ สลับสีแถวใน Excel โดยไม่ใช้ตาราง นี่เป็นกระบวนการด้วยมืออย่างสมบูรณ์ ดังนั้น หากคุณมีข้อมูลมาก จะใช้เวลานาน ขั้นตอนมีดังนี้
ขั้นตอน:
- เลือกแถวที่คุณต้องการระบายสี ในที่นี้ ผมเลือกแถว 6, 8, 10, 12 และ 14

- ไปที่แท็บ Home
- จากคุณสมบัติ Fill Color >> เลือกสีที่ต้องการ ในที่นี้เลือก Green, Accent 6, Lighter 60% ในกรณีนี้ ลองเลือกสี อ่อน เพราะสีเข้มอาจบังข้อมูลที่ป้อนเข้าไป แล้วคุณอาจต้องเปลี่ยน Font Color

สุดท้าย คุณจะเห็นผลลัพธ์พร้อม สลับสีแถว

อ่านเพิ่มเติม: วิธีระบายสีแถวสลับสำหรับเซลล์ที่ผสานใน Excel
2. ใช้คุณสมบัติ Cell Styles
คุณสามารถใช้คุณสมบัติ Cell Styles เพื่อ สลับสีแถวใน Excel โดยไม่ใช้ตาราง นี่เป็นกระบวนการด้วยมืออย่างสมบูรณ์ ดังนั้น หากคุณมีข้อมูลมาก อาจใช้เวลานาน ขั้นตอนมีดังนี้
ขั้นตอน:
- เลือกแถวที่ต้องการระบายสี ในที่นี้เลือกแถว 6, 8, 10, 12 และ 14
- จากแท็บ Home >> ไปที่คุณสมบัติ Cell Styles
- เลือกสีหรือสไตล์ที่ต้องการ ในที่นี้เลือก Calculation

สุดท้าย คุณจะเห็นผลลัพธ์พร้อม สลับสีแถว

อ่านเพิ่มเติม: วิธีระบายสีแถวสลับตามค่าเซลล์ใน Excel
บทความที่คล้ายกัน
- วิธีเปิดสมุดงานอื่นและคัดลอกข้อมูลด้วย Excel VBA
- [แก้ไขแล้ว!] เมธอด Open ของออบเจกต์ Workbooks ล้มเหลว (4 วิธีแก้)
- Excel VBA สำหรับเติมอาร์เรย์ด้วยค่าเซลล์ (4 ตัวอย่างที่เหมาะสม)
- วิธีเปิดสมุดงานและรัน Macro ด้วย VBA (4 ตัวอย่าง)
3. ใช้ Conditional Formatting พร้อมสูตร
คุณสามารถใช้ Conditional Formatting พร้อมสูตร ที่นี่ผมจะใช้ สอง สูตรที่แตกต่างกันกับ ฟังก์ชัน ROW นอกจากนี้ จะใช้ฟังก์ชัน MOD และ ISEVEN
1. ใช้ฟังก์ชัน MOD และ ROW เพื่อสลับสีแถวใน Excel
เริ่มต้นด้วยฟังก์ชัน MOD และ ROW เพื่อ สลับสีแถวใน Excel โดยไม่ใช้ตาราง ขั้นตอนมีดังนี้
ขั้นตอน:
- เลือกช่วงข้อมูลที่ต้องการใช้ Conditional Formatting เพื่อสลับสีแถว ในที่นี้เลือกช่วง B5:E14

- จากแท็บ Home >> ไปที่คำสั่ง Conditional Formatting
- เลือกตัวเลือก New Rule เพื่อใช้สูตร

ในขณะนี้ กล่องโต้ตอบชื่อ New Formatting Rule จะปรากฏ
- จาก กล่องโต้ตอบ >> เลือก Use a formula to determine which cells to format
- ใส่สูตรต่อไปนี้ในกล่อง Format values where this formula is true:
=MOD(ROW(),2)- ไปที่เมนู Format

การวิเคราะห์สูตร
- ฟังก์ชัน ROW จะนับจำนวน แถว
- ฟังก์ชัน MOD จะคืนค่า เศษ หลังการหาร
- ดังนั้น MOD(ROW(),2)–> จะกลายเป็น 1 หรือ 0 เพราะตัวหารคือ 2
- สุดท้าย หาก ผลลัพธ์ เป็น 0 จะไม่มีสี Fill
ในขณะนี้ กล่องโต้ตอบชื่อ Format Cells จะปรากฏ
- จากตัวเลือก Fill >> เลือกสีที่ต้องการ ในที่นี้เลือก Green, Accent 6, Lighter 40% ลองเลือกสี อ่อน เพราะสีเข้มอาจบังข้อมูล แล้วอาจต้องเปลี่ยน Font Color
- กด OK เพื่อใช้การจัดรูปแบบ

- กด OK บนกล่องโต้ตอบ New Formatting Rule คุณสามารถดูตัวอย่างทันทีในกล่อง Preview

สุดท้าย คุณจะได้ผลลัพธ์พร้อม สลับสีแถว

อ่านเพิ่มเติม: สลับสีแถวตามกลุ่มใน Excel (6 วิธี)
2. ใช้ฟังก์ชัน ISEVEN และ ROW
ตอนนี้ ผมจะแสดงการใช้ ISEVEN และ ROW เพื่อ สลับสีแถวใน Excel โดยไม่ใช้ตาราง ขั้นตอนคล้ายวิธีก่อนหน้า
- ปฏิบัติตาม วิธี-3.1 เพื่อเปิดหน้าต่าง New Formatting Rule
- จากกล่องโต้ตอบ >> เลือก Use a formula to determine which cells to format
- ใส่สูตรต่อไปนี้ในกล่อง Format values where this formula is true:
=ISEVEN(ROW())- ไปที่เมนู Format

การวิเคราะห์สูตร
- ฟังก์ชัน ISEVEN จะคืนค่า True หากค่าเป็น เลขคู่
- ฟังก์ชัน ROW จะนับจำนวน แถว
- ดังนั้น หากหมายเลขแถวเป็นคี่ ISEVEN จะคืนค่า FALSE ผลคือไม่มีสี Fill
กล่องโต้ตอบ Format Cells จะปรากฏ
- จากตัวเลือก Fill >> เลือกสี ในที่นี้เลือก Gold, Accent 4, Lighter 60% คุณเห็นการจัดรูปแบบในกล่อง Sample ด้านล่าง เลือกสี อ่อน เพราะสีเข้มอาจบังข้อมูล แล้วอาจต้องเปลี่ยน Font Color
- กด OK เพื่อใช้การจัดรูปแบบ

- กด OK บนกล่องโต้ตอบ New Formatting Rule คุณเห็นตัวอย่างทันทีในกล่อง Preview

สุดท้าย คุณจะเห็นผลลัพธ์พร้อม สลับสีแถว

อ่านเพิ่มเติม: วิธีทับทีแถวสลับใน Excel (3 วิธี)
4. ใช้สูตรกับคำสั่ง Sort & Filter
คุณสามารถใช้สูตรกับคำสั่ง Sort & Filter เพื่อ สลับสีแถวใน Excel โดยไม่ใช้ตาราง นอกจากนี้ ผมจะใช้ฟังก์ชัน MOD, IF และ ROW ในสูตร ขั้นตอนมีดังนี้
ขั้นตอน:
- เลือกเซลล์ที่ต้องการเก็บผลลัพธ์ ผมเลือกเซลล์ F5
- ใช้สูตรที่สอดคล้องในเซลล์ F5
=MOD(IF(ROW()=2,0,IF(E5=E4,F4, F4+1)), 2)
การวิเคราะห์สูตร
- IF(E5=E4,F4, F4+1)–> นี่คือ การทดสอบตรรกะ หากค่าเซลล์ E5 เท่ากับ E4 จะคืนค่า F4 มิฉะนั้นจะให้ 1 เพิ่มกับค่า F4
- Output: 1
- ฟังก์ชัน ROW() นับจำนวน แถว
- Output: 5
- IF(5=2,0,1)–> การทดสอบตรรกะว่าหาก 5 เท่ากับ 2 คืนค่า 0 มิฉะนั้นคืน 1
- Output: 1
- ฟังก์ชัน MOD คืนค่า เศษ หลังการหาร
- สุดท้าย MOD(1,2)–> กลายเป็น
- Output: 1
- กด ENTER เพื่อได้ผลลัพธ์

- ลากไอคอน Fill Handle เพื่อ AutoFill ข้อมูลที่เหลือในเซลล์ F6:F14

ในขณะนี้ คุณจะเห็นผลลัพธ์ดังนี้

- เลือกช่วงข้อมูล ในที่นี้เลือก B4:F14
- จากริบบอน Home >> ไปที่แท็บ Editing
- จากคุณสมบัติ Sort & Filter >> เลือกตัวเลือก Filter ที่นี่ คุณสามารถใช้เทคนิคแป้นพิมพ์ CTRL+SHIFT+L

ในขณะนี้ คุณจะเห็นสถานการณ์ดังนี้

- คลิกที่ลูกศรดรอปดาวน์บนคอลัมน์ F
- เลือก 1 และยกเลิกถูก 0
- กด OK

ต่อมา คุณจะเห็น ข้อมูลที่กรองแล้ว

- เลือก ข้อมูลที่กรองแล้ว
- ไปที่แท็บ Home
- จากคุณสมบัติ Fill Color >> เลือกสี ในที่นี้เลือก Green, Accent 6, Lighter 60% เลือกสี อ่อน เพราะสีเข้มอาจบังข้อมูล แล้วอาจต้องเปลี่ยน Font Color

- เพื่อลบคุณสมบัติ Filter จากริบบอน Home >> ไปที่แท็บ Editing
- จาก Sort & Filter >> เลือก Filter อีกครั้ง
- หรือกด CTRL+SHIFT+L เพื่อลบ Filter

สุดท้าย คุณจะเห็นผลลัพธ์พร้อม สีแถวเดียวกัน สำหรับ Status เดียวกัน

5. ใช้โค้ด VBA เพื่อสลับสีแถวใน Excel โดยไม่ใช้ตาราง
คุณสามารถใช้ โค้ด VBA เพื่อ สลับสีแถวใน Excel โดยไม่ใช้ตาราง ขั้นตอนมีดังนี้
ขั้นตอน:
- เลือกแท็บ Developer >> จากนั้นเลือก Visual Basic

- จากแท็บ Insert >> เลือก Module

- เขียน โค้ด ต่อไปนี้ใน Module
Sub ChangeRowColors() Dim range As range Dim chr As Long Dim NoColor As Long Dim Colored As Long 'I will Define Color as Input NoColor = vbWhite Colored = RGB(0, 255, 255) 'Select a range as variable Set range = Selection 'You should select more than 1 Row If range.Rows.Count = 1 Then Exit Sub 'Loop for Color Changing For chr = 1 To range.Rows.Count If chr Mod 2 = 0 Then range.Rows(chr).Interior.Color = Colored 'Even Row Else range.Rows(chr).Interior.Color = NoColor 'Odd Row End If Next chr End Sub

การวิเคราะห์โค้ด
- สร้าง Sub Procedure ชื่อ ChangeRowColors
- ประกาศตัวแปร range เป็น Range; chr เป็น Long; NoColor เป็น Long; Colored เป็น Long
- RGB (0, 255, 255) เป็นสีอ่อนชื่อ Aqua
- คุณสมบัติ Selection จะเลือกช่วงจากแผ่นงาน
- ใช้ For Each Loop เพื่อใส่ สี ในแถวสลับที่เลือก โดยใช้ VBA IF Statement พร้อม การทดสอบตรรกะ
- Save โค้ด แล้วกลับไปที่ Excel File

- เลือกช่วง B5:E14
- จากแท็บ Developer >> เลือก Macros

- เลือก Macro (ChangeRowColors) และคลิก Run

สุดท้าย คุณจะเห็นผลลัพธ์พร้อม สลับสีแถว

อ่านเพิ่มเติม: วิธีทำให้โค้ด VBA รันเร็วขึ้น (15 วิธีที่เหมาะสม)
💬 สิ่งที่ควรจำ
- เมื่อมีข้อมูลมาก ควรใช้ วิธี 3 (Conditional Formatting) หรือ วิธี 5 (VBA Code) จะประหยัดเวลาในการ สลับสีแถว
- กรณีข้อมูลน้อย สามารถใช้ วิธี 1 (Fill Color) หรือ วิธี 2 (Cell Styles) ได้ง่าย
- เมื่อต้องการระบายสีข้อมูลที่คล้ายกันหรือจัดเรียงแล้ว ควรใช้ วิธี 4 (Sort & Filter)
ส่วนฝึกปฏิบัติ
ตอนนี้ คุณสามารถฝึกปฏิบัติวิธีที่อธิบายไว้ด้วยตัวเองได้

สรุป
หวังว่าบทความนี้จะเป็นประโยชน์ ที่นี่ ผมอธิบาย 5 วิธีในการ สลับสีแถวใน Excel โดยไม่ใช้ตาราง คุณสามารถเยี่ยมชมเว็บไซต์ Exceldemy เพื่อเรียนรู้เนื้อหาเกี่ยวกับ Excel เพิ่มเติม โปรดเขียนความคิดเห็น ข้อเสนอแนะ หรือคำถามในส่วนความคิดเห็นด้านล่าง
บทความที่เกี่ยวข้อง
- วิธีใช้คำสั่ง Select Case ใน Excel VBA (2 ตัวอย่าง)
- เรียนรู้การเขียนโปรแกรม Excel VBA และ Macro (บทเรียนฟรี - ขั้นตอนต่อขั้นตอน)
- กลับด้านแถวใน Excel (4 วิธีง่าย)
- หนังสือ Excel VBA Programming 6 เล่มที่ดีที่สุด (สำหรับผู้เริ่มต้นและผู้เชี่ยวชาญ)
- วิธีใช้ VBA OnKey Event ใน Excel (พร้อมตัวอย่างที่เหมาะสม)
- Excel VBA: เหตุการณ์ระดับสมุดงานและการใช้งาน
- วิธีเปิดสมุดงานจากเส้นทางโดยใช้ Excel VBA (4 ตัวอย่าง)
- เรียกดูเส้นทางไฟล์โดยใช้ Excel VBA (3 ตัวอย่าง)