VBA UsedRange - Kullanılan Satır ve Sütun Sayısı Nasıl Bulunur?

UsedRange, adından da anlaşılacağı gibi, içlerinde bir tür değer olarak boş hücrelerin kullanılan aralıklara dahil edilmediği aralıklardır, bu nedenle VBA'da Kullanılan aralıklar, içindeki hücre aralığı için VBA'daki aralık nesnesinin özelliğidir. boş olmayan ve içinde bazı değerler bulunan satırlar ve sütunlar.

VBA Excel'de Kullanılan Aralık

VBA'daki UsedRange, belirli bir çalışma sayfasında kullanılan aralığı (bir çalışma sayfasında kullanılan veya doldurulmuş tüm Excel hücreleri) temsil eden bir aralık nesnesini döndüren çalışma sayfasının bir özelliğidir. Bir çalışma sayfasındaki sol üstte kullanılan hücre ve son sağda kullanılan hücreler tarafından kaplanan veya sınırlanan alanı temsil eden bir özelliktir.

'Kullanılmış hücreyi' herhangi bir formül, biçimlendirme, değer, vb. İçeren bir hücre olarak tanımlayabiliriz. Klavyede CTRL + END tuşlarına basarak da son kullanılan hücreyi seçebiliriz.

Aşağıda, çalışma sayfasındaki bir UsedRange örneği verilmiştir:

Yukarıdaki ekran görüntüsünde UsedRange'in A1: D5 olduğunu görebiliriz.

Excel VBA UsedRange Özelliği Örnekleri

Bir çalışma sayfasındaki UsedRange Özelliğinin VBA'da kullanılan aralığı bulmak için nasıl kullanılabileceğini görmek için aşağıdaki bazı örneklere bakalım:

Örnek 1

Diyelim ki iki çalışma sayfası içeren bir Excel dosyamız var ve Sayfa1'de kullanılan aralığı bulup seçmek istiyoruz.

Sheet1'in ne içerdiğini görelim:

Bu görevi gerçekleştirmek için VBA Immediate penceresinde UsedRange özelliğini kullanıyoruz. VBA anlık penceresi, kullanıcı herhangi bir makro yazmasa bile Excel dosyaları hakkında bilgi almaya, herhangi bir VBA kodunu hızlı bir şekilde yürütmeye veya hata ayıklamaya yardımcı olan bir araçtır. Visual Basic Düzenleyicisi'nde bulunur ve aşağıdaki şekilde erişilebilir:

  • Geliştirici sekmesi Excel'e gidin ve ardından Visual Basic Düzenleyicisi'ne tıklayın veya Visual Basic Editor penceresini açmak için Alt + F11 tuşlarına basın .

Bunu yaptığınızda aşağıdaki gibi bir pencere açılır:

  • Hemen pencereyi açmak için Ctrl + G tuşlarına basın ve kodu yazın.

Hemen pencere şöyle görünür:

  • Aşağıdaki kod, Sayfa1'de kullanılan aralığı seçecektir.

Kod:

? Çalışma Sayfaları ("Sayfa1"). True Etkinleştir? ActiveSheet.UsedRange.Select True

Kodun ilk ifadesi dosyanın Sayfa1'ini etkinleştirecek ve ikinci ifade o etkin sayfadaki kullanılan aralığı seçecektir.

Bu kodu yazarken, Sayfa1'de kullanılan aralığın şu şekilde seçildiğini görüyoruz:

Örnek 2

Şimdi bu örnekte diyelim ki Sayfa1'de kullanılan toplam satır sayısını bulmak istiyoruz.Bunu yapmak için aşağıdaki adımları takip ediyoruz:

  • Modülde bir makro adı oluşturun.

Kod:

Alt Toplam Satır () Son Alt
  • TotalRow değişkenini VBA'da Tamsayı olarak tanımlayın:

Kod:

Alt ToplamRows () Dim TotalRow As Integer End Sub
  • Şimdi toplam satır sayısını hesaplamak için TotalRow değişkenini formülle birlikte atayın:

Kod:

Alt TotalRows () Dim TotalRow As Integer TotalRow = ActiveSheet.UsedRange.Rows.Count End Sub
  • Artık TotalRow'un sonuç değeri, aşağıdaki gibi bir VBA ileti kutusu (MsgBox) kullanılarak görüntülenebilir ve döndürülebilir:

Kod:

Alt TotalRows () Dim TotalRow As Integer TotalRow = ActiveSheet.UsedRange.Rows.Count MsgBox TotalRow End Sub
  • Şimdi bu kodu manuel olarak veya F5'e basarak çalıştırıyoruz ve bir Mesaj Kutusunda görüntülenen Sayfa1'de kullanılan toplam satır sayısını aşağıdaki gibi alıyoruz:

