VBA AutoFill

Was macht AutoFill in Excel VBA?

Wir haben das automatische Ausfüllen im Arbeitsblatt gesehen, in dem die Zellen basierend auf den Werten in den vorherigen Zellen darüber automatisch gefüllt werden. Wir können VBA verwenden, damit Excel die Aufgabe für uns erledigt. Dazu verwenden wir die Selection.Autofill-Methode und stellen die bereit Ziel, dh bis zu welchen Zellen die Werte gefüllt werden müssen.

Die beste Verwendung der automatischen VBA-Füllung ergibt sich, wenn die Formel der ersten Zelle in die Zelle der Spalte eingefügt werden muss. Normalerweise wenden wir die Formel in der ersten Zelle an, entweder kopieren wir sie und fügen sie in die letzte Zelle ein, oder wir füllen sie einfach automatisch aus, indem wir auf die kleine Pfeiltaste doppelklicken. Ein weiteres bestes Beispiel für die Verwendung von AutoFill in Excel ist das Einfügen von Seriennummern. Normalerweise geben wir die ersten drei Zahlen ein und ziehen sie dann bis zur gewünschten letzten Zelle nach unten.

Auch in VBA können wir die Aufgabe der AutoFill-Methode ausführen. In diesem Artikel zeigen wir Ihnen, wie wir die automatische Füllmethode verwenden und wie Sie den Code schreiben können. Jetzt werden wir sehen, wie wir dieses Tool in der VBA-Codierung verwenden können.

Wie verwende ich AutoFill in VBA?

Um das automatische Ausfüllen in VBA zu verwenden, müssen wir die Syntax der automatischen Füllmethode verstehen. Unten finden Sie die Syntax des automatischen Ausfüllens.

  • Bereich („A1“): Mit welchen Zellen wird das Muster der Füllserie identifiziert.
  • Ziel: Bis zu welcher Zelle Sie das Füllserienmuster fortsetzen möchten. Hier müssen wir die gesamte Bandbreite der Zellen erwähnen.
  • Typ als xlAutoFillType: Hier können wir den Serienfüllungstyp auswählen. Unten finden Sie eine Liste der Elemente in diesem Parameter: xlFillCopy, xlFillDays, xlFillDefault, xlFillFormats, xlFillMonths, xlFillSeries, xlFillValues, xlFillWeekdays, xlFillYears, xlFlashFill, xlGrowthTrend, xlFlashFill, xlGrowthTrend.

Beispiele für das automatische Ausfüllen in Excel VBA

Sehen wir uns einige einfache bis fortgeschrittene Beispiele für VBA AutoFill in Excel an.

Beispiel 1 - xlFillDefault

Geben Sie zunächst 3 Seriennummern in die ersten drei Zellen ein.

Erwähnen Sie in der VBA-Unterprozedur den VBA-Bereich als Bereich („A1: A3“).

Code:

Sub AutoFill_Example1 () Bereich ("A1: A3"). End Sub

Greifen Sie jetzt auf die AutoFill-Methode zu.

Geben Sie das Ziel als Bereich ein ("A1: A10")

Code:

Bereich ("A1: A3"). AutoFill-Ziel: = Bereich ("A1: A10") 

Wählen Sie den Typ als xlFillDefault aus .

Code:

Bereich ("A1: A3"). AutoFill-Ziel: = Bereich ("A1: A10"), Typ: = xlFillDefault 

Führen Sie nun den Code aus, um die Seriennummern von 1 bis 10 zu erhalten.

Da wir die Endzielzelle als A10 erwähnt haben, hat sie dort angehalten, können wir die Zielzelle als letzte Zelle des Excel eingeben.

Beispiel 2 - xlFillCopy

Für die gleichen Nummern verwenden wir den Typ xlFillCopy.

Code:

 Sub AutoFill_Example1 () Bereich ("A1: A3"). AutoFill-Ziel: = Bereich ("A1: A10"), Typ: = xlFillCopy End Sub 

Ich habe die Kopie der ersten drei Zellen zu den verbleibenden Zellen.

Beispiel 3 - xlFillMonths

Für dieses Beispiel habe ich die ersten drei Monate in die ersten drei Zellen eingegeben.

Ändern Sie den AutoFill-Typ in xlFillMonths.

Code:

 Sub AutoFill_Example1 () Bereich ("A1: A3"). AutoFill-Ziel: = Bereich ("A1: A10"), Typ: = xlFillMonths End Sub 

Dies wird die Monatsreihe füllen.

Beispiel 4 - xlFillFormats

In diesem Beispiel habe ich Zahlen eingegeben und diese Zellen formatiert.

Jetzt werde ich den Typ in xlFillFormats ändern.

Code:

 Sub AutoFill_Example1 () Bereich ("A1: A3"). AutoFill-Ziel: = Bereich ("A1: A10"), Typ: = xlFillFormats End Sub 

Führen Sie diesen Code aus und sehen Sie, was passiert.

Es hat Formate der ersten drei Zellen bis zu den nächsten drei Zellen und erneut den nächsten drei Zellen usw. gefüllt.

Beispiel 5 - xlFlashFill

In diesem Beispiel habe ich einige Werte von Zelle A1 bis A10 eingegeben, wie im folgenden Bild gezeigt.

Aus dieser Liste möchte ich den numerischen Teil extrahieren. Um Excel über das Muster zu informieren, werde ich in der ersten Zelle den numerischen Teil der ersten Zelle manuell eingeben.

Jetzt schreibe ich den Code wie gewohnt und ändere den Typ in xlFlashFill. Dieses Mal werden wir den B-Spaltenbereich verwenden.

Code:

 Sub AutoFill_Example1 () Range ("B1"). AutoFill Destination: = Range ("B1: B10"), Type: = xlFlashFill End Sub 

Wenn ich diesen Code ausführe, erhalten wir das folgende Ergebnis.

Dies ist die Übersicht über die VBA AutoFill-Methode. Hoffe es hat euch gefallen.

Sie können diese VBA AutoFill Excel-Vorlage hier herunterladen - VBA AutoFill Excel-Vorlage