Hari ini kita akan belajar tentang cara menyemak dengan mudah sama ada satu atau berbilang sel kosong menggunakan Visual Basic for Applications. Kandungan adalah berkaitan untuk Excel 2019 / 365, 2016 dan versi Microsoft Office yang lebih awal.
Kerja persediaan
Sebelum memulakan pengekodan dengan VBA dalam Excel, anda perlu memastikan bahawa tab pembangunan anda didayakan. Jika itu tidak berlaku, sila lihat tutorial ringkas ini .
Menyemak sama ada julat sel Excel kosong dengan VBA
- Dalam Excel, buka persekitaran Visual Basic anda dengan menekan Alt+F11
- Masukkan kod berikut sebagai prosedur dalam Lembaran Kerja anda, atau secara alternatif dalam modul VBA khusus.
Sub Check_Cell_is_empty_alt()
Dim rng As Range
Set rng = Selection
For Each Cell In rng
If IsEmpty(Cell.Value) = True Then
Debug.Print ("Empty")
Else
Debug.Print ("Not Empty")
End If
Next Cell
End Sub
- Pergi ke hamparan anda dan pilih julat sel yang sewenang-wenangnya.
- Kembali ke editor Visual Basic dan pastikan pemapar Segera (CTRL+G) kelihatan – kerana kaedah Debug.Print dalam kod akan mengeluarkan hasilnya ke tetingkap itu.
- Tekan F5 untuk menjalankan kod anda.
- Lihat ke dalam keputusan dalam tetingkap segera.

- Semua sel kosong akan dikenal pasti.
Kemungkinan sambungan kepada kod: Anda boleh memanjangkan kod ini mengikut keperluan sekiranya anda berminat untuk melangkau nilai kosong atau tidak melakukan apa-apa sekiranya sel tidak penuh. Begitu juga, anda boleh menyemak sama ada Julat itu sendiri kosong, iaitu – tiada sel hitam terkandung.
Menyemak medan bukan kosong
Dengan cara yang sama, anda boleh menggunakan harta IsEmpty untuk menyemak medan yang tidak kosong.
If Not IsEmpty(Cell.Value) = True Then
Debug.Print ("Not Empty")
Else
Debug.Print ("Empty")
End If
Bonus: Gunakan kod berikut jika anda ingin menyerlahkan sel kosong juga.
Malapkan i Selagi Malap c Sepanjang Malap myJulat Sebagai Julat Malapkan mySel Sebagai Julat Tetapkan myJulat = Julat("A1:A10") Untuk Setiap myCell Dalam myJulat ' c = c + 1 If IsEmpty(myCell) Then myCell.Interior.Color = RGB(255, 87, 87) i = i + 1 End If Next myCell MsgBox _ "Terdapat jumlah " & i & " sel kosong daripada " & c & "."