Formula Xwe Dagirkirina Rêza Dawî bi Excel VBA (5 Nimûne)

  • Vê Parve Bikin
Hugh West

Heke hûn ji bo demekê bi Microsoft Excel-ê re dixebitin, hûn girîngiya AutoFill dizanin. Ji bo kopîkirina formula li seranserê rêz an stûnê, em vê rêbazê bikar tînin. Naha, em dikarin vê bi destê mişkê bikar bînin. Lê, heke we rêzek mezin a daneyê hebe, dê dijwar be ku hûn formula li rêza paşîn an stûna paşîn kopî bikin. Hûn dikarin koda VBA-ê bikar bînin da ku formula Otodagirtinê heya rêza paşîn an stûnek bi hêsanî bi kar bînin.

Di vê dersê de, hûn ê fêr bibin ku di Excel de bi kodên VBA-yê formûlek heya rêza dawîn bixweber Bikin. Ev tutorial dê bi mînakên guncav û nîgarên rast re li ser xalê be. Ji ber vê yekê, bi me re bimînin.

Daxistin Pirtûka Xebatê ya Pratîkê

Formula Xwe Dagirkirina Rêza Dawî.xlsm

Dagirtina Xweser Di Çi ye Excel?

Naha, xwedagirtin taybetmendiyek çêkirî ya Microsoft Excel-ê ye ku dihêle bikarhêner bixweber rêz an stûnên mayî bi nirx, format, an formulan tije bikin. Hûn dikarin wê nas bikin gava ku hûn nîşangirê berbi quncikê jêrîn ê rastê yê her hucreyê bigirin. Em jê re dibêjin hilgirê otodagirtinê yê Excel.

Li dîmena jêrîn binêre:

Li vir, hûn dikarin du hejmaran bibînin. Em ê rêzên mayî bi karanîna otodagirtina Excel-ê tije bikin.

Pêşî, rêza şaneyên B5:B6 hilbijêrin. Piştî wê, hûn ê di quncika jêrîn ya rastê de destikê dagirtina otomatîkî bibînin.

Niha, vê destikê tijekirina otomatîkî kaş bikin.

Wekî ku hûn dibînin, Excel bixweber dagirtinşaneyên mayîn. Ev karanîna bingehîn a xwebergirtinê ya di Excel de ye.

Meriv çawa bi Excel VBA-yê Xweserî Bikaranîne

Heke di nav rêzek diyarkirî de hejmareke mezin rêz an stûnên we hebin, divê hûn dakêşin destikê otofillê heya rêz an stûna paşîn. Ew pêvajoyek pir dijwar e. Ji kerema xwe hûn dikarin wê bi karanîna kodên VBA-yê li Excel kêm bikin. Hûn dikarin koda VBA-ê bikar bînin ku hucreyan bixweber bi nirx, formul, an formatan tije bikin. .Mebesta Tejîkirina Xweser, Binivîsin

Li vir,

Rêzik("B5"): Xaneya ku qalibê wê yê sereke heye ku rêzikên mayî tijî bike.

Meqsed: Rêjeya şaneyên ku tu dixwazî ​​bi rêzikên qalibê tijî bikî.

Wekî xlAutoFillType binivîsin: Cureya dagirtina rêzê. Cûreyên xwedagirtinê yên cihêreng hene ku hûn dikarin hilbijêrin.

Zêdetir bixwînin: Çawa Di Excel-ê de Vebijandina VBA-yê çawa bikar bînin

4 Cûreyên Xwedagirtinê di Excel de VBA

Di vê beşê de, ez ê li ser hin celebên otofillê nîqaş bikim. Me berê jî dît ku em dikarin bi karanîna xlAutoFillType-ê her celebek xwedagirtinê hilbijêrin. Li vir, ez çend mînakên wê nîşanî we dikim.

1. xlFillDefault

Me berê jî di mînaka berê de ev cure tijîkirina otomatîkî dît.

Li dîmenê binêre:

Koda VBA-ya jêrîn binivîsin da ku şaneyên mayî bixweber tijî bikin:

5487

Niha, makroya VBA bimeşînin û piştî wê, hûn ê bibîninjêrîn:

Ew bixweber şaneyên mayî bi karanîna makroya VBA tijî dike.

2. xlFillCopy

Ji bo kopîkirina heman nirxan hûn dikarin cureya xlFillCopy di cureya dagirtina otomatîkî de bikar bînin.

Li dîmena dîmenê binêre:

Koda VBA-ya jêrîn binivîsin da ku şaneyên mayî bixweber tijî bikin:

