VBA UsedRange - Bagaimana Cara Menemukan Jumlah Baris & Kolom yang Digunakan?

UsedRange, seperti namanya, adalah rentang yang karena beberapa jenis nilai di dalamnya, sel kosong tidak disertakan dalam rentang yang digunakan, jadi di VBA Rentang yang digunakan adalah properti objek rentang di VBA untuk rentang sel tersebut di baris dan kolom yang tidak kosong dan memiliki beberapa nilai di dalamnya.

UsedRange di VBA Excel

UsedRange di VBA adalah properti lembar kerja yang mengembalikan objek rentang yang mewakili rentang yang digunakan (semua sel Excel yang digunakan atau diisi dalam lembar kerja) pada lembar kerja tertentu. Ini adalah properti yang mewakili area yang ditutupi atau dibatasi oleh sel yang digunakan di kiri atas dan sel yang digunakan di kanan terakhir dalam lembar kerja.

Kita dapat mendeskripsikan 'Sel yang digunakan' sebagai sel yang berisi formula, format, nilai, dll. Kita juga dapat memilih sel yang terakhir digunakan dengan menekan tombol CTRL + END pada keyboard.

Berikut adalah ilustrasi dari UsedRange di lembar kerja:

Kita dapat melihat pada gambar di atas bahwa UsedRange adalah A1: D5.

Contoh Properti DigunakanRange Excel VBA

Mari kita lihat beberapa contoh di bawah ini untuk melihat bagaimana Properti UsedRange di lembar kerja dapat digunakan untuk menemukan rentang yang digunakan di VBA:

Contoh 1

Katakanlah kami memiliki file Excel yang berisi dua lembar kerja, dan kami ingin menemukan dan memilih rentang yang digunakan pada Sheet1.

Mari kita lihat apa isi Sheet1:

Kami menggunakan properti UsedRange di jendela VBA Immediate untuk menyelesaikan tugas ini. Jendela langsung VBA adalah alat yang membantu mendapatkan informasi tentang file Excel, dengan cepat mengeksekusi atau men-debug kode VBA apa pun, bahkan jika pengguna tidak menulis makro apa pun. Itu terletak di Editor Visual Basic dan dapat diakses sebagai berikut:

  • Buka tab Pengembang Excel, lalu klik Editor Visual Basic, atau tekan Alt + F11 untuk membuka jendela Editor Visual Basic.

Saat melakukan ini, sebuah jendela terbuka sebagai berikut:

  • Tekan Ctrl + G untuk membuka jendela langsung, dan ketik kodenya.

Jendela langsung terlihat seperti:

  • Kode berikut akan memilih rentang yang digunakan pada Sheet1.

Kode:

? Lembar kerja ("Sheet1"). Aktifkan True? ActiveSheet.UsedRange.Select True

Pernyataan pertama dari kode tersebut akan mengaktifkan Sheet1 dari file tersebut, dan pernyataan kedua akan memilih rentang yang digunakan dalam lembar aktif tersebut.

Saat menulis kode ini, kita melihat bahwa kisaran yang digunakan di Sheet1 dipilih sebagai berikut:

Contoh # 2

Sekarang, katakanlah dalam contoh ini, kami ingin menemukan jumlah baris yang digunakan di Sheet1. Untuk melakukan ini, kami mengikuti langkah-langkah di bawah ini:

  • Buat nama makro di modul.

Kode:

Sub TotalRows () End Sub
  • Tentukan variabel TotalRow sebagai Integer di VBA:

Kode:

Sub TotalRows () Redupkan TotalRow Sebagai Integer End Sub
  • Sekarang tetapkan variabel TotalRow dengan rumus untuk menghitung jumlah baris:

Kode:

Sub TotalRows () Redupkan TotalRow Sebagai Integer TotalRow = ActiveSheet.UsedRange.Rows.Count End Sub
  • Sekarang nilai yang dihasilkan TotalRow dapat ditampilkan dan dikembalikan menggunakan kotak pesan VBA (MsgBox) sebagai berikut:

