Med uttalelse i Excel VBA
With statement brukes i VBA for å få tilgang til alle egenskapene og metodene til et nevnt objekt. Vi må oppgi hvilket VBA-objekt vi refererer til, og lukk deretter With-setningen med End With og deretter inne i denne setningen. Vi kan utføre alle eiendomsendringene og metodene til det nevnte objektet.
Nedenfor er syntaksen til With Statement i VBA.
Med (OBJECT) (Kode … Hva må gjøres?) Avslutt med
Objektet er bare et utvalg av celler eller celler vi refererer til, og så kan vi endre egenskapene og utføre alle metodene som er knyttet til den eller de spesifikke cellene.
Hvordan bruke med uttalelse i Excel VBA?
Nedenfor er noen eksempler å bruke With Statement i Excel VBA.
Eksempel 1
Anta at du har en viss verdi i A1-celle, jeg har skrevet inn teksten som "Excel VBA" i celle A1.

Nå for denne cellen, må jeg gjøre noen oppgaver, dvs. formatering i Excel.
Jeg vil endre skriftstørrelse, skriftnavn og interiørfarge, sette inn en kant osv. … Vanlig hva vi gjør er at vi først henviser cellen ved å bruke VBA RANGE-objekt.
Kode:
Sub With_Example1 () Range ("A1") End Sub

Nå for å endre skriftstørrelse, får vi tilgang til "font" -egenskapen til denne cellen.

Under FONT-egenskap får vi tilgang til størrelsesegenskapen og angir størrelse ved å sette et likhetstegn.
Kode:
Sub With_Example1 () Range ("A1") Font.Size = 15 End Sub

Nå på samme måte gjør vi andre formateringsoppgaver, som vist nedenfor.
Kode:
Sub With_Example1 () Range ("A1"). Font.Size = 15 Range ("A1"). Font.Name = "Verdana" Range ("A1"). Interior.Color = vbGul Range ("A1"). .LineStyle = xlContinuous End Sub

Dette vil gjøre alle de nevnte oppgavene, men hvis du ser på koden for å utføre hver formateringsaktivitet, har vi oppgitt celleadressen hver gang. Dette gjør at koden ser lang og tidkrevende ut.
Nå vil vi bruke VBA With en uttalelse for å redusere oppføringen av celleadresse hver gang. Åpne MED-setningen i Excel VBA og oppgi celleadresse.
Kode:
Sub With_Example1 () With Range ("A1") End Sub

Inne i With-setningen, sett en prikk for å se alle egenskapene og metodene til celle A1.

Nå endrer den første formateringsaktiviteten skriftstørrelsen, så få tilgang til FONT og under denne tilgang SIZE-egenskapen.
Kode:
Sub With_Example1 () With Range ("A1") .Font.Size = 15 End Sub

Tilsvarende må du oppgi andre formateringskoder og lukke VBA With Statement.
Kode:
Sub With_Example1 () With Range ("A1") .Font.Size = 15 .Font.Name = "Verdana" .Interior.Color = vbGul .Borders.LineStyle = xlContinuous End With End Sub

Kjør koden for å se all formatering i det nevnte objektet, dvs. celle A1.

Så all formateringen ble brukt på cellen. Se hvor kul denne teknikken er.
Eksempel 2
Hvis du for eksempel vil endre alle egenskapene relatert til skriften, kan du nevne celle- og FONT-egenskapen.
Kode:
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
- With statement brukes til å minimere koden.
- Vi må først levere objekt for With-uttalelse.
- Når det spesifikke objektet er levert, kan vi bare få tilgang til objektets egenskaper og metoder.