Inhoudsopgave
Als u een tijdje met Microsoft Excel werkt, kent u het belang van AutoFill. We gebruiken deze methode om een formule over de rij of de kolom te kopiëren. Nu kunnen we dit handmatig met de muis doen. Maar als u een grote rij met gegevens heeft, wordt het moeilijk om een formule naar de laatste rij of kolom te kopiëren. U kunt de VBA-code gebruiken om een formule automatisch in te vullen naar de laatste rij of kolom metgemak.
In deze handleiding leert u om een formule automatisch in te vullen in de laatste rij in Excel met behulp van VBA-codes. Deze handleiding is voorzien van de juiste voorbeelden en illustraties, dus blijf bij ons.
Download Praktijk Werkboek
Autovulformule naar laatste rij.xlsm
Wat is AutoFill in Excel?
Nu, autofill is een ingebouwde functie van Microsoft Excel waarmee gebruikers automatisch de rest van de rijen of kolommen kunnen vullen met waarden, formaten of formules. U kunt het herkennen wanneer u de cursor naar de rechter benedenhoek van een cel brengt. We noemen het autofill handler van Excel.
Kijk eens naar het volgende screenshot:
Hier ziet u twee getallen. We zullen de rest van de rijen vullen met behulp van de autofill in Excel.
Selecteer eerst het bereik van de cellen B5:B6. Daarna ziet u in de rechter benedenhoek het handvat voor automatisch invullen.
Sleep nu deze autofill greep naar beneden.
Zoals u ziet vult Excel automatisch de rest van de cellen. Dit is het basisgebruik van het automatisch invullen in Excel.
AutoFill gebruiken met Excel VBA
Als u een groot aantal rijen of kolommen in een bepaald bereik hebt, moet u de autovulgreep naar de laatste rij of kolom slepen. Dat is een zeer hectisch proces. Gelukkig kunt u het minimaliseren met behulp van de VBA-codes in Excel. U kunt de VBA-code gebruiken om de cellen automatisch te vullen met waarden, formules of formaten.
De Generieke Syntax:
Range.AutoFill Bestemming, Type
Hier,
Range("B5"): De cel met het hoofdpatroon om de rest van de reeks te vullen.
Bestemming: Bereik van cellen waarin u de patroonreeks wilt vullen.
Type als xlAutoFillType: Het type serievulling. Er zijn verschillende types automatische vulling die u kunt kiezen.
Lees meer: VBA AutoFill gebruiken in Excel
4 soorten automatisch invullen in Excel VBA
In dit deel zal ik enkele typen van autofill bespreken. We zagen al dat we elk type autofill kunnen kiezen met behulp van de xlAutoFillType. Hier laat ik u enkele voorbeelden daarvan zien.
1. xlFillDefault
We zagen dit type autofill al in het vorige voorbeeld.
Kijk eens naar het screenshot:
Typ de volgende VBA-code om de rest van de cellen automatisch in te vullen:
Sub xlDefault_type() Range("B5:B6").AutoFill Bestemming:=Range("B5:B11"), Type:=xlFillDefault Einde Sub
Voer nu de VBA-macro uit en daarna ziet u het volgende:
Het vult automatisch de rest van de cellen met behulp van een VBA-macro.
2. xlFillCopy
Om dezelfde waarden te kopiëren kunt u het type xlFillCopy in het autofill type.
Kijk eens naar het screenshot:
Typ de volgende VBA-code om de rest van de cellen automatisch in te vullen:
Sub xlFillCopy_type() Range("B5:B6").AutoFill Bestemming:=Range("B5:B11"), Type:=xlFillCopy Einde Sub
Voer nu de VBA-macro uit en daarna ziet u het volgende:
Excel vult de rest van de cellen met hetzelfde waardenpatroon.
3. xlFillMonths
U kunt ook maanden vullen met de xlFillMonths autofill type.
Kijk eens naar het screenshot:
We hebben hier twee maanden januari en februari ingevoerd.
Typ de volgende VBA-code om de rest van de cellen automatisch in te vullen:
Sub xlFillMonths_type() Range("B5:B6").AutoFill Bestemming:=Range("B5:B11"), Type:=xlFillMonths Einde Sub
Voer nu de VBA-macro uit en daarna ziet u het volgende:
Excel begrijpt automatisch de patronen en vult ze in.
4. xlFillFormats
U kunt ook formaten kopiëren naar andere cellen met behulp van de VBA autofill. Daarvoor moet u de xlFillFormats autofill type.
Kijk eens naar het screenshot:
Hier hebben we de twee cellen gevuld met enkele kleuren.
Typ nu de volgende VBA-code om de rest van de cellen automatisch in te vullen:
Sub xlFillFormats_type() Range("B5:B6").AutoFill Bestemming:=Range("B5:B11"), Type:=xlFillFormats Einde Sub
Voer nu de VBA-macro uit en daarna ziet u het volgende:
Zoals u ziet, gebruikt onze VBA-macro de autofill om de rijen van kolom B effectief te vullen.
Lees meer: Maanden automatisch invullen in Excel
5 Voorbeelden met AutoFill Formule naar laatste rij in Excel VBA
1. VBA om een formule automatisch in te vullen in de laatst gebruikte rij
Op dezelfde manier kunt u een formule automatisch invullen met VBA. Als u de vorige hoofdstukken hebt gelezen, kunt u dit gemakkelijk uitvoeren. Het probleem ontstaat wanneer u de formule automatisch moet invullen tot de laatste rij. U moet eerst de laatst gebruikte rij identificeren. Daarna zal de VBA-code deze automatisch vullen.
Kijk eens naar de volgende dataset:
Hier hebben we een verkoopdataset van enkele verkopers. Ons doel is om de verkopen van januari en februari toe te voegen aan de kolom Totaal. Daarna zullen we de autovulmethode gebruiken met de VBA naar de laatst gebruikte rij in Excel.
Om dit uit te voeren, typt u de volgende code:
Sub last_used_row() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row Range("E5").Formula = "=SUM(C5:D5)" Range("E5").AutoFill Destination:=Range("E5:E" & last_row) End Sub
last_row = Cells(Rows.Count, 2).End(xlUp).Row: Het geeft de laatst gebruikte rij uit kolom B. U kunt elke kolom uit uw dataset kiezen.
Range("E5").Formula = "=SUM(C5:D5)": We voegen de verkoop van Cel C5 en D5.
Range("E5").AutoFill Bestemming:=Range("E5:E" & last_row): Na het verkrijgen van het resultaat, gebruiken we de autovulling. Het begint automatisch te vullen vanaf Cel E5 naar de laatst gebruikte rij die we eerder kregen.
Voer nu de VBA-macro uit. Daarna ziet u de volgende uitvoer:
Zoals u ziet, voegt onze VBA-code het eerste resultaat en de autovulling van de formule toe aan de laatste rij in Excel.
Lees meer: Hoe tot de laatste rij te vullen met gegevens in Excel
2. VBA AutoFill van ActiveCell naar laatste rij
Als u het specifieke bereik niet wilt gebruiken in de autovulmethode, kunt u de waarden, formules of formaten van de actieve cel gebruiken. Wanneer u op een cel klikt en de rest van de rijen automatisch wilt vullen met de formule van de actieve cel, gebruikt u deze methode.
Het is vergelijkbaar met het vorige voorbeeld. We gebruiken de vorige dataset:
Nu zullen we de verkopen van januari en februari toevoegen en de formule automatisch invullen in de laatste rij met behulp van Excel VBA.
Type nu de volgende code:
Sub autofill_active_cell() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row ActiveCell.Formula = "=SUM(C5:D5)" ActiveCell.AutoFill Bestemming:=Range(ActiveCell.Address & ":E" & last_row) End Sub
last_row = Cells(Rows.Count, 2).End(xlUp).Row: Het geeft de laatst gebruikte rij uit kolom B. U kunt elke kolom uit uw dataset kiezen.
ActiveCell.Formula = "=SUM(C5:D5)": We voegen de verkoop van Cel C5 en D5 in uw geselecteerde cel.
ActiveCell.AutoFill Bestemming:=Range(ActiveCell.Address & ":E" & last_row): Na het verkrijgen van het resultaat, gebruiken we de autovulling, die begint met het automatisch vullen van de actieve cel tot de laatst gebruikte rij die we eerder kregen.
Selecteer nu Cel E5 .
Voer daarna de VBA-macro uit om de formule en autofill toe te voegen aan de laatste rij.
Zoals u ziet, hebben we met succes de VBA-macro gebruikt om de formule automatisch in te vullen tot de laatste rij.
Vergelijkbare lezingen
- Hoe rijen een bepaald aantal keren te herhalen in Excel (4 manieren)
- Rijen automatisch nummeren in Excel (8 methoden)
- Hoe kolom in Excel vullen met dezelfde waarde (9 trucs)
- AutoFill snelkoppeling toepassen in Excel (7 methoden)
3. Automatisch vullen tot laatste rij met dynamisch bereik met Excel VBA
Eerder lieten we u enkele VBA-macro's zien om automatisch in te vullen tot de laatste rij in Excel. In die voorbeelden gebruikten we al dynamische bereiken.
Om statische reeksen te begrijpen, bekijk de volgende code:
Sub laatste_gebruikte_rij() Range("E5").Formula = "=SUM(C5:D5)" Range("E5").AutoFill Bestemming:=Range("E5:E11") End Sub
We hebben Excel in feite verteld een formule in te voeren in Cel E5 en automatisch invullen van Cel E5 naar Cel E11 Wat als u meer rijen toevoegt? In dat geval zal onze VBA die extra rijen niet automatisch vullen, omdat we al gezegd hebben dat het een specifiek bereik automatisch moet vullen.
Om dit probleem op te lossen heb ik een oplossing bedacht die een dynamisch bereik aankan:
Sub last_used_row() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row Range("E5").Formula = "=SUM(C5:D5)" Range("E5").AutoFill Destination:=Range("E5:E" & last_row) End Sub
Zoals u ziet, vinden we eerst de laatste rij door deze regel code:
laatste_rij = Cellen(Rijen.tellen, 2).Einde(xlUp).Rij
Daarna vullen we automatisch tot de laatste rij met behulp van het dynamisch bereik:
Range("E5").AutoFill Bestemming:=Range("E5:E" & last_row)
Hoeveel rijen u ook toevoegt aan uw dataset, deze VBA-code zal erin slagen ze te identificeren en automatisch in te vullen met de formule.
Dynamisch bereik betekent in feite dat u het bereik niet handmatig hoeft in te voeren. Excel zal het van tijd tot tijd bijwerken.
Lees meer: Excel VBA: Automatische vulmethode van Range klasse mislukt
4. Automatisch vullen naar laatste kolom in Excel met VBA
Als u de vorige paragrafen over automatisch vullen tot de laatste rij hebt gelezen, dan kunt u gemakkelijk automatisch vullen tot de laatste kolom. U hoeft alleen maar het laatste kolomnummer te vinden en dit automatisch te vullen met Excel VBA.
Kijk eens naar de volgende dataset:
Hier hebben we een dataset die het budget van een persoon voor 3 maanden weergeeft. Nu zullen we de uitgaven van alle maanden optellen en de formule automatisch invullen in de laatste kolom met behulp van Excel VBA.
Type nu de volgende code:
Sub laatste_gebruikte_kolom() Dim laatste_rij als Lang laatste_kolom = Cellen(6, Columns.Count).Einde(xlToLinks).Kolom Bereik("D9").Formule = "=SUM(D6:D8)" Bereik("D9").AutoFill Bestemming:=Range("D9", Cellen(9, laatste_kolom)) Einde Sub
last_column = Cells(6, Columns.Count).End(xlToLeft).Column: Het geeft de laatst gebruikte kolom van rij 6. U kunt een willekeurige rij kiezen om mee te beginnen.
Range("D9").Formula = "=SUM(D6:D8)": We voegen de kosten van drie maanden (januari, februari, maart).
Range("D9").AutoFill Bestemming:=Range("D9", Cells(9, last_column)): Nadat we het resultaat hebben, gebruiken we de autovulling. Hier is onze hoofdrij rij nummer 9. Al onze gegevens komen in deze rij. Het begint met automatisch vullen vanaf kolom D naar de laatst gebruikte kolom die we eerder kregen door de laatste_kolom .
Na het uitvoeren van de macro ziet u de volgende uitvoer:
Zoals u ziet, hebben we met succes de VBA gebruikt om de formule automatisch in te vullen in de laatste kolom in Excel.
Lees meer: Een kolom automatisch vullen in Excel
5. AutoFill opeenvolgende nummers naar laatste rij in Excel met VBA
U kunt ook opeenvolgende nummers automatisch invullen met de autofill in VBA. Hier moet u het volgende gebruiken xlFillSeries in het autovultype. Excel zal het patroon begrijpen en het invullen.
Kijk eens naar het volgende screenshot:
Hier hebben we enkele namen. En we willen ze opeenvolgend een ID geven. Om dit te doen, zullen we de VBA autofill gebruiken.
Autofill opeenvolgende nummers met statisch bereik:
Sub sequentieel_nummer_2() Range("C5").AutoFill Bestemming:=Range("C5:C11"), Type:=xlFillSeries Einde Sub
Na het uitvoeren van de code ziet u de uitvoer:
Als u het dynamisch bereik wilt gebruiken, gebruik dan de volgende code:
Sub sequential_number_1() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row Range("C5").AutoFill Bestemming:=Range("C5:C" & last_row), Type:=xlFillSeries End Sub
last_row = Cells(Rows.Count, 2).End(xlUp).Row: Het geeft de laatst gebruikte rij uit kolom B.
Range("C5").AutoFill Bestemming:=Range("C5:C" & last_row), Type:=xlFillSeries: Het zal de ID van Cel C5 en autofill naar de laatst gebruikte rij in Kolom C met behulp van de xlFillSeries ,
In beide gevallen krijgt u dezelfde uitvoer:
Zoals u ziet, hebben we de VBA-code met succes gebruikt om opeenvolgende nummers automatisch in te vullen in Excel.
Lees meer: Excel-formules om opeenvolgende nummers op te vullen Verborgen rijen overslaan
Dingen om te onthouden
✎ U kunt stop de autofill op verschillende manieren als je het niet wilt. .
✎ U kunt niet meerdere rijen en kolommen tegelijk automatisch invullen. Doe het één voor één.
Conclusie
Tot slot hoop ik dat deze tutorial u een stukje nuttige kennis heeft opgeleverd om de formule automatisch in te vullen tot de laatste rij met behulp van de VBA-codes. We raden u aan om al deze instructies te leren en toe te passen op uw dataset. Download de oefenwerkmap en probeer deze zelf uit. Voel u ook vrij om feedback te geven in het commentaargedeelte. Uw waardevolle feedback houdt ons gemotiveerd om tutorials te maken zoalsdit.
Vergeet niet onze website te bekijken Exceldemy.com voor verschillende Excel-gerelateerde problemen en oplossingen.
Blijf nieuwe methoden leren en blijf groeien!