Automatické dopĺňanie VBA (podrobný sprievodca) Príklady použitia automatického dopĺňania v programe Excel VBA

Čo robí Automatické dopĺňanie v programe Excel VBA?

Videli sme automatické dopĺňanie v pracovnom hárku, kde sa bunky automaticky vypĺňajú na základe hodnôt v predchádzajúcich bunkách nad ním, môžeme použiť VBA, aby za nás vykonal program Excel, na tento účel použijeme metódu Selection.Autofill a poskytneme cieľ, tj do ktorých buniek je potrebné vyplniť hodnoty.

Najlepšie využitie automatického dopĺňania VBA nastane, keď potrebujeme vyplniť vzorec prvej bunky do bunky stĺpca. Vzorec zvyčajne použijeme v prvej bunke. Buď skopírujeme a prilepíme do poslednej bunky, alebo iba automaticky vyplníme dvojité kliknutie na malú šípku. Ďalším najlepším príkladom použitia automatického dopĺňania v programe Excel je, keď potrebujeme vložiť sériové čísla. Spravidla napíšeme prvé tri čísla; potom potiahneme dole do požadovanej poslednej bunky.

Vo VBA môžeme vykonávať úlohu metódy AutoFill. V tomto článku si ukážeme, ako môžeme použiť metódu automatického dopĺňania a spôsoby zápisu kódu. Teraz uvidíme, ako môžeme tento nástroj použiť pri kódovaní VBA.

Ako používať Automatické dopĺňanie vo VBA?

Ak chcete používať automatické dopĺňanie vo VBA, musíme pochopiť syntax metódy automatického dopĺňania. Nižšie je uvedená syntax automatického dopĺňania.

  • Rozsah („A1“): Aké sú bunky na identifikáciu vzoru série výplní.
  • Cieľ: Do tej bunky, do ktorej chcete pokračovať, pokračujte vo vzore série výplní. Tu musíme spomenúť celú škálu buniek.
  • Zadajte ako xlAutoFillType: Tu môžeme vybrať typ výplne série. Nižšie je uvedený zoznam položiek v tomto parametri - xlFillCopy, xlFillDays, xlFillDefault, xlFillFormats, xlFillMonths, xlFillSeries, xlFillValues, xlFillWeekdays, xlFillYears, xlFlashFill, xlGrowthTrend, xlGrowthTrend

Príklady automatického dopĺňania v programe Excel VBA

Pozrime sa na niekoľko jednoduchých až pokročilých príkladov automatického dopĺňania VBA v programe Excel.

Príklad č. 1 - xlFillDefault

Najskôr zadajte 3 sériové čísla do prvých troch buniek.

V podprocese VBA uveďte rozsah VBA ako Rozsah („A1: A3“)

Kód:

Sub AutoFill_Example1 () Range ("A1: A3"). Koniec Sub  

Teraz vstúpte do metódy Automatické dopĺňanie.

Zadajte cieľ ako Rozsah („A1: A10“)

Kód:

Rozsah („A1: A3“). Cieľ automatického dopĺňania: = Rozsah („A1: A10“) 

Vyberte typ ako xlFillDefault .

Kód:

Rozsah („A1: A3“). Cieľ automatického dopĺňania: = Rozsah („A1: A10“), typ: = xlFillDefault 

Teraz spustite kód, dostaneme sériové čísla od 1 do 10.

Keďže sme koncovú cieľovú bunku spomenuli ako A10, zastavila sa tam a do cieľovej bunky môžeme vstúpiť ako posledná bunka programu Excel.

Príklad č. 2 - xlFillCopy

Pre rovnaké čísla použijeme typ ako xlFillCopy.

Kód:

Sub AutoFill_Example1 () Range ("A1: A3"). AutoFill Destination: = Range ("A1: A10"), Type: = xlFillCopy End Sub

Mám kópiu prvých troch buniek do zvyšných buniek.

Príklad č. 3 - xlFillMonths

V tomto príklade som zadal prvé tri mesiace do prvých 3 buniek.

Zmeňte typ automatického dopĺňania na xlFillMonths.

Kód:

Sub AutoFill_Example1 () Range ("A1: A3"). AutoFill Destination: = Range ("A1: A10"), Type: = xlFillMonths End Sub  

Týmto vyplníte mesačnú sériu.

Príklad č. 4 - formáty xlFillFormats

Pre tento príklad som zadal čísla a na tieto bunky použil formátovanie.

Teraz zmením typ na xlFillFormats.

Kód:

Sub AutoFill_Example1 () Range ("A1: A3"). AutoFill Destination: = Range ("A1: A10"), Type: = xlFillFormats End Sub  

Spustite tento kód a uvidíte, čo sa stane.

Vyplnil formáty prvých troch buniek do ďalších troch buniek a znova do ďalších troch buniek atď.

Príklad č. 5 - xlFlashFill

Pre tento príklad som zadal niekoľko hodnôt z bunky A1 do A10, ako je znázornené na nasledujúcom obrázku.

Z tohto zoznamu chcem extrahovať číselnú časť. Aby som povedal vynikajúci vzor, ​​do prvej bunky manuálne zadám numerickú časť prvej bunky.

Teraz napíšem kód ako obvykle a zmením typ na xlFlashFill. Tentokrát použijeme rozsah stĺpca B.

Kód:

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

Ak spustím tento kód, dostaneme výsledok, ako je uvedené nižšie.

Toto je prehľad metódy VBA AutoFill. Dúfam, že sa vám páčilo.

Túto šablónu programu VBA AutoFill Excel si môžete stiahnuť odtiaľto - šablónu VBA AutoFill Excel

Zaujímavé články...