3082

Niha, makroya VBA bimeşînin û piştî wê, hûn ê jêrîn bibînin:

0>

Excel şaneyên mayî bi heman şêweya nirxan dadigire.

3. xlFillMonths

Hûn dikarin mehan tijî bikin bi kar xlFillMonths cureyê dagirtina otomatîkî.

Li dîmenê binêre:

Li vir, em ketin du mehên Çile û Sibat.

Koda VBA-ya jêrîn binivîsin da ku şaneyên mayî bixweber tijî bikin:

1618

Niha, makroya VBA-yê bixebitînin û paşê ew, hûn ê tiştên jêrîn bibînin:

Excel bixwe ji qalibên fêhm dike û bi wan dadigire.

4. xlFillFormats

Hûn dikarin bi karanîna xweseriya VBA-yê formatan li şaneyên din kopî bikin. Ji bo wê, divê hûn xlFillFormats cureya dagirtina otomatîkî bikar bînin.

Li dîmenê binêre:

Li vir, me heye du hucreyan bi hin rengan tije kir.

Niha, koda VBA-ya jêrîn binivîsin da ku şaneyên mayî bixweber tijî bikin:

6148

Niha, makroya VBA bimeşînin û piştî wê, hûn ê bibînin jêrîn:

Wekî ku hûn dibînin, makroya meya VBA ji bo tijîkirina otomatîkî bikar tînerêzên stûna B bi bandor dagirin.

Zêdetir bixwînin: Çawa di Excel de Mehên Xwe Dagirkirin

5 Nimûne bi Formula Xwe Dagirkirinê heya Rêza Dawî Excel VBA

1. VBA Ji bo Xwe Dagirtina Formulek Berbi Rêza Dawî ya Bikaranîn

Bi heman awayî, hûn dikarin bi karanîna VBA-ya formulan bixweber tijî bikin. heke we beşên berê xwendibe, hûn dikarin bi hêsanî vê yekê bikin. Pirsgirêk dema ku hûn neçar in ku formula heya rêza paşîn bixweber tijî bikin derdikeve. Pêdivî ye ku hûn pêşî rêza paşîn a ku hatî bikar anîn nas bikin. Piştî wê, koda VBA dê bixweber wan tijî bike.

Li databasa jêrîn binêre:

Li vir, me danehevek firotanê ya hin firoşkaran heye. . Armanca me ew e ku em firotana Çile û Sibatê li stûna Total zêde bikin. Piştî wê, em ê bi VBA-yê heya rêza dawîn a di Excel-ê de hatî bikar anîn, rêbaza dagirtina otomatîkî bikar bînin.

Ji bo pêkanîna vê, koda jêrîn binivîsin:

7134

Rêza_dawî = Hucreyên(Rêz.Hejmar, 2).End(xlUp).Rêz: Rêza dawîn a hatî bikaranîn ji stûna B vedigerîne. Hûn dikarin her stûnekê ji databasa xwe hilbijêrin.

Range("E5").Formula = "=SUM(C5:D5)": Em firotana Cel C5 û D5 zêde dikin.

Range("E5").AutoFill Mebest:=Range("E5:E" & amp; last_row): Piştî bidestxistina encamê, em otodagirtinê bikar tînin. Ew ji Cell E5 heya rêza dawîn a ku me berê girtiye dest bi dagirtina otomatîkî dike.

Niha, makroya VBA bimeşîne. Piştî wê, hûn ê encamek jêrîn bibînin:

Wekîhûn dikarin bibînin, koda meya VBA encama yekem lê zêde dike û formula bixweber li rêza dawîn a Excel-ê dagirtin.

Zêdetir bixwînin: Çawa bi Daneyên di nav rêza paşîn de dagirtin Excel

2. Vebijandina VBA-yê ji ActiveCell heya Rêza Dawî

Niha, heke hûn nexwazin rêzek taybetî di rêbaza xwedagirtinê de bikar bînin, hûn dikarin nirxên şaneya çalak bikar bînin. , formulas, an formatan. Dema ku hûn li ser şaneyek bitikînin û dixwazin rêzên mayî bixwe bi formula şaneya çalak tijî bikin, vê rêbazê bikar bînin.

Ew mîna mînaka berê ye. Em daneheva berê bikar tînin:

Niha, em ê firotana Çile û Sibatê zêde bikin û bi karanîna Excel VBA formula xwe li rêza paşîn tijî bikin.

Niha, koda jêrîn binivîsin:

6679

