VBA con - Come usare con ... End With Statement in Excel VBA?

Con istruzione in Excel VBA

L'istruzione With viene utilizzata in VBA per accedere a tutte le proprietà e i metodi di un oggetto menzionato. Dobbiamo fornire prima a quale oggetto VBA ci riferiamo, quindi chiudere l'istruzione With con End With , quindi all'interno di questa istruzione. Possiamo eseguire tutte le modifiche alle proprietà e i metodi dell'oggetto menzionato.

Di seguito è riportata la sintassi dell'istruzione With in VBA.

Con (OGGETTO) (Codice… cosa è necessario fare?) Termina con

L'oggetto non è altro che un intervallo di celle o celle a cui ci riferiamo, quindi possiamo modificare le proprietà ed eseguire tutti i metodi associati a quella specifica cella o celle.

Come utilizzare con l'istruzione in Excel VBA?

Di seguito sono riportati alcuni esempi da utilizzare con l'istruzione in Excel VBA.

Esempio 1

Supponiamo di avere un certo valore nella cella A1, ho inserito il testo come "Excel VBA" nella cella A1.

Ora per questa cella, ho bisogno di eseguire alcune attività, ad esempio la formattazione in Excel.

Voglio cambiare la dimensione del carattere, il nome del carattere e il colore interno, inserire un bordo, ecc … Tipico quello che facciamo è prima riferirci alla cella usando l'oggetto VBA RANGE.

Codice:

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

Ora per cambiare la dimensione del carattere, accediamo alla proprietà "font" di questa cella.

Nella proprietà FONT, accediamo alla proprietà Size e immettiamo le dimensioni inserendo un segno di uguale.

Codice:

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

Allo stesso modo, eseguiamo altre attività di formattazione, come mostrato di seguito.

Codice:

Sub With_Example1 () Range ("A1"). Font.Size = 15 Range ("A1"). Font.Name = "Verdana" Range ("A1"). Interior.Color = vbYellow Range ("A1"). Borders .LineStyle = xlContinuous End Sub

Questo farà tutte le attività menzionate, ma se guardi il codice per eseguire ogni attività di formattazione, abbiamo fornito l'indirizzo della cella ogni volta. Questo fa sembrare il codice lungo e dispendioso in termini di tempo.

Ora useremo VBA con un'istruzione per ridurre ogni volta l'immissione dell'indirizzo della cella. Aprire l'istruzione WITH in Excel VBA e fornire l'indirizzo della cella.

Codice:

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

All'interno dell'istruzione With, inserisci un punto per visualizzare tutte le proprietà e i metodi della cella A1.

Ora la prima attività di formattazione sta cambiando la dimensione del carattere, quindi accedi a FONT e sotto questa proprietà SIZE di accesso.

Codice:

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

Allo stesso modo, fornire altri codici di formattazione e chiudere VBA With Statement.

Codice:

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

Esegui il codice per vedere tutta la formattazione nell'oggetto menzionato, cioè la cella A1.

Quindi, tutta la formattazione applicata alla cella. Guarda quanto è bella questa tecnica.

Esempio n. 2

Ad esempio, se desideri modificare tutte le proprietà relative al carattere, puoi menzionare la cella e la proprietà FONT.

Codice:

Sub With_Example2 () With Range ("A1") Font End With End Sub

All'interno dell'istruzione With VBA, possiamo vedere l'elenco IntelliSense. Mostrerà solo proprietà e metodi relativi alla proprietà FONT.

Ora possiamo eseguire qualsiasi serie di attività con questo.

Codice:

Sub With_Example2 () With Range ("A1"). Font .Bold = True 'Il carattere sarà in grassetto .Color = vbAlias' Il colore del carattere sarà Alias ​​.Italic = True 'Il carattere sarà in stile corsivo. Dimensione = 20' La dimensione del carattere sarà essere 20 .Underline = True 'Il carattere sarà sottolineato End With End Sub

Il risultato sarà come mostrato di seguito.

Esempio n. 3

Il codice seguente accederà solo alle proprietà relative al bordo della cella.

Codice:

Sub With_Example3 () With Range ("B2"). Borders .Color = vbRed 'Il colore del bordo sarà rosso .LineStyle = xlContinuous' Full border .Weight = xlThick 'Thick border End With End Sub

Il risultato di questo codice è il seguente.

Cose da ricordare

  • L'istruzione With viene utilizzata per ridurre al minimo il codice.
  • Dobbiamo fornire prima l'oggetto per l'istruzione With.
  • Una volta fornito l'oggetto specifico, possiamo accedere solo alle proprietà e ai metodi di quell'oggetto.

Articoli interessanti...