Dolayısıyla, yukarıdaki ekran görüntüsünde mesaj kutusunda '5'in döndürüldüğünü görebiliyoruz ve Sayfa1'de görebileceğimiz gibi, kullanılan aralıktaki toplam satır sayısı 5'tir.

Örnek 3

Benzer şekilde, Sayfa1'de kullanılan toplam sütun sayısını bulmak istersek, aşağıdaki kodda küçük bir değişiklik haricinde yukarıdaki adımları takip edeceğiz:

Kod:

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

Şimdi bu kodu manuel olarak çalıştırdığımızda veya F5'e basarak, bir Mesaj Kutusunda görüntülenen Sayfa1'de kullanılan toplam sütun sayısını aşağıdaki gibi alıyoruz:

Dolayısıyla, ileti kutusunda '4' döndürülür ve Sayfa1'de görebileceğimiz gibi, kullanılan aralıktaki toplam sütun sayısı 4'tür.

Örnek 4

Şimdi, dosyanın Sheet2'sinde son kullanılan satır ve sütun numarasını bulmak istediğimizi varsayalım. Sheet2'nin ne içerdiğini görelim:

Bunu yapmak için aşağıdaki adımları takip ediyoruz:

  • Modülde bir makro adı oluşturun.

Kod:

Alt Son Satır () Alt Alt
  • LastRow değişkenini Tamsayı olarak tanımlayın.

Kod:

Sub LastRow () Dim LastRow As Integer End Sub
  • Şimdi son kullanılan satır numarasını hesaplamak için formülle LastRow değişkenini atayın:

Kod:

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

Excel VBA'daki SpecialCells Yöntemi, yalnızca belirtilen hücre türlerini temsil eden bir aralık nesnesi döndürür. SpecialCells yönteminin sözdizimi şöyledir:

RangeObject.SpecialCells (Tür, Değer)

Yukarıdaki kodda, xlCellTypeLastCell: kullanılan aralıktaki son hücreyi temsil eder.

Not: 'xlCellType', hücrelerinden herhangi birinin varsayılan biçimini değiştirmiş boş hücreleri bile içerecektir.
  • Artık LastRow numarasının sonuç değeri, aşağıdaki gibi bir mesaj kutusu (MsgBox) kullanılarak görüntülenebilir ve döndürülebilir:

Kod:

Sub LastRow () Dim LastRow As Integer LastRow = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell) .Row MsgBox LastRow End Sub
  • Şimdi bu kodu manuel olarak veya F5'e basarak çalıştırıyoruz ve aşağıdaki gibi bir Mesaj Kutusunda görüntülenen Sayfa2'deki son kullanılan satır numarasını alıyoruz:

Dolayısıyla, yukarıdaki ekran görüntüsünde mesaj kutusunda '12'nin döndürüldüğünü görebiliriz ve Sayfa2'de gördüğümüz gibi, son kullanılan satır numarası 12'dir.

Benzer şekilde, Sayfa2'de en son kullanılan sütun numarasını bulmak istersek, aşağıdaki kodda küçük bir değişiklik haricinde yukarıdaki adımları takip edeceğiz:

Kod:

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

Şimdi bu kodu manuel olarak çalıştırdığımızda veya F5'e basarak, aşağıdaki gibi bir Mesaj Kutusunda görüntülenen Sayfa2'deki son kullanılan sütun numarasını alıyoruz:

Dolayısıyla, yukarıdaki ekran görüntüsünde mesaj kutusunda '3'ün döndürüldüğünü ve Sayfa2'de gördüğümüz gibi son kullanılan sütun numarasının 3 olduğunu görebiliriz.

Kullanılmış VBA Hakkında Hatırlanması Gereken Şeyler

  • VBA UsedRange dikdörtgen bir aralıktır.
  • VBA UsedRange, herhangi bir veriye sahip veya biçimlendirilmiş vb. Hücreleri içerir.
  • Excel VBA UsedRange, çalışma sayfasının sol üst hücresini içermeyebilir.
  • UsedRange, etkin hücreyi kullanıldığı gibi kabul etmez.
  • UsedRange, VBA'da son kullanılan satırı bulmak ve kullanılan aralığı sıfırlamak vb. İçin kullanılabilir.
  • Klavyede Excel tuşlarına CTRL + SHIFT + ENTER kısayoluna basmak, seçimi etkin bir hücreden çalışma sayfasındaki son kullanılan hücreye genişletmek için kullanılabilir.

Ilginç makaleler...