Cu Declarație în Excel VBA
Instrucțiunea With este utilizată în VBA pentru a accesa toate proprietățile și metodele unui obiect menționat. Trebuie să furnizăm la ce obiect VBA ne referim mai întâi apoi să închidem instrucțiunea With cu End With , apoi în interiorul acestei instrucțiuni. Putem efectua toate modificările de proprietate și metodele obiectului menționat.
Mai jos este sintaxa declarației With în VBA.
Cu (OBIECT) (Cod … Ce trebuie făcut?) Terminați cu
Obiectul nu este altceva decât o gamă de celule la care ne referim și apoi putem schimba proprietățile și putem efectua toate metodele asociate cu acea celulă sau celule specifice.
Cum se folosește cu declarația în Excel VBA?
Mai jos sunt câteva exemple de utilizat cu Declarație în Excel VBA.
Exemplul nr. 1
Să presupunem că aveți o anumită valoare în celula A1, am introdus textul ca „Excel VBA” în celula A1.

Acum, pentru această celulă, trebuie să fac câteva sarcini, adică formatarea în Excel.
Vreau să schimb dimensiunea fontului, numele fontului și culoarea interioară, să inserez un chenar etc.
Cod:
Sub Cu_Exemplu1 () Interval ("A1") Finalizare Sub

Acum, pentru a modifica dimensiunea fontului, accesăm proprietatea „font” a acestei celule.

Sub proprietatea FONT, accesăm proprietatea Size și introducem dimensiunea punând un semn egal.
Cod:
Sub With_Example1 () Range ("A1"). Font.Size = 15 End Sub

Acum, în mod similar, facem alte sarcini de formatare, așa cum se arată mai jos.
Cod:
Sub With_Example1 () Range ("A1"). Font.Size = 15 Range ("A1"). Font.Name = "Verdana" Range ("A1"). Interior.Color = vbG Yellow Range ("A1"). Borders .LineStyle = xlContinuous End Sub

Acest lucru va îndeplini toate sarcinile menționate, dar dacă te uiți la cod pentru a efectua fiecare activitate de formatare, am furnizat de fiecare dată adresa celulei. Acest lucru face ca codul să pară lung și consumator de timp.
Acum vom folosi VBA With a statement pentru a reduce de fiecare dată intrarea adresei celulei. Deschideți instrucțiunea WITH în Excel VBA și furnizați adresa celulei.
Cod:
Sub With_Example1 () With Range ("A1") End Sub

În instrucțiunea With, puneți un punct pentru a vedea toate proprietățile și metodele celulei A1.

Acum, prima activitate de formatare schimbă dimensiunea fontului, deci accesați FONT și sub această proprietate SIZE de acces.
Cod:
Sub With_Example1 () With Range ("A1") .Font.Size = 15 End Sub

În mod similar, furnizați alte coduri de formatare și închideți VBA cu declarație.
Cod:
Sub With_Example1 () With Range ("A1") .Font.Size = 15 .Font.Name = "Verdana" .Interior.Color = vbYellow .Borders.LineStyle = xlContinuous End With End Sub

Rulați codul pentru a vedea toate formatările din obiectul menționat, adică celula A1.

Deci, toate formatările aplicate celulei. Uite cât de tare este această tehnică.
Exemplul nr. 2
De exemplu, dacă doriți să modificați toate proprietățile legate de font, puteți menționa celula și proprietatea FONT.
Cod:
Sub With_Example2 () With Range ("A1"). Font End With End Sub

Inside the VBA With Statement, we can see the IntelliSense list. It will show properties and methods related to FONT property only.

We can perform any set of activities with this now.
Code:
Sub With_Example2() With Range("A1").Font .Bold = True 'Font will be Bold .Color = vbAlias 'Font color will be Alias .Italic = True 'Font will be italic style .Size = 20 ' Font size will be 20 .Underline = True 'Font will be underlined End With End Sub

The result of this will be as shown below.

Example #3
The below code will access only cell border-related properties.
Code:
Sub With_Example3() With Range("B2").Borders .Color = vbRed 'Border color will be red .LineStyle = xlContinuous 'Full border .Weight = xlThick 'Thick border End With End Sub

The result of this code is as follows.

Things to Remember
- Declarația With este utilizată pentru a minimiza codul.
- Mai întâi trebuie să furnizăm obiectul pentru instrucțiunea With.
- Odată furnizat obiectul specific, putem accesa doar proprietățile și metodele acelui obiect.