Dalam tutorial ini kita akan mempelajari cara menggunakan Visual Basic for Applications (VBA) untuk mengubah ukuran dan gaya teks dalam sel Excel berdasarkan konten sel. Tutorial ini berlaku untuk Excel 365, 2021, 2019 dan 2016.
Persiapan
Jika Anda baru dalam pengembangan Excel VBA, saya akan merekomendasikan bahwa sebelum melalui tutorial Anda akan melihat ke dalam makro primer Excel VBA kami.
Sebelum memulai pengkodean, Anda harus mengaktifkan tab pengembang di Excel di Ribbon, karena jika tidak, Anda tidak akan dapat mengakses Editor Visual Basic.
Ubah properti teks sel Excel Anda dengan VBA
Tentukan spreadsheet Anda
Kita akan mulai dengan mendefinisikan spreadsheet Excel yang akan kita gunakan sebagai contoh. Jangan ragu untuk menggunakannya untuk mengikuti tutorial ini.
- Buka Microsoft Excel dan buat Buku Kerja Excel yang Diaktifkan Makro ( .xlsm ) baru bernama Excel_Macros.xlsm
- Simpan Spreadsheet Anda di drive lokal Anda.
- Di lembar kerja Sheet1 , lanjutkan dan tambahkan tabel di bawah ini:

- Sekarang, dari Pita, tekan Rumus .
- Kemudian tekan Tentukan Nama .
- Tentukan Rentang Bernama di mana Anda akan menerapkan kode VBA Anda seperti yang ditunjukkan di bawah ini dan tekan OK .
![Bagaimana cara mengatur warna font teks Excel dengan VBA? Bagaimana cara mengatur warna font teks Excel dengan VBA?]()
Gunakan properti Cell.Font VBA untuk mengubah warna dan gaya font
- Pindah ke tab Pengembang .
- Selanjutnya lanjutkan dan tekan tombol Visual Basic .
- Di sebelah kiri Project Explorer , sorot proyek Excel_Macros.xlsm lalu tekan Insert dan pilih Module .
- Modul VBA baru bernama Module1 akan dibuat.
- Silakan dan rekatkan kode berikut di modul yang baru dibuat:
Sub Color_Cell_Text_Condition()
Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range
Set StatusRange = Range("Completion_Status")
'loop through all cells in the range
For Each MyCell In StatusRange
StatValue = MyCell.Value
'modify the cell text values as needed.
Select Case StatValue
'green
Case "Progressing"
With MyCell.Font
.Color = RGB(0, 255, 0)
.Size = 14
.Bold = True
End With
'orange
Case "Pending Feedback"
With MyCell.Font
.Color = RGB(255, 141, 0)
.Size = 14
.Bold = True
End With
'red
Case "Stuck"
With MyCell.Font
.Color = RGB(255, 0, 0)
.Size = 14
.Bold = True
End With
End Select
Next MyCell
End Sub
- Tekan tombol Simpan di editor Visual Basic Anda.
- Sekarang tekan Run lalu pilih Run Sub/UserForm (atau cukup tekan F5).
- Pindah ke lembar kerja Sheet1 Anda dan perhatikan perubahannya. Entri tabel Anda diberi beberapa kode warna sesuai dengan teksnya (menggunakan fungsi warna RGB), dan kami juga mengatur teks menjadi tebal dan memperbesar ukurannya.
![Bagaimana cara mengatur warna font teks Excel dengan VBA? Bagaimana cara mengatur warna font teks Excel dengan VBA?]()
- Jika Anda belum menyimpan kode Anda, tekan tombol Simpan (atau Ctrl+S), lalu simpan juga buku kerja Anda.
Akses Makro VBA Anda
- Perhatikan bahwa kode Anda selalu tersedia untuk Anda jalankan dari perintah Makro yang terletak di tab Tampilan (atau sebagai alternatif di Pengembang | Makro)
![Bagaimana cara mengatur warna font teks Excel dengan VBA? Bagaimana cara mengatur warna font teks Excel dengan VBA?]()
Bonus: Gaya Sel
Excel menawarkan kemampuan untuk membuat “Gaya” Sel. Gaya dapat ditemukan di :Pita Beranda > Gaya
![gaya font excel vba]()
Gaya memungkinkan Anda menyimpan Pemformatan Sel yang Anda inginkan. Kemudian tetapkan gaya itu ke sel baru dan semua pemformatan sel langsung diterapkan. Termasuk ukuran Font, warna sel, status perlindungan sel, dan hal lain yang tersedia dari Menu Pemformatan Sel:
![menu pemformatan sel excel]()
Secara pribadi, untuk banyak model yang saya kerjakan, saya biasanya membuat gaya sel “Input”:
Rentang("a1").Gaya = "Masukan"
Dengan menggunakan gaya Anda juga dapat dengan mudah mengidentifikasi tipe sel pada lembar kerja Anda. Contoh di bawah ini akan mengulang semua sel di lembar kerja dan mengubah sel mana pun dengan Style = “Input” menjadi “InputLocked”:
Redupkan Sel sebagai Rentang
Untuk Setiap Sel di ActiveSheet.Cells
Jika Sel.Gaya = "Masukan" lalu Cell.Style = "InputLocked"
Berakhir jika
Sel Berikutnya