row_last = Cells(Rows.Count, 2).End(xlUp).Roj: Ew ya dawî ya hatî bikar anîn vedigerîne. rêza ji stûna B. Hûn dikarin her stûnek ji databasa xwe hilbijêrin.

ActiveCell.Formula = “=SUM(C5:D5)”: Em firotana Cellê zêde dikin C5 û D5 di hucreya weya hilbijartî de.

ActiveCell.AutoFill Destination:=Range(ActiveCell.Address & ":E" & amp; rêz_paşîn): Piştî ku encam girtin, em otofillê bikar tînin. Ew ji şaneya çalak heya rêza dawîn a ku me berê girtiye dest bi dagirtina otomatîkî dike.

Niha, Cel E5 hilbijêrin.

Piştî wê, makroya VBA-yê bimeşîne da ku formula û bixweber tijîkirina rêza dawîn bike.

Wek ku hûn dibînin, embi serfirazî makroya VBA bikar anî da ku formula bixweber bi rêza dawîn ve tije bike.

Xwendinên bi vî rengî

  • Rêzan Çawa Rêzek Jijmarek Dema diyarkirî Dubare Dike Excel (4 Away)
  • Di Excel de Rêzên Xweber Bi Xweber Bihejmarin (8 Rêbaz)
  • Meriv çawa di Excel de stûnek bi heman nirxê tije dike (9 hîle )
  • Kurtebirra Dagirtina Xweser di Excel de (7 Rêbaz) Sepandin

3. Xwe Dagirtina Rêza Dawî Bi Bikaranîna Rêzeya Dînamîk bi Excel VBA re

Berê me hin makroyên VBA nîşanî we da ku hûn di Excel de heya rêza paşîn bixweber tijî bikin. Naha, di wan mînakan de, me berê rêzikên dînamîkî bikar anîn.

Ji bo têgihîştina rêzikên statîk, li koda jêrîn binêre:

4647

Me di bingeh de ji Excel re got ku formula di de bikeve Hucreya E5 û wê bixweber ji Haneya E5 berbi Hûleya E11 tijî bike. Li vir, me rêzek diyar kir. Heke hûn rêzikên bêtir zêde bikin? Di wê rewşê de, VBA-ya me dê wan rêzên zêde bixweber tijî neke ji ber ku me berê jê re got ku ew rêzek taybetî bixweber tije bike.

Ji bo çareserkirina vê pirsgirêkê min çareseriyek peyda kir ku dikare rêzek dînamîkî bigire:

6999

Wek ku hûn dibînin, em pêşî rêza paşîn bi vê rêzika kodê dibînin:

5453

Piştî wê, em bi karanîna rêza dînamîkî heya rêza paşîn bixweber tijî dikin:

7881

Na hûn çend rêzan li databasa xwe zêde bikin jî, ev koda VBA dê ji bo naskirina wan serketî be. Û ew ê wan bixweber bi formula tije bike.

Rêbaza dînamîk di bingeh de tê vê wateyê ku hûn ne hewce ne ku hûn têkevin rêzêbi destan. Excel dê dem bi dem wê nûve bike.

Zêdetir bixwînin: Excel VBA: Rêbaza Dagirtina Xweser a Dersa Rêjeyê Biserneket

4. Dagirtina Xweser heta Dawî Stûna di Excel de VBA bi kar tîne

Heke we beşên berê xwendibe ku bixweber heya rêza dawîn tijî bike, wê hingê hûn dikarin stûna paşîn bi hêsanî bixweber tijî bikin. Pêdivî ye ku hûn tenê hejmara stûna paşîn bibînin û wê bixweber bi Excel VBA-yê tijî bikin.

Li databasa jêrîn mêze bikin:

Li vir, me a daneyên ku budceya 3-mehî ya kesek temsîl dike. Naha, em ê lêçûnên hemî mehan lê zêde bikin û bi karanîna Excel VBA-yê formula paşîn bixweber tijî bikin.

Niha, koda jêrîn binivîsin:

4084

stûna_dawî = Hucreyên(6, Stûn.Hejmar).End(xlToLeft). Stûn: Ew stûna dawîn a hatî bikaranîn ji rêza 6 vedigerîne. Hûn dikarin her rêzekê hilbijêrin ku ji databasa xwe dest pê bike.

Range("D9").Formula = "=SUM(D6:D8)": Em lêçûnên sê mehan (çile, sibat. mar).

Range("D9").AutoFill Destination:=Range("D9", Cells(9, last_column)): Piştî bidestxistina encamê, em otodagirtinê bikar tînin. Li vir, rêza me ya sereke Rêza jimare 9 e. Hemî daneyên me dê di vê rêzê de bin. Ew ji stûna D heta stûna dawîn a ku me berê ji hêla stûna_dawî ve sitandibû dest bi dagirtina otomatîkî dike.

