VBA AutoFill (Steg för steg-guide) - Exempel på att använda autofyll i Excel VBA

Innehållsförteckning

Vad gör Autofyll i Excel VBA?

Vi har sett autofyll i kalkylblad där cellerna fylls automatiskt baserat på värdena i de tidigare cellerna ovanför, vi kan använda VBA så att excel gör uppgiften för oss, för att göra detta använder vi Selection.Autofill-metoden och vi tillhandahåller destination dvs upp till vilka celler värdena måste fyllas i.

Den bästa användningen av VBA-autofyllning kommer när vi behöver fylla formeln för den första cellen till cellen i kolumnen. Vi använder vanligtvis formeln i den första cellen. Antingen kopierar vi och klistrar in till den sista cellen, eller så fyller vi bara automatiskt genom att dubbelklicka på den lilla piltangenten. Ett annat bästa exempel på att använda autofyll i excel är när vi behöver infoga serienummer. Vi skriver vanligtvis de tre första siffrorna; sedan drar vi ner till den sista cellen som krävs.

I VBA kan vi utföra uppgiften för AutoFill-metoden. I den här artikeln visar vi dig hur vi kan använda autofyllmetoden och sätt att skriva koden. Nu ska vi se hur vi kan använda detta verktyg i VBA-kodning.

Hur använder jag Autofyll i VBA?

För att använda autofyll i VBA måste vi förstå syntaxen för autofyllmetoden. Nedan visas syntaxen för autofyllningen.

  • Område (“A1”): Vilka celler är det som identifierar mönstret i fyllningsserien.
  • Destination: Till vilken cell du vill fortsätta fylla seriemönstret. Här måste vi nämna hela cellområdet.
  • Skriv som xlAutoFillType: Här kan vi välja typ för seriefyllning . Nedan är listan med objekt i denna parameter - xlFillCopy, xlFillDays, xlFillDefault, xlFillFormats, xlFillMonths, xlFillSeries, xlFillValues, xlFillWeekdays, xlFillYears, xlFlashFill, xlGrowthTrend, xlFillYears, xlFlashFill, xlGrowthTrend.

Exempel på autofyll i Excel VBA

Låt oss se några enkla till avancerade exempel på VBA AutoFill i Excel.

Exempel # 1 - xlFillDefault

Ange först 3 serienummer i de tre första cellerna.

I VBA-delproceduren, nämn VBA-intervallet som Range (“A1: A3”)

Koda:

Sub AutoFill_Example1 () Range ("A1: A3"). Avsluta sub  

Gå nu till AutoFill-metoden.

Ange destinationen som intervall (“A1: A10”)

Koda:

Område ("A1: A3"). Destination för automatisk fyllning: = Område ("A1: A10") 

Välj typ som xlFillDefault .

Koda:

Område ("A1: A3"). AutoFill Destination: = Range ("A1: A10"), Type: = xlFillDefault 

Kör nu koden så får vi serienumren från 1 till 10.

Eftersom vi nämnde slutdestinationcellen som A10 har den stannat där och vi kan komma in i målcellen som den sista cellen i excel.

Exempel # 2 - xlFillCopy

För samma siffror använder vi typen som xlFillCopy.

Koda:

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

Jag har en kopia av de tre första cellerna till de återstående cellerna.

Exempel # 3 - xlFillMonths

För detta exempel har jag skrivit in de första tre månaderna i de tre första cellerna.

Ändra autofylltypen till xlFillMonths.

Koda:

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

Detta kommer att fylla månadsserien.

Exempel # 4 - xlFillFormats

För det här exemplet har jag angett siffror och tillämpat formatering på dessa celler.

Nu ändrar jag typen till xlFillFormats.

Koda:

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

Kör den här koden och se vad som händer.

Den har fyllt format för de tre första cellerna till de tre följande cellerna och igen, de tre nästa cellerna och så vidare.

Exempel # 5 - xlFlashFill

För det här exemplet har jag angett några värden från cell A1 till A10, som visas i bilden nedan.

Från den här listan vill jag extrahera den numeriska delen. För att berätta excel om mönstret, i den första cellen, kommer jag manuellt att ange den numeriska delen av den första cellen.

Nu ska jag skriva koden som vanligt och ändra typen till xlFlashFill. Den här gången använder vi B-kolumnområdet.

Koda:

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

Om jag kör den här koden får vi resultatet som nedan.

Det här är översikten över VBA AutoFill-metoden. Jag hoppas att du har haft det.

Du kan ladda ner denna VBA AutoFill Excel-mall härifrån - VBA AutoFill Excel-mall

Intressanta artiklar...