ปรับปรุงล่าสุด: สิงหาคม 2021; Microsoft Excel 365, 2019, 2016.
ในบทช่วยสอน VBA สำหรับ Excel Automation วันนี้ เราจะเรียนรู้เกี่ยวกับวิธีที่เราสามารถเปลี่ยนสีของเซลล์โดยทางโปรแกรมตามค่าของเซลล์
เราสามารถใช้เทคนิคนี้ในการพัฒนาแดชบอร์ดสถานะอย่างง่ายเป็นต้น
ติดตั้ง
หากคุณยังไม่ได้พัฒนาบน Excel เราขอแนะนำให้ดูคู่มือแนะนำ Excel Macrosของเรา โดยเฉพาะอย่างยิ่ง คุณต้องตรวจสอบให้แน่ใจว่าแท็บนักพัฒนาพร้อมใช้งานใน Microsoft Excel Ribbon ของคุณ เนื่องจากคุณจะใช้เพื่อเขียนโค้ดง่ายๆ
- เปิดไมโครซอฟต์เอ็กเซล โปรดทราบว่าโค้ดที่ให้ไว้ในบทช่วยสอนนี้คาดว่าจะใช้งานได้ใน Excel 2007 และเวอร์ชันอื่นๆ
- ในแผ่นงานเปล่า ให้เพิ่มตารางต่อไปนี้ :

- ตอนนี้ไปข้างหน้าและกำหนดชื่อช่วงโดยกดปุ่ม: สูตร>>กำหนดชื่อ
![วิธีตั้งค่าสีเซลล์ Excel ตามเงื่อนไขด้วย VBA วิธีตั้งค่าสีเซลล์ Excel ตามเงื่อนไขด้วย VBA]()
เปลี่ยนสีภายในเซลล์ตามค่าด้วย Cell.Interior.Color
- กด รายการ นักพัฒนาใน Ribbon
- กด Visual Basic หรือ Alt+F11 เพื่อเปิดตัวแก้ไข VBA สำหรับนักพัฒนาของคุณ
- ถัดไป ไฮไลต์เวิร์กชีตที่คุณต้องการเรียกใช้โค้ด หรือเลือกโมดูลที่มีรหัส VBA ของคุณ
- ไปข้างหน้าและวางรหัสนี้ ในตัวอย่างของเรา เราจะปรับเปลี่ยนสีภายในของช่วงของเซลล์เป็นค่า RGB ของเซลล์เฉพาะที่สอดคล้องกับสีแดง สีเหลือง และสีเขียว
- โดยเฉพาะอย่างยิ่งเราใช้วิธี Excel VBA Cell.Interior.Colorและส่งผ่านค่า RGB หรือดัชนีสีที่สอดคล้องกัน
Sub Color_Cell_Condition()
Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range
Set StatusRange = Range("Status")
For Each MyCell In StatusRange
StatValue = MyCell.Value
Select Case StatValue
Case "Progressing"
MyCell.Interior.Color = RGB(0, 255, 0)
Case "Pending Feedback"
MyCell.Interior.Color = RGB(255, 255, 0)
Case "Stuck"
MyCell.Interior.Color = RGB(255, 0, 0)
End Select
Next MyCell
End Sub
- เรียกใช้รหัสของคุณ - โดยกด F5 หรือ Run >> Run Sub / UserForm
- คุณจะสังเกตเห็นว่าแดชบอร์ดสถานะถูกกรอกดังที่แสดงด้านล่าง:
![วิธีตั้งค่าสีเซลล์ Excel ตามเงื่อนไขด้วย VBA วิธีตั้งค่าสีเซลล์ Excel ตามเงื่อนไขด้วย VBA]()
- บันทึกรหัสของคุณและปิดตัวแก้ไข VBA ของคุณ