Kode:

Sub TotalRows () Redupkan TotalRow Sebagai Integer TotalRow = ActiveSheet.UsedRange.Rows.Count MsgBox TotalRow End Sub
  • Sekarang kami menjalankan kode ini secara manual atau dengan menekan F5, dan kami mendapatkan jumlah baris yang digunakan di Sheet1 yang ditampilkan di Kotak Pesan sebagai berikut:

Jadi, kita dapat melihat pada gambar di atas bahwa '5' dikembalikan di kotak pesan, dan seperti yang dapat kita lihat di Sheet1, jumlah baris dalam kisaran yang digunakan adalah 5.

Contoh # 3

Demikian pula, jika kita ingin menemukan jumlah kolom yang digunakan dalam Sheet1, kita akan mengikuti langkah-langkah yang sama seperti di atas kecuali untuk sedikit perubahan pada kode sebagai berikut:

Kode:

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

Now when we run this code manually or by pressing F5, we get the total number of columns used in Sheet1 displayed in a Message Box as follows:

So, ‘4’ is returned in the message box, and as we can see in Sheet1, the total number of columns in the used range is 4.

Example #4

Now, let’s say we wish to find the last used row and column number in Sheet2 of the file. Let us see what the Sheet2 contains:

To do this, we follow the below steps:

  • Create a macro name in the module.

Code:

Sub LastRow() End Sub
  • Define the variable LastRow as Integer.

Code:

Sub LastRow() Dim LastRow As Integer End Sub
  • Now assign the variable LastRow with the formula to calculate the last used row number:

Code:

Sub LastRow() Dim LastRow As Integer LastRow = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row End Sub

Metode SpecialCells di Excel VBA mengembalikan objek rentang yang hanya mewakili tipe sel yang ditentukan. Sintaks untuk metode SpecialCells adalah:

RangeObject.SpecialCells (Jenis, Nilai)

Dalam kode di atas, xlCellTypeLastCell: mewakili sel terakhir dalam rentang yang digunakan.

Catatan: 'xlCellType' bahkan akan menyertakan sel kosong yang format default selnya telah diubah.
  • Sekarang nilai hasil dari angka LastRow dapat ditampilkan dan dikembalikan menggunakan kotak pesan (MsgBox) sebagai berikut:

Kode:

Sub LastRow () Redupkan LastRow Sebagai Integer LastRow = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell) .Row MsgBox LastRow End Sub
  • Sekarang kita menjalankan kode ini secara manual atau dengan menekan F5, dan kita mendapatkan nomor baris yang terakhir digunakan di Sheet2 yang ditampilkan di Kotak Pesan sebagai berikut:

So, we can see in the above screenshot that ‘12’ is returned in the message box, and as we can see in Sheet2, the last used row number is 12.

Similarly, if we wish to find the last used column number in Sheet2, we will follow the same steps as above except for a slight change in the code as follows:

Code:

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

Now when we run this code manually or by pressing F5, we get the last used column number in Sheet2 displayed in a Message Box as follows:

So, we can see in the above screenshot that ‘3’ is returned in the message box, and as we can see in Sheet2, the last used column number is 3.

Things to Remember About VBA UsedRange

  • VBA UsedRange is a rectangle range.
  • VBA UsedRange includes cells having any data or being formatted etc.
  • Excel VBA UsedRange tidak selalu menyertakan sel kiri atas lembar kerja.
  • UsedRange tidak selalu menganggap sel aktif sebagai yang digunakan.
  • UsedRange dapat digunakan untuk menemukan baris yang terakhir digunakan di VBA dan untuk mengatur ulang kisaran yang digunakan, dll.
  • Menekan pintasan tombol Excel CTRL + SHIFT + ENTER pada keyboard dapat digunakan untuk memperluas pilihan dari sel aktif ke sel yang terakhir digunakan pada lembar kerja.

Artikel yang menarik...