VBA su | Kaip naudoti su ... Pabaiga su pareiškimu „Excel VBA“?

Su pareiškimu „Excel VBA“

Su pareiškimu VBA naudojamas prieigai prie visų minėto objekto savybių ir metodų. Pirmiausia turime pateikti, kurį VBA objektą mes nurodome, tada uždaryti sakinį With su End With , tada šio teiginio viduje galime atlikti visus minėto objekto ypatumus ir metodus.

Žemiau yra su teiginiu VBA sintaksė.

 Su [OBJECT] [Code… Ką reikia padaryti?] Pabaigti 

Objektas yra ne kas kitas, o ląstelių ar ląstelių diapazonas, apie kuriuos mes kalbame, tada galime pakeisti savybes ir atlikti visus metodus, susijusius su ta konkrečia ląstele ar ląstelėmis.

Kaip naudoti su pareiškimu „Excel VBA“?

Toliau pateikiami keli pavyzdžiai, kaip naudoti su ataskaita „Excel VBA“.

Šį VBA su „Excel“ šablonu galite atsisiųsti čia - VBA su „Excel“ šablonu

1 pavyzdys

Tarkime, kad langelyje A1 turite tam tikrą vertę, į langelį A1 įvedžiau tekstą kaip „Excel VBA“.

Dabar šiai langelei turiu atlikti keletą užduočių, ty formuoti „Excel“.

Noriu pakeisti šrifto dydį, šrifto pavadinimą ir interjero spalvą, įterpti kraštinę ir kt. ... Paprastai mes darome tai, kad pirmiausia nurodome langelį naudodami objektą VBA RANGE.

Kodas:

 Sub With_Example1 () Range ("A1") Pabaiga Sub 

Dabar, norėdami pakeisti šrifto dydį, prieiname prie šios langelio savybės „font“.

Pagal ypatybę FONT mes pasiekiame ypatybę Dydis ir įveskite dydį uždėdami lygybės ženklą.

Kodas:

 Sub With_Example1 () Range ("A1"). Šriftas.Dydis = 15 End Sub 

Dabar panašiai atliekame kitas formatavimo užduotis, kaip parodyta žemiau.

Kodas:

 Sub With_Pavyzdys1 () Diapazonas ("A1"). Šriftas.Dydis = 15 Diapazonas ("A1"). Šriftas.Vardas = "Verdana" Diapazonas ("A1"). Interjero.Spalva = vbGeltonas diapazonas ("A1"). Ribos .LineStyle = xlNuolatinis pabaigos antrinis 

Tai atliks visas paminėtas užduotis, tačiau jei pažvelgsite į kodą, kad atliktumėte kiekvieną formatavimo veiklą, kurią mes kiekvieną kartą pateikėme langelio adresą, tai padarys kodą ilgą ir daug laiko reikalaujantį.

Dabar naudosime „VBA With“ pareiškimą, kad kaskart sumažintume langelio adreso įrašą. „Excel VBA“ atidarykite „WITH“ sakinį ir pateikite ląstelių adresą.

Kodas:

 Sub With_Example1 () With Range ("A1") End Sub 

„With“ sakinyje įdėkite tašką, kad pamatytumėte visas langelio A1 savybes ir metodus.

Pirmoji formatavimo veikla keičia šrifto dydį, todėl eikite į FONT ir naudodami šią prieigą SIZE ypatybę.

Kodas:

 Sub With_Example1 () With Range ("A1"). Font.Size = 15 End Sub 

Panašiai pateikite kitus formatavimo kodus ir uždarykite „VBA With Statement“.

Kodas:

 Sub With_Example1 () With Range ("A1") .Font.Size = 15 .Font.Name = "Verdana" .Interior.Color = vbYellow .Borders.LineStyle = xlNepertraukiama pabaiga su pabaiga 

Paleiskite kodą, kad pamatytumėte visą formatavimą minėtame objekte, ty langelyje A1.

Taigi, visas langelyje pritaikytas formatavimas. Pažiūrėk, kokia šauni yra ši technika.

2 pavyzdys

Pavyzdžiui, jei norite pakeisti visas su šriftu susijusias ypatybes, galite paminėti langelį ir savybę FONT.

Kodas:

 Sub With_Example2 () With Range ("A1"). Šrifto pabaiga su End Sub 

VBA „With Statement“ viduje galime pamatyti „IntelliSense“ sąrašą, kuriame bus rodomos tik su FONT nuosavybe susijusios savybės ir metodai.

Šiuo metu galime atlikti bet kokį veiklos rinkinį.

Kodas:

 Sub With_Example2 () With Range ("A1"). Šriftas .Bold = True 'Šriftas bus paryškintas .Color = vbAlias' Šrifto spalva bus Alias ​​.Italic = True 'Šriftas bus kursyvinis .Size = 20' Šrifto dydis bus būti 20 .Underline = True 'Šriftas bus pabrauktas Pabaiga su pabaiga 

Rezultatas bus toks, kaip parodyta žemiau.

3 pavyzdys

Žemiau pateiktas kodas pasieks tik su langelio siena susijusias ypatybes.

Kodas:

 Sub With_Example3 () With Range ("B2"). Borders .Color = vbRed 'Border spalva bus raudona .LineStyle = xlContinuous' Full border .Weight = xlThick 'Storoji kraštinė Pabaiga su pabaiga Sub 

Šio kodo rezultatas yra toks.

Ką reikia atsiminti

  • Su ataskaita naudojamas norint sumažinti kodą.
  • Pirmiausia turime pateikti objektą „With“ teiginiui.
  • Pateikus konkretų objektą, mes galime pasiekti tik to objekto savybes ir metodus.

$config[zx-auto] not found$config[zx-overlay] not found