ฉันมีคอลัมน์ข้อความที่อักขระบางตัว (ไม่ใช่เซลล์) เป็นแบบอักษรสีแดง มีวิธีใดบ้างที่จะเน้นเซลล์ที่มีอักขระสีแดงผ่านการจัดรูปแบบตามเงื่อนไข โซลูชั่น VBA ก็ใช้ได้เช่นกัน
ฉันมีคอลัมน์ข้อความที่อักขระบางตัว (ไม่ใช่เซลล์) เป็นแบบอักษรสีแดง มีวิธีใดบ้างที่จะเน้นเซลล์ที่มีอักขระสีแดงผ่านการจัดรูปแบบตามเงื่อนไข โซลูชั่น VBA ก็ใช้ได้เช่นกัน
คำตอบ:
ฉันไม่ทราบถึงฟังก์ชั่น inbuilt ใด ๆ ที่ตรวจสอบสีของแต่ละตัวละครภายในเซลล์ แต่คุณสามารถเขียนได้ใน VBA
ฟังก์ชั่นนี้จะวนซ้ำอักขระแต่ละตัวและส่งคืนค่าจริงหากอักขระตัวใดตัวหนึ่งเป็นสีแดง โปรดทราบ: รหัสนี้ใช้ได้กับสีแดงมาตรฐานที่ใช้ได้เท่านั้น แต่จะไม่สามารถใช้งานได้กับทุกเฉดสี
'Only works on the standard Red Colour
Function ContainsRed(CellCheck As Range) As Boolean
For i = 1 To Len(CellCheck.Value) Step 1
If CellCheck.Characters(i, 1).Font.Color = vbRed Then
ContainsRed = True
Exit Function
End If
Next i
ContainsRed = False
End Function
หลังจากสร้างสูตรแล้วคุณสามารถสร้างกฎการจัดรูปแบบใหม่ได้ คลิกที่แท็บหน้าแรกการจัดรูปแบบตามเงื่อนไขกฎใหม่
สำหรับใช้กับคอลัมน์ A
คลิกตัวเลือกสุดท้าย "ใช้สูตรเพื่อกำหนดเซลล์ที่จะจัดรูปแบบ" และใช้สูตรดังนี้: = containRed (A2)
คลิกตกลงและเปลี่ยนการใช้กับ นำไปใช้กับ ไปยังคอลัมน์ที่คุณต้องการในกรณีนี้มันจะเป็น $ A: $ A
ช่วยในการจัดรูปแบบตามเงื่อนไข สามารถพบได้ที่นี่
Set ws = Sheets("Cost Analysis compare")
For r = 1 To 104
For c = 1 To 36
If (ws.Cells(r, c).Font.Color = 255) Then
ws.Cells(r, c).Interior.ColorIndex = 44
End If
Next c
Next r