VBA Seçim Aralığı - Excel VBA'da Aralık Nasıl Seçilir?

Excel VBA Seçim Aralığı

VBA ile ilgili temel bilgilerden sonra, çalışma sayfasındaki bir dizi hücre ile nasıl çalışılacağını anlamak önemlidir. Çoğu zaman kodları pratik olarak yürütmeye başladığınızda, bir dizi hücreyle çalışmanız gerekir, bu nedenle bir dizi hücreyle nasıl çalışılacağını anlamak önemlidir ve bu tür kavramlardan biri de VBA "Aralık Seçimi" dir. Bu makalede, Excel VBA'da "Seçim Aralığı" ile nasıl çalışılacağını göstereceğiz.

Seçim ve Aralık iki farklı konu, ancak aralık veya aralık seçimini seçmemizi söylediğimizde bu tek bir kavramdır. RANGE bir nesnedir, "Seçim" bir özelliktir ve "Seç" bir yöntemdir. İnsanlar bu terimlerle karıştırma eğilimindedir. Genel olarak farklılıkları bilmek önemlidir.

Excel VBA'da Aralık Nasıl Seçilir?

Örnek 1

Örneğin, çalışma sayfasındaki A1 hücresini seçmek istediğinizi varsayalım. Öncelikle aşağıdaki gibi bir RANGE nesnesi kullanarak hücre adresini belirlememiz gerekir.

Kod:

Seçmemiz gereken hücreye değindikten sonra, RANGE nesnesiyle ilişkili IntelliSense listesini görmek için bir nokta koyun.

Bu çeşitli listeleri oluşturur, "Seç" yöntemini seçer.

Kod:

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

Şimdi, bu kod aktif çalışma sayfasındaki A1 hücresini seçecektir.

Farklı çalışma sayfalarındaki hücreyi seçmek istiyorsanız, önce çalışma sayfasını adıyla belirtmemiz gerekir. Çalışma sayfasını belirtmek için "WORKSHEET" nesnesini kullanmamız ve çalışma sayfası adını çift tırnak içinde girmemiz gerekir.

Örneğin, "Veri Sayfası" çalışma sayfasındaki A1 hücresini seçmek istiyorsanız, önce aşağıdaki gibi çalışma sayfasını belirtin.

Kod:

Alt Aralık_Örnek1 () Çalışma Sayfaları ("Veri Sayfası") Son Alt

Sonra bu sayfada ne yapmamız gerektiğini belirtmek için koda devam edin. "Veri Sayfası" nda, A1 hücresini seçmemiz gerekir, böylece kod RANGE ("A1") olacaktır.

Kod:

Alt Aralık_Örnek1 () Çalışma Sayfaları ("Veri Sayfası") Aralık ("A1"). Son Alt Seçin

Bu kodu çalıştırmaya çalıştığınızda aşağıdaki hatayı alacağız.

Bunun nedeni, "çalışma sayfası nesnesine doğrudan aralık nesnesi sağlayamayız ve yöntem seçemiyoruz."

Öncelikle, VBA çalışma sayfasını seçmemiz veya etkinleştirmemiz gerekiyor ve sonra yapmak istediğimiz her şeyi yapabiliriz.

Kod:

Alt Aralık_Örnek1 () Çalışma Sayfaları ("Veri Sayfası"). Aralığı Etkinleştir ("A1"). Son Alt Seçin

Şimdi bu, "Veri Sayfası" çalışma sayfasındaki A1 hücresini seçecektir.

Örnek 2 - Geçerli Seçili Aralıkla Çalışma

Seçmek farklı bir şeydir ve önceden seçilmiş bir hücre aralığıyla çalışmak farklıdır. A1 hücresine bir "Merhaba VBA" değeri eklemek istediğinizi varsayalım, o zaman bunu iki şekilde yapabiliriz.

Öncelikle VBA kodunu doğrudan RANGE ("A1") olarak geçirebiliriz. Değer = "Merhaba, VBA."

Kod:

Alt Aralık_Örnek1 () Aralık ("A1"). Değer = "Merhaba VBA" Son Alt

Bu kodun yapacağı şey, şu anda hangi hücrenin seçili olduğuna bakılmaksızın A1 hücresine "Merhaba VBA" değerini eklemektir.

Kodun yukarıdaki sonucuna bakın. Bu kodu çalıştırdığımızda, seçili hücre B2 olmasına rağmen "Merhaba VBA" değerini eklemiştir.

İkinci olarak, "Selection" özelliğini kullanarak değeri hücreye ekleyebiliriz. Bunun için önce hücreyi manuel olarak seçip kodu çalıştırmamız gerekiyor.

Kod:

Sub Range_Example1 () Selection.Value = "Merhaba VBA" Son Alt

Bu kodun yapacağı şey, şu anda seçili olan hücreye "Merhaba VBA" değerini eklemektir. Örneğin, aşağıdaki uygulama örneğine bakın.

Kodu çalıştırdığımda, mevcut seçili hücrem B2 idi ve kodumuz aynı değeri o anda seçili olan hücreye ekledi.

Şimdi B3 hücresini seçeceğim ve çalıştıracağım, orada da aynı değeri alacağız.

"Selection" özelliği ile yapabileceğimiz bir diğer şey de, birden fazla hücreye değer ekleyebilmemizdir. Örneğin, şimdi A1'den B5'e kadar hücre aralığını seçeceğim.

Şimdi, kodu yürütürsem, seçilen tüm hücreler için değeri "Merhaba VBA" olarak alacağız.

Dolayısıyla, hücre adresini RANGE nesnesi ile belirtme ile Selection özelliği arasındaki basit fark, Range nesnesinin kodunun açıkça belirtilen hücrelere değer eklemesidir.

Ancak Seçim nesnesinde, hangi hücrede olduğunuz önemli değildir. Belirtilen değeri tüm seçili hücrelere ekleyecektir.

Burada Hatırlanması Gereken Şeyler

  • Selection özelliği altında select yöntemini doğrudan sağlayamayız.
  • RANGE bir nesnedir ve seçim bir özelliktir.
  • Aralık yerine CELLS özelliğini kullanabiliriz.

Ilginç makaleler...