วิธีเปลี่ยนสีตัวอักษรใน vba (3 วิธี)
คุณสามารถใช้วิธีใดวิธีหนึ่งต่อไปนี้เพื่อเปลี่ยนสีแบบอักษรใน Excel โดยใช้ VBA:
วิธีที่ 1: เปลี่ยนสีแบบอักษรโดยใช้ชื่อสี VBA
SubChangeColor ()
Range(" A1 ").Font.Color = vbRed
End Sub
มาโครนี้จะเปลี่ยนสีแบบอักษรในเซลล์ A1 เป็นสีแดง
วิธีที่ 2: เปลี่ยนสีแบบอักษรโดยใช้ค่า RGB
SubChangeColor ()
Range(" A1 ").Font.Color = RGB(255,0,0)
End Sub
มาโครเฉพาะนี้จะเปลี่ยนสีตัวอักษรในเซลล์ A1 ให้เป็นสีที่ตรงกับค่า RGB (แดง เขียว น้ำเงิน) ของ (255,0,0) ซึ่งเกิดขึ้นเป็นสีแดง
วิธีที่ 3: เปลี่ยนสีแบบอักษรโดยใช้รหัสสีเลขฐานสิบหก
SubChangeColor ()
Range(" A1 ").Font.Color = &H0000FF
End Sub
มาโครนี้จะเปลี่ยนสีแบบอักษรในเซลล์ A1 ให้เป็นสีที่สอดคล้องกับรหัสสีเลขฐานสิบหก #FF0000
หมายเหตุ #1: คุณต้องพิมพ์ &H หน้ารหัสสีเลขฐานสิบหกที่คุณต้องการใช้สำหรับ VBA เพื่อรับรู้ว่าเป็นรหัสสีเลขฐานสิบหก
หมายเหตุ #2: โดยทั่วไปรหัสสีเลขฐานสิบหกจะแสดงด้วยอักขระหกตัว โดยสองตัวแรกแทนโค้ดสำหรับสีแดง สองตัวตรงกลางแทนโค้ดสำหรับสีเขียว และสองตัวสุดท้ายแทนโค้ดสำหรับสีน้ำเงิน
อย่างไรก็ตาม Excel จะสลับสองค่าแรกกับสองค่าสุดท้าย ดังนั้น รหัสสีเลขฐานสิบหกสำหรับสีแดงคือ FF0000 แต่คุณควรพิมพ์ 0000FF แทน
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ
ตัวอย่างที่ 1: เปลี่ยนสีแบบอักษรโดยใช้ชื่อสี VBA
สมมติว่าเรามีข้อความในเซลล์ A1 ซึ่งปัจจุบันสีตัวอักษรเป็นสีดำ:
เราสามารถสร้างแมโครต่อไปนี้เพื่อเปลี่ยนสีแบบอักษรในเซลล์ A1 เป็นสีแดง:
SubChangeColor ()
Range(" A1 ").Font.Color = vbRed
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
โปรดสังเกตว่าสีแบบอักษรในเซลล์ A1 เปลี่ยนเป็นสีแดงแล้ว
ตัวอย่างที่ 2: เปลี่ยนสีตัวอักษรโดยใช้ค่า RGB
สมมติว่าเรามีสตริงข้อความในช่วง A1:A5 ซึ่งปัจจุบันสีตัวอักษรเป็นสีดำ:
เราสามารถสร้างแมโครต่อไปนี้เพื่อเปลี่ยนสีแบบอักษรในเซลล์ A1:A5 เป็นสีแดง:
SubChangeColor ()
Range(" A1:A5 ").Font.Color = RGB(255,0,0)
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
โปรดสังเกตว่าสีแบบอักษรในแต่ละเซลล์ในช่วง A1:A5 จะกลายเป็นสีแดง
ตัวอย่างที่ 3: เปลี่ยนสีแบบอักษรโดยใช้รหัสสีฐานสิบหก
สมมติว่าเรามีสตริงข้อความในช่วง A1:A5 ซึ่งปัจจุบันสีตัวอักษรเป็นสีดำ:
เราสามารถสร้างแมโครต่อไปนี้เพื่อเปลี่ยนสีแบบอักษรในเซลล์ A1:A5 เป็นสีแดง:
SubChangeColor ()
Range(" A1:A5 ").Font.Color = &H0000FF
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
โปรดสังเกตว่าสีแบบอักษรในแต่ละเซลล์ในช่วง A1:A5 จะกลายเป็นสีแดง
หมายเหตุ : คุณสามารถค้นหาเอกสารฉบับเต็มสำหรับคุณสมบัติ VBA Font.Color ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:
VBA: วิธีลบช่องว่างออกจากสตริง
VBA: วิธีแทนที่อักขระในสตริง
VBA: วิธีแทรกบรรทัดด้วยการจัดรูปแบบ