VBA OFFSET İşlevi - Excel VBA Ofset Özelliği nasıl kullanılır (Örnek)

Excel VBA OFFSET İşlevi

VBA Offset işlevi, belirli sayıda satır ve sütunu atlayan bir referansı taşımak veya buna atıfta bulunmak için kullanılır; VBA'daki bu işlevin argümanları, çalışma sayfasındaki argümanlarla aynıdır.

Örneğin, aşağıdaki gibi bir veri kümeniz olduğunu varsayalım.

Şimdi A1 hücresinden 4 hücre aşağı gitmek istiyorsunuz ve bu 5. hücreyi, yani A5 hücresini seçmek istiyorsunuz .

Benzer şekilde, A1 hücresinden 2 satır aşağı gitmek ve 2 sütun sağa gitmek ve bu hücreyi, yani C2 hücresini seçmek istiyorsanız.

Bu durumlarda, OFFSET işlevi çok faydalıdır. Özellikle VBA OFFSET Fonksiyonunda sadece olağanüstü.

OFFSET, Excel VBA'da Range Object ile Kullanılır

VBA'da, OFFSET kelimesini doğrudan giremiyoruz. Önce VBA RANGE nesnesini kullanmalıyız ve bu aralık nesnesinden OFFSET özelliğini kullanabiliriz.

Excel'de aralık, hücrenin veya hücrenin aralığından başka bir şey değildir. OFFSET hücrelere atıfta bulunduğundan, önce RANGE nesnesini kullanmalıyız ve sonra OFFSET yöntemini kullanabiliriz.

VBA Excel'de OFFSET sözdizimi

  • Satır Uzaklığı: Seçili hücreden kaç satır kaydırmak istediğiniz. Burada seçilen hücre A1'dir, yani Aralık ("A1").
  • Sütun Uzaklığı: Seçili hücreden kaç tane sütun kaydırmak istediğiniz. Burada seçilen hücre A, 1'dir, yani Aralık ("A1").

Örnekler

Örnek 1

Örneğin, aşağıdaki verileri düşünün.

Şimdi A1 hücresinden A6 hücresini seçmek istiyorum. Aralık nesnesini kullanarak makroyu ve referans hücreyi başlatın.

Kod:

Alt Uzaklık_Örnek1 () Aralık ("A1"). Uzaklık (Son Alt

Şimdi A6 hücresini seçmek istiyorum, yani 5 hücre aşağı yapmak istiyorum. Bu nedenle, Satır Ofseti için parametre olarak 5 girin.

Kod:

Alt Uzaklık_Örnek1 () Aralık ("A1"). Uzaklık (5 Son Alt

Aynı sütunda seçim yaptığım için sütun kısmını dışarıda bırakıyorum. Köşeli parantezi kapatın ve bir nokta (.) Koyun ve "Seç" yöntemini yazın.

Kod:

Alt Uzaklık_Örnek1 () Aralık ("A1"). Uzaklık (5). Son Alt Seçin

Şimdi bu kodu F5 tuşunu kullanarak çalıştırın veya aşağıda gösterildiği gibi A6 hücresini seçmek için manuel olarak çalıştırabilirsiniz.

Çıktı:

Örnek 2

Şimdi aynı verileri alın, ancak burada sütun uzaklığı bağımsız değişkeninin nasıl kullanılacağını da göreceğiz. Şimdi C5 hücresini seçmek istiyorum.

Öncelikle C5 hücresini seçmek istediğim için, 4 hücre aşağı hareket etmek ve C5 hücresine ulaşmak için 2 sağ sütunu almak istiyorum. Aşağıdaki kod işi benim için yapacaktı.

Kod:

Alt Uzaklık_Örnek2 () Aralık ("A1"). Uzaklık (4, 2). Son Alt Seçin

Bu kodu manuel olarak veya F5 tuşunu kullanarak çalıştırıyorum. Ardından, aşağıdaki ekran görüntüsünde gösterildiği gibi C5 hücresini seçecektir.

Çıktı:

Örnek 3

Satırları ve sütunları nasıl kaydıracağımızı gördük. Yukarıdaki hücreleri belirtilen hücrelerden de seçebiliriz. Örneğin, A10 hücresindeyseniz ve A1 hücresini seçmek istiyorsanız, nasıl seçersiniz?

Hücreden aşağı inme durumunda, pozitif bir sayı girebiliriz, bu yüzden burada yukarı çıkma durumunda, negatif sayılar girmemiz gerekir.

A9 hücresinden 8 sıra yukarı gitmemiz gerekiyor, yani -8.

Kod:

Alt Uzaklık_Örnek1 () Aralık ("A9"). Uzaklık (-8). Son Alt Seçin

Bu kodu F5 tuşunu kullanarak çalıştırırsanız veya bu kodu manuel olarak çalıştırabilirseniz, A9 hücresinden A1 hücresini seçecektir.

Çıktı:

Örnek 4

C8 hücresinde olduğunuzu varsayın. Bu hücreden A10 hücresini seçmek istiyorsunuz.

Aktif hücreden, yani C8 hücresinden, önce 2 satır aşağı gitmeliyiz ve A10 hücresini seçmek için 2 sütun sola gitmeliyiz.

Sütunu seçmek için sola hareket etme durumunda, sayının negatif olduğunu belirtmemiz gerekir. Yani burada -2 sütunla geri dönmemiz gerekiyor.

Kod:

Alt Uzaklık_Örnek2 () Aralık ("C8"). Ofset (2, -2). Son Alt Seçin

Şimdi bu kodu F5 tuşunu kullanarak çalıştırın veya manuel olarak çalıştırın, aşağıda gösterildiği gibi A10 hücresini seçecektir:

Çıktı:

Hatırlanacak şeyler

  • Satır yukarı çıkma durumunda sayıyı negatif olarak belirtmemiz gerekir.
  • Sütunu seçmek için sola hareket edilmesi durumunda sayı negatif olmalıdır.
  • A1 hücresi, ilk satır ve ilk sütundur.
  • Aktif Hücre, halihazırda seçilmiş hücreler anlamına gelir.
  • OFFSET'i kullanarak hücreyi seçmek istiyorsanız, ".Select" i belirtmeniz gerekir .
  • OFFSET kullanarak hücreyi kopyalamak istiyorsanız, ".Copy" demeniz gerekir .

Ilginç makaleler...