Julat Digunakan VBA - Bagaimana Mencari Bilangan Baris & Lajur yang digunakan?

UsedRange, seperti namanya, adalah rentang yang sebagai beberapa jenis nilai di dalamnya, sel kosong tidak termasuk dalam julat yang digunakan, jadi dalam VBA Julat terpakai adalah harta benda jarak dalam VBA untuk julat sel di baris dan lajur yang tidak kosong dan mempunyai beberapa nilai di dalamnya.

Julat terpakai dalam VBA Excel

UsedRange dalam VBA adalah harta lembaran kerja yang mengembalikan julat objek yang mewakili julat yang digunakan (semua sel Excel yang digunakan atau diisi dalam lembaran kerja) pada lembaran kerja tertentu. Ia adalah harta yang mewakili kawasan yang diliputi atau dibatasi oleh sel terpakai kiri atas dan sel terpakai kanan terakhir dalam lembaran kerja.

Kita dapat menggambarkan 'Sel terpakai' sebagai sel yang mengandungi formula, format, nilai, dan lain-lain. Kita juga dapat memilih sel yang terakhir digunakan dengan menekan kekunci CTRL + END pada papan kekunci.

Berikut adalah ilustrasi UsedRange dalam lembaran kerja:

Kita dapat melihat pada tangkapan skrin di atas bahawa UsedRange adalah A1: D5.

Contoh Harta Digunakan Excel VBA UsedRange

Mari kita lihat beberapa contoh di bawah untuk melihat bagaimana Harta UsedRange dalam lembaran kerja dapat digunakan untuk mencari julat terpakai di VBA:

Contoh # 1

Katakanlah kita mempunyai fail Excel yang mengandungi dua lembaran kerja, dan kita ingin mencari dan memilih julat yang digunakan pada Helaian1.

Mari kita lihat apa yang mengandungi Sheet1:

Kami menggunakan properti UsedRange di tetingkap VBA Segera untuk menyelesaikan tugas ini. Tetingkap segera VBA adalah alat yang membantu mendapatkan maklumat mengenai fail Excel, melaksanakan atau menyahpepijat kod VBA dengan cepat, walaupun pengguna tidak menulis makro. Ia terletak di Visual Basic Editor dan dapat diakses seperti berikut:

  • Pergi ke tab Pembangun Excel, dan kemudian klik pada Visual Basic Editor, atau tekan Alt + F11 untuk membuka tetingkap Visual Basic Editor.

Setelah melakukan ini, tetingkap terbuka seperti berikut:

  • Tekan Ctrl + G untuk membuka tetingkap segera, dan taipkan kodnya.

Tingkap segera kelihatan seperti:

  • Kod berikut akan memilih julat yang digunakan pada Helaian1.

Kod:

? Lembaran kerja ("Sheet1"). Aktifkan True? ActiveSheet.UsedRange. Pilih True

Pernyataan pertama kod akan mengaktifkan Sheet1 fail, dan pernyataan kedua akan memilih julat yang digunakan dalam helaian aktif itu.

Semasa menulis kod ini, kami melihat bahawa julat yang digunakan dalam Helaian1 dipilih seperti berikut:

Contoh # 2

Sekarang, katakan dalam contoh ini, kami ingin mencari jumlah baris yang digunakan dalam Helaian 1. Untuk melakukan ini, kami mengikuti langkah-langkah berikut:

  • Buat nama makro dalam modul.

Kod:

Sub TotalRows () End Sub
  • Tentukan pemboleh ubah TotalRow sebagai Integer dalam VBA:

Kod:

Sub TotalRow () Dim TotalRow Sebagai Sub End Integer
  • Sekarang tetapkan pemboleh ubah TotalRow dengan formula untuk mengira jumlah baris:

Kod:

Sub TotalRows () Dim TotalRow Sebagai Integer TotalRow = ActiveSheet.UsedRange.Rows.Count End Sub
  • Sekarang nilai TotalRow yang dihasilkan dapat dipaparkan dan dikembalikan menggunakan kotak mesej VBA (MsgBox) seperti berikut:

Kod:

Sub TotalRow () Dim TotalRow Sebagai Integer TotalRow = ActiveSheet.UsedRange.Rows.Count MsgBox TotalRow End Sub
  • Sekarang kita menjalankan kod ini secara manual atau dengan menekan F5, dan kita mendapat jumlah baris yang digunakan dalam Helaian1 yang dipaparkan di Kotak Pesan seperti berikut:

Jadi, kita dapat melihat pada tangkapan skrin di atas bahawa '5' dikembalikan dalam kotak mesej, dan seperti yang dapat kita lihat di Lembaran1, jumlah baris dalam julat yang digunakan adalah 5.

