Otomatiskan Conditional Formatting di VBA Excel agar Data Lebih Mudah Dianalisis

Mengapa Conditional Formatting Layak Dipelajari?

Dalam sebuah worksheet yang berisi ratusan bahkan ribuan data, menemukan informasi penting secara manual tentu membutuhkan waktu. Misalnya, Anda ingin mengetahui nilai yang melebihi target, stok yang hampir habis, atau transaksi yang terlambat dibayar.

Excel sebenarnya menyediakan fitur Conditional Formatting untuk memberi format otomatis berdasarkan kondisi tertentu. Kabar baiknya, fitur ini juga dapat dikendalikan melalui VBA sehingga proses pemberian format dapat dilakukan secara otomatis setiap kali makro dijalankan.

Dengan memanfaatkan Conditional Formatting melalui VBA, kita tidak hanya menghemat waktu, tetapi juga membuat laporan menjadi lebih informatif dan mudah dianalisis.


Apa Itu Conditional Formatting?

Conditional Formatting adalah fitur Excel yang secara otomatis mengubah tampilan sel berdasarkan aturan atau kondisi tertentu.

Sebagai contoh:

  • Nilai di atas 90 diberi warna hijau.

  • Nilai di bawah 60 diberi warna merah.

  • Stok kurang dari 10 diberi latar kuning.

  • Tanggal jatuh tempo yang sudah lewat ditampilkan dengan teks merah.

Semua aturan tersebut dapat dibuat menggunakan VBA.


Menambahkan Aturan Conditional Formatting

Untuk membuat aturan baru, gunakan metode FormatConditions.Add.

Contoh berikut memberi warna hijau pada nilai yang lebih besar dari 80.

With Range("B2:B20")

    .FormatConditions.Delete

    .FormatConditions.Add _
        Type:=xlCellValue, _
        Operator:=xlGreater, _
        Formula1:="80"

    .FormatConditions(1).Interior.Color = RGB(198, 239, 206)

End With

Kode di atas terlebih dahulu menghapus aturan lama agar tidak terjadi duplikasi, kemudian membuat aturan baru berdasarkan nilai sel.


Memberi Warna Teks

Selain warna latar belakang, Anda juga dapat mengubah warna teks.

With Range("B2:B20")

    .FormatConditions.Delete

    .FormatConditions.Add _
        Type:=xlCellValue, _
        Operator:=xlLess, _
        Formula1:="60"

    .FormatConditions(1).Font.Color = RGB(255, 0, 0)

End With

Semua nilai di bawah 60 akan ditampilkan menggunakan teks berwarna merah.


Menggunakan Formula sebagai Kondisi

Conditional Formatting juga dapat menggunakan rumus.

Contoh berikut memberi warna pada seluruh baris jika nilai di kolom C lebih kecil dari 10.

With Range("A2:D20")

    .FormatConditions.Delete

    .FormatConditions.Add _
        Type:=xlExpression, _
        Formula1:="=$C2<10"

    .FormatConditions(1).Interior.Color = RGB(255, 235, 156)

End With

Teknik ini sangat berguna ketika kondisi bergantung pada kolom tertentu.


Menghapus Conditional Formatting

Jika aturan yang sudah dibuat tidak lagi diperlukan, gunakan metode Delete.

Range("A1:D20").FormatConditions.Delete

Seluruh aturan Conditional Formatting pada area tersebut akan dihapus.


Studi Kasus

Misalkan Anda memiliki daftar stok barang.

ProdukStok
Keyboard 25
Mouse 8
Monitor 15
Flashdisk 5

Anda ingin menandai stok yang kurang dari 10 dengan warna kuning.

With Range("B2:B5")

    .FormatConditions.Delete

    .FormatConditions.Add _
        Type:=xlCellValue, _
        Operator:=xlLess, _
        Formula1:="10"

    .FormatConditions(1).Interior.Color = RGB(255, 235, 156)
    .FormatConditions(1).Font.Bold = True

End With

Saat makro dijalankan, nilai 8 dan 5 akan otomatis diberi latar kuning dan teks tebal sehingga lebih mudah dikenali.


Kesalahan yang Sering Dilakukan

Tidak Menghapus Aturan Lama

Jika makro dijalankan berkali-kali tanpa menghapus aturan sebelumnya, Conditional Formatting akan terus bertambah.

Gunakan:

.FormatConditions.Delete

sebelum membuat aturan baru.


Menggunakan Formula yang Salah

Saat menggunakan xlExpression, pastikan referensi sel ditulis dengan benar.

Contoh:

=$C2<10

Kesalahan pada penulisan referensi dapat menyebabkan aturan tidak bekerja sesuai harapan.


Menerapkan Aturan pada Range yang Keliru

Pastikan area yang dipilih sesuai dengan data yang ingin diformat. Kesalahan menentukan Range sering membuat hasil formatting tidak sesuai ekspektasi.


Tips Praktis

💡 Hapus aturan lama menggunakan FormatConditions.Delete sebelum membuat aturan baru.

💡 Gunakan warna yang konsisten agar laporan tetap nyaman dibaca.

💡 Hindari penggunaan terlalu banyak aturan pada satu area karena dapat menyulitkan pemeliharaan.

💡 Gunakan xlExpression jika kondisi melibatkan beberapa kolom.

💡 Uji aturan Conditional Formatting pada data kecil sebelum diterapkan pada seluruh worksheet.


Ringkasan

Metode / PropertiFungsi
FormatConditions.Add Menambahkan aturan Conditional Formatting
FormatConditions.Delete Menghapus seluruh aturan pada range
Interior.Color Mengatur warna latar belakang
Font.Color Mengatur warna teks
Font.Bold Menebalkan teks
xlCellValue Aturan berdasarkan nilai sel
xlExpression Aturan berdasarkan rumus

Kesimpulan

Conditional Formatting melalui VBA Excel memungkinkan Anda menyoroti data penting secara otomatis berdasarkan kondisi tertentu. Dengan memanfaatkan metode FormatConditions, laporan menjadi lebih informatif, mudah dianalisis, dan selalu konsisten setiap kali makro dijalankan. Kemampuan ini sangat bermanfaat ketika bekerja dengan data dalam jumlah besar yang memerlukan identifikasi cepat terhadap nilai-nilai tertentu.

Hubungi Kami

Kantor Berkreasi
Alamat :
Pens Sky Venture - Sukolilo Surabaya
Karangrejo Tmur 17 Surabaya

Email : kantor.berkreasi@gmail.com
WA : wa.me/6287761589881  
(Support  Mbak Ana)

Tim Pengembang

Dr. Rojabi Azharghany, M.Si, S.Sos
Dr. H. Agus Sulthoni Imami, S.Psi. M.Pd.I.
Ali Ishaq, M.Pd.
Didik Rahwiniyanto, S.Si., M.Pd.
Mujiburrohman, M.Pd.
Mohammad Zikky, S.ST, M.T
Amien sawedi, S.Pd.
Didik P Wicaksono, M.Pd.