Makro ile Otomatik Doldurma - VBA Kodu Örnekleri

VBA'da otomatik doldurma

Bu makale, VBA'da Otomatik Doldurma'nın nasıl kullanılacağını gösterir.

Otomatik Doldurma, veriler tekrarlı olduğunda veya sıralı olduğunda (haftanın günleri, tarihler, yılın ayları vb.) Excel'de harika bir araçtır. Normalde ilk birkaç hücreyi gerekli verilerle doldurur ve ardından gerekli verileri seçilen bir aralığa kopyalamak için Otomatik Doldur'u kullanırdık.

Bunların hepsi bir VBA makrosu kullanılarak yapılabilir.

Artan Sayıları Kullanarak Otomatik Doldurma

İlk olarak kodumuzda iki adet Range değişkeni tanımlayabiliriz.

Seçim1, otomatik doldurulacak verileri içeren aralıktır - örneğin 1 ve 2.

Seçim2 bütün otomatik doldurma aralığı, buna ilk aralık artı otomatik doldurulacak boşluklar dahildir.

Daha sonra ikinci seçim aralığını doldurmak için Otomatik Doldurma yöntemini kullanırız.

123456789101112131415 Genel Alt MyAutoFill()tarafından easyexcel.net'Aralık Değişkenlerini BildirDim seçimi1 Aralık olarakDim seçimi2 Aralık olarak'Aralık değişkenlerini ayarla = ilgili aralıklarıSeçimi ayarla1 = Sayfa1.Aralık("A1:A2")Seçimi ayarla2 = Sayfa1.Aralık("A1:A12")'Otomatik Doldurmaseçim1.Otomatik Doldurma Hedefi:=selection2Alt Bitiş

Daha sonra makroyu Otomatik Doldurma Aralığı'na (A1:A12) çalıştırabiliriz.

Otomatik Doldurma yöntemini kullanırken gerçekleştirmek istediğimiz Otomatik Doldurma türünü seçebiliriz. Yukarıdaki örnekte, varsayılan türün kullanıldığı anlamına gelen Otomatik Doldurma türünü belirtmedik - bu durumda sayıları her satırda 1 artırarak.

Ayları kullanarak Otomatik Doldurma

Ayları kullanarak otomatik doldurma makrosu, önemli bir istisna dışında sayıları artırmak için kullanılan makroyla neredeyse aynıdır.

1234567891011 Genel Alt Otomatik Doldurma Ayları()tarafından easyexcel.net'Aralık Değişkenlerini BildirDim seçimi1 Aralık olarakDim seçimi2 Aralık olarak'Aralık değişkenlerini ayarla = ilgili aralıklarıSeçimi ayarla1 = Sayfa1.Aralık("A1:A2")Seçimi ayarla2 = Sayfa1.Aralık("A1:A12")'Ayları otomatik doldurOtomatik Doldurma Hedefi:=selection2, Tür:=xlFillMonthsAlt Bitiş

Otomatik doldurma türünü doldurduğumuzda, aralarından seçim yapabileceğimiz bir dizi Excel Sabiti verilir. Bunu dışarıda bırakırsak, Excel, verilen orijinal verilerden doldurulacak veri türünü belirleyecektir.

Ancak Excel, Type bağımsız değişkenini kullanmaya gerek kalmadan aylar, haftanın günleri ve artan sayılar gibi standart serileri alabilir.

xlFillCopy kullanarak Otomatik Doldurma

Bilgileri yeni hücrelere kopyalamak için bir Otomatik Doldurma makrosu kullanmak istiyorsak, xlFillCopy Sabitini kullanabiliriz.

1234567 Genel Alt Otomatik Doldurma Kopyalama()Dim Seçimi1 Aralık OlarakDim Seçimi2 Olarak AralıkSeçimi Ayarla1 = Sayfa1.Aralık("A1:A1")Seçimi Ayarla2 = Sayfa1.Aralık("A1:A12")Selection1.AutoFill Hedefi:=Seçim2, Tür:=xlFillCopyAlt Bitiş

Bu makroyu çalıştırmak, hücreleri “Ocak”tan sonraki aylarla otomatik olarak doldurmak yerine Aralık (“A1”) içindeki verileri Aralık (“A1:A12”)'ye kopyalar.

xlFlashFill kullanarak Otomatik Doldurma

Excel'de metni sütunlara dönüştürmemiz gerektiğinde, metinden sütunlara seçeneğini kullanabiliriz veya Hızlı Doldurma adlı bir seçenek kullanabiliriz. Bu, VBA'da son derece kullanışlıdır.

Örneğin aşağıdaki verileri alın:

B2 hücresine “Tolley” soyadını yazabilir ve ardından verilerin geri kalanını Flashdoldurmak için bir makro kullanabiliriz.

1234567 Alt FlashFill()Dim Seçimi1 Aralık OlarakDim Seçimi2 Olarak AralıkSeçimi Ayarla1 = Aralık("B2:B2")Seçimi Ayarla2 = Aralık("B2:B15")Selection1.AutoFill Hedef:=Selection2, Type:=xlFlashFillAlt Bitiş

Daha sonra kalan verileri almak için bunu C, D ve E sütunlarını tekrarlayabiliriz.

1234567891011 Seçimi Ayarla1 = Aralık("C2:C2")Seçimi Ayarla2 = Aralık("C2:C15")Selection1.AutoFill Hedef:=Selection2, Type:=xlFlashFillSeçimi Ayarla1 = Aralık("D2:D2")Seçimi Ayarla2 = Aralık("D2:D15")Selection1.AutoFill Hedefi:=Selection2, Type:=xlFlashFillSeçimi Ayarla1 = Aralık("E2:E2")Seçimi Ayarla2 = Aralık("E2:E15")Selection1.AutoFill Hedefi:=Selection2, Type:=xlFlashFill

Her sütun daha sonra 2. satırdaki değere göre uygun verilerle doldurulacaktır.

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave