Formule automatysk ynfolje nei lêste rige mei Excel VBA (5 foarbylden)

  • Diel Dit
Hugh West

As jo ​​in skoft mei Microsoft Excel wurkje, wite jo it belang fan AutoFill. Om in formule oer de rige of de kolom te kopiearjen, brûke wy dizze metoade. No kinne wy ​​dit manuell brûke mei de mûs. Mar, as jo in grutte rige mei gegevens hawwe, sil it lestich wêze om elke formule nei de lêste rige of kolom te kopiearjen. Jo kinne de VBA-koade brûke om in formule automatysk yn te foljen nei de lêste rige of kolom mei gemak.

Yn dizze tutorial sille jo leare hoe't jo in formule autofolje nei de lêste rige yn Excel mei VBA-koades. Dizze tutorial sil op punt wêze mei passende foarbylden en juste yllustraasjes. Dus, bliuw by ús.

Download Oefeningswurkboek

Formule foar automatysk ynfolje nei lêste rige.xlsm

Wat is AutoFill yn Excel?

No is autofill in ynboude funksje fan Microsoft Excel wêrmei brûkers de rest fan 'e rigen of kolommen automatysk kinne folje mei wearden, formaten of formules. Jo kinne it identifisearje as jo de rinnerke nei de rjochter ûnderkant fan elke sel nimme. Wy neame it autofill handler fan Excel.

Besjoch de folgjende skermôfbylding:

Hjir kinne jo twa nûmers sjen. Wy sille de rest fan 'e rigen folje mei de autofill yn Excel.

Selektearje earst it berik fan sellen B5:B6. Dêrnei sille jo de autofill-handgreep yn 'e rjochter ûnderhoeke sjen.

Sleep no dizze autofillhandgreep nei ûnderen.

Sa't jo sjen kinne, folt Excel automatysk derest fan 'e sellen. Dit is it basisgebrûk fan it autofill yn Excel.

Hoe kinne jo AutoFill brûke mei Excel VBA

As jo ​​in grut oantal rigen of kolommen yn in opjûn berik hawwe, moatte jo nei ûnderen slepe de autofill-handgreep nei de lêste rige of kolom. It is in heul hektysk proses. Gelokkich kinne jo it minimalisearje mei de VBA-koades yn Excel. Jo kinne de VBA-koade brûke om de sellen automatysk yn te foljen mei wearden, formules of formaten.

The Generic Syntax:

Range .AutoFill-bestimming, type

Hjir,

Rang(“B5”): De sel dy't it haadpatroan hat om de rest fan 'e searje te foljen.

Bestimming: Bereik fan sellen wêr't jo mei de patroanserie ynfolje wolle.

Typ as xlAutoFillType: It searjefoltype. D'r binne ferskate autofilltypen dy't jo kinne kieze.

Lês mear: Hoe kinne jo VBA AutoFill yn Excel brûke

4 soarten AutoFill yn Excel VBA

Yn dizze seksje sil ik guon fan 'e soarten autofill besprekke. Wy hawwe al sjoen dat wy elk type autofill kinne kieze mei it xlAutoFillType. Hjir lit ik jo dêr wat foarbylden fan sjen.

1. xlFillDefault

Wy hawwe dit type autofill al sjoen yn it foarige foarbyld.

Sjoch ris nei it skermôfbylding:

Typ de folgjende VBA-koade om de rest fan 'e sellen automatysk yn te foljen:

7907

No, rinne de VBA-makro út en dêrnei sille jo defolgjende:

It follet automatysk de rest fan de sellen mei help fan VBA makro.

2. xlFillCopy

Om deselde wearden te kopiearjen kinne jo it type xlFillCopy brûke yn it autofill-type.

Besjoch de skermôfbylding:

Typ de folgjende VBA-koade om de rest fan 'e sellen automatysk yn te foljen:

3406

No, útfiere de VBA-makro en dêrnei sille jo it folgjende sjen:

Excel folt de rest fan 'e sellen mei itselde patroan fan wearden.

3. xlFillMonths

Jo kinne ek moannen folje mei it xlFillMonths autofill-type.

Besjoch de skermôfbylding:

Hjir hawwe wy twa moannen jannewaris en febrewaris ynfierd.

Typ de folgjende VBA-koade om de rest fan 'e sellen automatysk yn te foljen:

7952

No, útfiere de VBA-makro en nei dat, sille jo it folgjende sjen:

Excel begrypt automatysk de patroanen en folt se mei har.

4. xlFillFormats

Jo kinne formaten ek kopiearje nei oare sellen mei de VBA autofill. Dêrfoar moatte jo it xlFillFormats autofill type brûke.

Sjoch ris nei de skermprint:

Hjir hawwe wy folje de twa sellen mei wat kleuren.

Typ no de folgjende VBA-koade om de rest fan de sellen automatysk yn te foljen:

1954

No, rinne de VBA-makro en dêrnei sille jo de folgjende:

Sa't jo sjen kinne, brûkt ús VBA-makro de autofill omfolje de rigen fan kolom B effektyf yn.

Lês mear: How to AutoFill Months in Excel

5 Foarbylden mei AutoFill Formula to Last Row in Excel VBA

1. VBA om in formule automatysk ynfolje te litten nei lêste brûkte rige

Lyksa kinne jo in formule automatysk ynfolje mei de VBA. as jo de foarige seksjes hawwe lêzen, kinne jo dit maklik útfiere. It probleem ûntstiet as jo de formule autofolje moatte nei de lêste rige. Jo moatte earst de lêste brûkte rige identifisearje. Dêrnei sil de VBA-koade se automatysk ynfolje.

Besjoch de folgjende dataset:

Hjir hawwe wy in ferkeapdataset fan guon ferkeapers . Us doel is om de ferkeap fan jannewaris en febrewaris ta te foegjen oan de kolom Totaal. Dêrnei sille wy de autofill-metoade brûke mei de VBA nei de lêste brûkte rige yn Excel.

Om dit út te fieren, typ de folgjende koade:

2794

last_row = Cells(Rows.Count, 2).End(xlUp).Row: It jout de lêst brûkte rige werom út de kolom B. Jo kinne elke kolom kieze út jo dataset.

Range(“E5”).Formule = “=SUM(C5:D5)”: Wy foegje de ferkeap ta fan Sel C5 en D5.

Range(“E5”).AutoFill Destination:=Range(“E5:E” & last_row): Nei it krijen fan it resultaat, brûke wy de autofill. It begjint auto-filling fan Sel E5 oant de lêste brûkte rige dy't wy earder krigen.

No, rinne de VBA-makro. Dêrnei sille jo de folgjende útfier sjen:

Askinne jo sjen, ús VBA-koade foeget it earste resultaat ta en autofolje de formule nei de lêste rige yn Excel.

Lês mear: How to Fill Down to Last Row with Data in Excel

2. VBA AutoFill fan ActiveCell nei lêste rige

No, as jo it bepaalde berik net wolle brûke yn 'e autofillmetoade, kinne jo de wearden fan' e aktive sel brûke , formules of formaten. As jo ​​op in sel klikke en de rest fan 'e rigen autofolje wolle mei de formule fan 'e aktive sel, brûk dizze metoade.

It is gelyk oan it foarige foarbyld. Wy brûke de foarige dataset:

No sille wy de ferkeap fan jannewaris en febrewaris tafoegje en de formule automatysk ynfolje nei de lêste rige mei Excel VBA.

Typ no de folgjende koade:

1153

last_row = Cells(Rows.Count, 2).End(xlUp).Row: It jout de lêst brûkte werom rige út de kolom B. Jo kinne elke kolom kieze út jo dataset.

ActiveCell.Formula = "=SUM(C5:D5)": Wy tafoegje de ferkeap fan Cell C5 en D5 yn jo selektearre sel.

ActiveCell.AutoFill Destination:=Range(ActiveCell.Address & ":E" & last_row): Nei it krijen fan it resultaat, brûke wy de autofill. It begjint automatysk yn te foljen fan 'e aktive sel nei de lêste brûkte rige dy't wy earder krigen hawwe.

Selektearje no Sel E5 .

Dan útfiere de VBA-makro om de formule en autofill ta te foegjen oan 'e lêste rige.

Sa't jo sjen kinne, wymei súkses de VBA-makro brûkt om de formule automatysk yn te foljen nei de lêste rige.

Silkene lêzingen

  • Hoe kinne jo rigen in opjûn oantal kearen werhelje yn Excel (4 manieren)
  • Nûmere rigen automatysk yn Excel (8 metoaden)
  • Hoe kinne jo in kolom yn Excel folje mei deselde wearde (9 trúkjes) )
  • Autofolje fluchtoets tapasse yn Excel (7 metoaden)

3. Autofolje nei lêste rige mei dynamysk berik mei Excel VBA

Earder lieten wy jo wat VBA-makro's sjen om automatysk yn te foljen nei de lêste rige yn Excel. No, yn dy foarbylden, hawwe wy al dynamyske beriken brûkt.

Om statyske berikken te begripen, sjoch nei de folgjende koade:

4002

Wy hawwe yn prinsipe oan Excel sein om in formule yn te fieren yn Sel E5 en autofolje it fan Sel E5 nei Sel E11 . Hjir spesifisearje wy it berik. Wat as jo mear rigen tafoegje? Yn dat gefal sil ús VBA dy ekstra rigen net automatysk ynfolje, om't wy it al sein hawwe om in spesifyk berik automatysk te foljen.

Om dit probleem op te lossen kaam ik mei in oplossing dy't in dynamysk berik kin nimme:

2188

Sa't jo sjen kinne, fine wy ​​earst de lêste rige troch dizze rigel koade:

4095

Dêrnei folje wy automatysk nei de lêste rige mei it dynamyske berik:

7853

Nee saak hoefolle rigen jo tafoegje oan jo dataset, dizze VBA-koade sil suksesfol wêze om se te identifisearjen. En it sil se autofolje mei de formule.