Piştî xebitandina makroyê, hûn ê derana jêrîn bibînin :

Wekî ku hûn dibînin, me VBA bi serfirazî ji bo tijîkirina otomatîkî bikar anî.formula ji bo stûna dawîn a Excel.

Zêdetir bixwînin: Çawa Di Excel de Stûnek Xwe Dagir Dike

5. Jimarên Rêzdar Bi Xwe Dagirtina Rêza Dawî di Excel de VBA bi kar tîne

Hûn dikarin bi karanîna otodagirtina di VBA-yê de hejmarên rêzdar bixwe jî tijî bikin. Li vir, divê hûn xlFillSeries di celebê dagirtina otomatîkî de bikar bînin. Excel dê nimûneyê fêm bike û wan bi wê tije bike.

Li dîmena jêrîn binêrin:

Li vir, hin navên me hene. Û em dixwazin bi awayekî rêzdar nasnameyekê bidin wan. Ji bo vê yekê, em ê otodagirtina VBA bikar bînin.

Hejmarên Rêzdar ên Xweser Bi Rêzeya Statîk:

6970

Piştî ku kodê bimeşînin, hûn ê encam bibînin:

Heke hûn dixwazin rêza dînamîkî bikar bînin, wê hingê koda jêrîn bikar bînin:

3840

last_row = Cells(Rêz. Hejmartin, 2). Dawî(xlUp). Rêz: Rêza dawîn a ku ji stûna B hatiye bikaranîn vedigerîne.

Rêzik("C5").AutoFill Destination:=Range("C5" :C” & amp; last_row), Tîp:=xlFillSeries: Ew ê ID-ya Cel C5 bigire û bixweberî rêza herî dawî ya hatî bikar anîn di Stûna C de bi karanîna <6-ê bigire>xlFillSeries ,

Di her du rewşan de, hûn ê heman encam bistînin:

Wek ku hûn dibînin, me koda VBA bi serfirazî bikar anî ku Di Excel-ê de jimareyên rêzikan bixwe tijî bikin.

Zêdetir bixwînin: Formulên Excel ji bo Dagirtina Hejmarên Rêzeyê Rêzên Veşartî Derbas Bikin

💬 Tiştên Bîranîn

Hûn dikarin xweber dagirtinê rawestînin tê deGer hûn nexwazin awayên cûrbecûr .

Hûn nikarin bi hevdemî gelek rêz û stûnan bixweber tijî bikin. Wê yekê yek bi yek bikin.

Encam

Ji bo bi dawîkirinê, ez hêvî dikim ku ev tutorial zanyariyek bikêr ji we re peyda kiribe ku hûn bi karanîna kodên VBA-ê bi karanîna kodên VBA-ê formula xwe heta rêza paşîn bixweber tijî bikin. Em pêşniyar dikin ku hûn van hemî rêwerzan li ser databasa xwe fêr bibin û bicîh bînin. Pirtûka xebata pratîkê dakêşin û van bixwe biceribînin. Di heman demê de, di beşa şîroveyê de ji we re nerînên xwe bidin. Bersivên we yên hêja me motîve dike ku em hînkerên bi vî rengî biafirînin.

Ji bîr nekin ku hûn malpera me Exceldemy.com ji bo pirsgirêk û çareseriyên cihêreng ên girêdayî Excel-ê kontrol bikin.

Hînbûna rêbazên nû berdewam bikin û mezin bibin!

Hugh West perwerdekar û analîstek Excel-ê pir bi tecrûbe ye ku di pîşesaziyê de zêdetirî 10 salan ezmûn heye. Di warê Hesabgiranî û Darayî de bawernameya Bachelorê û di Rêveberiya Karsaziyê de jî Master e. Hugh ji hînkirinê re dilşewat e û rêgezek hînkirinê ya bêhempa pêşxistiye ku hêsan tê şopandin û têgihiştin. Zanîna wî ya pispor a Excel alîkariya bi hezaran xwendekar û pisporan li çaraliyê cîhanê kiriye ku jêhatîbûnên xwe baştir bikin û di kariyera xwe de pêşde bibin. Bi bloga xwe, Hugh zanîna xwe bi cîhanê re parve dike, dersên belaş Excel û perwerdehiya serhêl pêşkêşî dike da ku alîkariya kes û karsaziyan bike ku bigihîjin potansiyela xwe ya tevahî.