Hapus konten sel dalam VBA menggunakan referensi kolom
Saya mencoba mendapatkan sepotong kode untuk menghapus data di beberapa sel, menggunakan referensi kolom. Saya menggunakan kode berikut:
Worksheets(sheetname).Range(.Cells(2, LastColData), .Cells(LastRowData, LastColData)).ClearContents
Untuk melakukan ini, namun saya mendapatkan kesalahan pada bagian .Cells pertama, mengapa demikian?
12
3
Anda bisa mengakses seluruh kolom sebagai range menggunakan objek
Worksheet.Columns
Sesuatu seperti:
harus menghapus isi kolom A
Ada juga objek
Worksheet.Rows
jika Anda perlu melakukan sesuatu yang serupa untuk barisKesalahan yang Anda terima kemungkinan disebabkan oleh blok yang hilang.
Anda dapat membaca tentang blok with di sini: Bantuan Microsoft
Seperti yang disebutkan oleh Siswa Gary', anda perlu menghapus titik sebelum
Cells
untuk membuat kode bekerja seperti yang anda tulis semula. Saya tidak bisa memastikan, karena anda hanya menyertakan satu baris kode, tetapi kesalahan yang anda dapatkan ketika anda menghapus titik-titik itu mungkin ada hubungannya dengan bagaimana anda mendefinisikan variabel anda.Saya menjalankan baris kode Anda dengan variabel yang didefinisikan sebagai bilangan bulat dan berhasil:
Saya tidak berpikir pernyataan
With
sesuai dengan baris kode yang Anda bagikan, tetapi jika Anda menggunakannya,With
akan berada di awal baris yang mendefinisikan objek yang Anda manipulasi. Berikut ini adalah kode Anda yang ditulis ulang menggunakan pernyataanWith
yang tidak perlu:Pernyataan
With
didesain untuk menyelamatkan Anda dari pengetikan ulang kode dan untuk membuat coding Anda lebih mudah dibaca. Ini menjadi berguna dan sesuai jika Anda melakukan lebih dari satu hal dengan sebuah objek. Sebagai contoh, jika anda ingin mengubah kolom menjadi merah dan menambahkan garis tepi hitam yang tebal, anda dapat menggunakan pernyataanWith
seperti ini:Jika tidak, Anda harus mendeklarasikan range untuk setiap aksi atau properti, seperti ini:
Saya harap ini memberi Anda gambaran mengapa Gary's Student percaya bahwa kompiler mungkin mengharapkan
With
(meskipun itu tidak pantas) dan bagaimana dan kapanWith
dapat berguna dalam kode Anda.Anda memerlukan pernyataan With sebelum ini. Atau buat .Cells menjadi Cells