Dynamysk berik betsjut yn prinsipe dat jo it berik net hoege yn te fierenhânmjittich. Excel sil it fan tiid ta tiid bywurkje.

Lês mear: Excel VBA: Autofillmetoade fan Range Class mislearre

4. AutoFill to Last Kolom yn Excel Mei VBA

As jo ​​de foarige seksjes lêzen hawwe om autofolje nei de lêste rige, dan kinne jo maklik autofolje nei de lêste kolom. Jo moatte gewoan it lêste kolomnûmer fine en it autofolje mei Excel VBA.

Besjoch de folgjende dataset:

Hjir hawwe wy in dataset dy't in budzjet fan 3 moannen fan in persoan fertsjintwurdiget. No sille wy de útjeften fan alle moannen tafoegje en de formule autofolje oan 'e lêste kolom mei de Excel VBA.

No, typ de folgjende koade:

9538

last_column = Cells(6, Columns.Count).End(xlToLeft).Column: It jout de lêst brûkte kolom werom út de rige 6. Jo kinne elke rige kieze om te begjinnen fan jo dataset.

Range(“D9”).Formule = “=SUM(D6:D8)”: Wy foegje de útjeften fan trije moannen ta (Jan, Feb. Mar).

Range(“D9”).AutoFill Destination:=Range(“D9”, Cells(9, last_column)): Nei it krijen fan it resultaat, brûke wy de autofill. Hjir is ús haadrige rige nûmer 9. Al ús gegevens sille yn dizze rige wêze. It begjint automatysk yn te foljen fan kolom D nei de lêste brûkte kolom dy't wy earder krigen hawwe troch de last_column .

Nei it útfieren fan de makro sille jo de folgjende útfier sjen :

Sa't jo sjen kinne, hawwe wy de VBA mei súkses brûkt om deformule nei de lêste kolom yn Excel.

Lês mear: How to Autofill a Column in Excel

5. AutoFill Sequential Numbers to Last Row yn Excel Mei VBA

Jo kinne ek opfolgjende nûmers automatysk ynfolje mei de autofill yn VBA. Hjir moatte jo xlFillSeries brûke yn it autofill-type. Excel sil it patroan begripe en se dêrmei ynfolje.

Besjoch de folgjende skermôfbylding:

Hjir hawwe wy wat nammen. En wy wolle har op in sekwinsjele manier in ID jaan. Om dit te dwaan, sille wy de VBA autofill brûke.

Autofolfolgjende nûmers mei statysk berik:

4194

Nei it útfieren fan de koade sille jo de útfier sjen:

As jo ​​it dynamyske berik brûke wolle, brûk dan de folgjende koade:

4194

last_row = Cells(Rows. Count, 2).End(xlUp).Rij: It jout de lêst brûkte rige werom út de kolom B.

Range(“C5”).AutoFill Destination:=Range(“C5” :C” & last_row), Type:=xlFillSeries: It sil de ID fan Sel C5 nimme en autofolje nei de lêst brûkte rige yn Kolom C mei de xlFillSeries ,

Yn beide gefallen krije jo deselde útfier:

Sa't jo sjen kinne, hawwe wy de VBA-koade mei súkses brûkt om automatysk folje nûmers yn Excel.

Lês mear: Excel-formules om folchoardernûmers yn te foljen Ferburgen rigen oerslaan

💬 Dingen om te ûnthâlden

Jo kinne de autofill stopje ynFerskate manieren as jo it net wolle .

Jo kinne meardere rigen en kolommen net tagelyk ynfolje. Doch it ien foar ien.

Konklúzje

Ta beslút, ik hoopje dat dit tutorial jo in stik nuttige kennis hat levere om de formule automatysk yn te foljen nei de lêste rige mei de VBA-koades. Wy riede oan dat jo al dizze ynstruksjes leare en tapasse op jo dataset. Download it oefenwurkboek en besykje dizze sels. Fiel jo ek frij om feedback te jaan yn 'e kommentaardiel. Jo weardefolle feedback hâldt ús motivearre om tutorials lykas dit te meitsjen.

Ferjit net ús webside Exceldemy.com te kontrolearjen foar ferskate Excel-relatearre problemen en oplossingen.

Bliuw nije metoaden leare en bliuw groeie!

Hugh West is in tige betûfte Excel-trainer en analist mei mear as 10 jier ûnderfining yn 'e yndustry. Hy hat in bachelorstitel yn boekhâlding en finânsjes en in masterstitel yn bedriuwsadministraasje. Hugh hat in passy foar lesjaan en hat in unike lesoanpak ûntwikkele dy't maklik te folgjen en te begripen is. Syn saakkundige kennis fan Excel hat tûzenen studinten en professionals wrâldwiid holpen har feardigens te ferbetterjen en útblinke yn har karriêre. Troch syn blog dielt Hugh syn kennis mei de wrâld, en biedt fergese Excel-tutorials en online training om partikulieren en bedriuwen te helpen har folsleine potensjeel te berikken.