Contoh # 3

Begitu juga, jika kita ingin mencari jumlah lajur yang digunakan dalam Helaian1, kita akan mengikuti langkah yang sama seperti di atas kecuali untuk sedikit perubahan kod seperti berikut:

Kod:

Sub TotalCols () Dim TotalCol Sebagai Integer TotalCol = ActiveSheet.UsedRange.Columns.Count MsgBox TotalCol End Sub

Sekarang apabila kita menjalankan kod ini secara manual atau dengan menekan F5, kita mendapatkan jumlah lajur yang digunakan dalam Lembaran1 dipaparkan di Kotak Pesan seperti berikut:

Jadi, '4' dikembalikan di kotak pesan, dan seperti yang kita lihat di Lembaran1, jumlah lajur dalam julat yang digunakan adalah 4.

Contoh # 4

Sekarang, katakan kita ingin mencari nombor baris dan lajur yang terakhir digunakan dalam Helaian2 fail. Mari kita lihat apa yang mengandungi Sheet2:

Untuk melakukan ini, kami mengikuti langkah-langkah berikut:

  • Buat nama makro dalam modul.

Kod:

Sub LastRow () Akhir Sub
  • Tentukan pemboleh ubah LastRow sebagai Integer.

Kod:

Sub LastRow () Dim LastRow Sebagai Sub End Integer
  • Sekarang tetapkan pemboleh ubah LastRow dengan formula untuk mengira nombor baris terakhir yang digunakan:

Kod:

Sub LastRow () Dim LastRow Sebagai Integer LastRow = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell). Sub End Akhir

Kaedah SpecialCells dalam Excel VBA mengembalikan objek jarak yang hanya mewakili jenis sel yang ditentukan. Sintaks untuk kaedah SpecialCells adalah:

RangeObject.SpecialCells (Jenis, Nilai)

Dalam kod di atas, xlCellTypeLastCell: mewakili sel terakhir dalam julat yang digunakan.

Catatan: 'xlCellType' malah akan memasukkan sel kosong yang telah mengubah format lalai mana-mana sel mereka diubah.
  • Sekarang nilai nombor LastRow yang dihasilkan dapat dipaparkan dan dikembalikan menggunakan kotak pesan (Kotak Pesan) seperti berikut:

Kod:

Sub LastRow () Dim LastRow Sebagai Integer LastRow = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell) .Row MsgBox LastRow End Sub
  • Sekarang kita menjalankan kod ini secara manual atau dengan menekan F5, dan kita mendapat nombor baris terakhir yang digunakan dalam Helaian2 yang dipaparkan di Kotak Pesan seperti berikut:

Jadi, kita dapat melihat pada tangkapan skrin di atas bahawa '12' dikembalikan dalam kotak mesej, dan seperti yang dapat kita lihat di Helaian2, nombor baris terakhir yang digunakan adalah 12.

Begitu juga, jika kita ingin mencari nombor lajur yang terakhir digunakan dalam Helaian2, kita akan mengikuti langkah yang sama seperti di atas kecuali untuk sedikit perubahan kod seperti berikut:

Kod:

Sub LastCol () Dim LastCol Sebagai Integer LastCol = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell). Column MsgBox LastCol End Sub

Sekarang apabila kita menjalankan kod ini secara manual atau dengan menekan F5, kita mendapatkan nombor lajur yang terakhir digunakan dalam Lembaran2 yang dipaparkan di Kotak Pesan seperti berikut:

Jadi, kita dapat melihat pada tangkapan skrin di atas bahawa '3' dikembalikan dalam kotak mesej, dan seperti yang dapat kita lihat di Helaian2, nombor lajur yang terakhir digunakan adalah 3.

Perkara Yang Perlu Diingat Tentang VBA UsedRange

  • VBA UsedRange adalah julat segi empat tepat.
  • VBA UsedRange merangkumi sel yang mempunyai data atau diformat dll.
  • Excel VBA UsedRange tidak semestinya merangkumi sel kiri atas lembaran kerja.
  • UsedRange tidak semestinya menganggap sel aktif seperti yang digunakan.
  • UsedRange boleh digunakan untuk mencari baris terakhir yang digunakan dalam VBA dan untuk menetapkan semula julat yang digunakan, dll.
  • Menekan kekunci pintasan Excel CTRL + SHIFT + ENTER pada papan kekunci boleh digunakan untuk memperluas pemilihan dari sel aktif hingga sel terakhir yang digunakan pada lembaran kerja.

Artikel menarik...