ฉันไม่เชื่อว่ามีวิธีการใด ๆ ในการเลือกสีแบบไดนามิกเมื่อใช้ Excel ที่สร้างขึ้นในการจัดรูปแบบตามเงื่อนไข คุณสามารถใช้ VBA เพื่อให้บรรลุตามที่คุณคาดไว้
สมมติว่าคอลัมน์ C มีวันที่ที่ต่ำกว่าในช่วงช่วงที่คอลัมน์ D มีวันที่ด้านบนในช่วงคอลัมน์ E มี colorindex (ดูที่นี่ ) และคอลัมน์ F มีวันที่ที่เรากำลังทดสอบ (และนี่คือเซลล์ที่เราระบายสี ) คุณสามารถสร้างรูทีนย่อยต่อไปนี้:
Public Sub update_colors()
Dim rngDates As Range
Set rngDates = Sheet1.Range("F2:F3")
Dim rngDateCell As Range
For Each rngDateCell In rngDates.Cells
If Sheet1.Cells(rngDateCell.Row, 3).Value <= rngDateCell.Value And Sheet1.Cells(rngDateCell.Row, 4).Value >= rngDateCell.Value Then
rngDateCell.Interior.ColorIndex = Sheet1.Cells(rngDateCell.Row, 5).Value
End If
Next rngDateCell
End Sub
ตั้งค่า F2: F3 ในบรรทัดที่สามเป็นช่วงวันที่ทั้งหมดในแผ่นงานของคุณ
คุณสามารถเริ่มการย่อย / udf นี้ด้วยปุ่ม ในแท็บนักพัฒนาซอฟต์แวร์ของคุณ (ไปที่นี่สำหรับคำแนะนำเกี่ยวกับวิธีการเปิดใช้งานหากคุณยังไม่ได้คลิก) "แทรก" และเลือกปุ่มภายใต้ "การควบคุมแบบฟอร์ม" วาดปุ่มบนแผ่นงาน (คุณสามารถเลื่อนได้หลังจากนั้น) และเลือกรูทีนย่อยที่คุณเพิ่งสร้างจากรายการ ตอนนี้เมื่อคุณคลิกปุ่มรูทีนย่อยจะทำงาน
หากคุณไม่ชอบสีคุณสามารถใช้บางอย่างนอกเหนือจาก. ภายในสี color () เพื่อตั้งค่าสีของเซลล์ ฉันเป็นแฟนตัวยง. InColor = RGB (,,) คุณจะต้องมีค่า RGB ในแผ่นงานเพื่อดึงออกมา แต่คุณจะมีหลายล้านสีให้เลือกแทนที่จะเป็นเพียง 56 ดัชนีสีที่ ช่วยให้