VBA Set Range

Imposta intervallo in Excel VBA

Imposta intervallo in vba significa che specifichiamo un determinato intervallo al codice o alla procedura da eseguire, se non forniamo un intervallo specifico a un codice assumerà automaticamente l'intervallo dal foglio di lavoro che ha la cella attiva quindi è molto importante in il codice per impostare la variabile di intervallo.

Dopo aver lavorato con Excel per così tanti anni, devi aver capito il fatto che tutti i lavori che facciamo sono sul foglio di lavoro e nei fogli di lavoro sono le celle che contengono i dati. Quindi, quando vuoi giocare con i dati, devi essere un modello di comportamento delle celle nei fogli di lavoro. Quindi, quando più celle si uniscono, diventa un RANGE. Per imparare VBA dovresti sapere tutto su celle e intervalli. Quindi in questo articolo, ti mostreremo come impostare l'intervallo di celle che può essere utilizzato per la codifica VBA in dettaglio.

Cos'è l'oggetto Range?

L'intervallo in VBA viene definito oggetto. Un intervallo può contenere una singola cella, più celle, una riga o una colonna e così via ...

In VBA possiamo classificare l'intervallo come di seguito.

"Applicazione >>> Cartella di lavoro >>> Foglio di lavoro >>> Intervallo"

Innanzitutto, dobbiamo accedere all'applicazione, quindi in questo dobbiamo fare riferimento a quale cartella di lavoro ci riferiamo e nella cartella di lavoro, ci riferiamo a quale foglio di lavoro ci riferiamo e quindi nel foglio di lavoro dobbiamo menzionare l'intervallo di celle.

Usando Intervallo di celle possiamo inserire il valore nella cella o nelle celle, possiamo leggere o ottenere valori dalla cella o dalle celle, possiamo eliminare, possiamo formattare e possiamo fare anche molte altre cose.

Come accedere all'intervallo di celle in Excel VBA?

Puoi scaricare questo modello Excel dell'intervallo impostato VBA qui - Modello Excel dell'intervallo impostato VBA

Nella codifica VBA possiamo fare riferimento alla cella utilizzando la proprietà VBA CELLS e l'oggetto RANGE. Ad esempio, se vuoi fare riferimento alla cella A1, per prima cosa vedremo l'utilizzo dell'oggetto RANGE.

All'interno della sottoprocedura, dobbiamo prima aprire l'oggetto RANGE.

Codice:

 Sub Range_Examples () Range (End Sub 

Come puoi vedere sopra l'oggetto RANGE che chiede qual è la cella a cui ci riferiamo. Quindi dobbiamo inserire l'indirizzo della cella tra virgolette.

Codice:

 Sub Range_Examples () Range ("A1") End Sub 

Una volta fornito l'indirizzo della cella, dobbiamo quindi decidere cosa fare con questa cella utilizzando proprietà e metodi. Ora metti un punto per vedere le proprietà e i metodi dell'oggetto RANGE.

Se vogliamo inserire il valore nella cella, dobbiamo scegliere la proprietà "Valore".

Codice:

 Sub Range_Examples () Intervallo ("A1") Valore End Sub 

Per impostare il valore dobbiamo mettere un segno di uguale e inserire il valore che vogliamo inserire nella cella A1.

Codice:

 Sub Range_Examples () Range ("A1"). Value = "Excel VBA Class" End Sub 

Esegui il codice tramite l'opzione Esegui e guarda la magia nella cella A1.

Come accennato nel codice, abbiamo il valore nella cella A1.

Allo stesso modo, possiamo fare riferimento alla cella utilizzando anche la proprietà CELLS. Apri la proprietà CELLS e guarda la sintassi.

Questo è diverso dall'oggetto RANGE in cui possiamo inserire l'indirizzo della cella direttamente tra virgolette, piuttosto dobbiamo fornire il numero di riga e la colonna per fare riferimento alla cella. Poiché ci riferiamo alla cella A1, possiamo dire che la riga è 1 e la colonna è 1.

Dopo aver menzionato l'indirizzo della cella, possiamo utilizzare proprietà e metodi per lavorare con le celle. Ma il problema qui è diverso dall'oggetto intervallo dopo aver inserito il punto non possiamo vedere l'elenco intellisense.

Quindi, devi essere un esperto per fare riferimento alle celle utilizzando la proprietà CELLS.

Codice:

 Sub CELLS_Examples () Cells (1, 1) .Value = "Excel VBA Class" End Sub 

Accesso a più celle e impostazione dell'intervallo di riferimento in VBA

Una delle grandi differenze tra CELLS & RANGE è che usando CELLS possiamo accedere a una sola cella, ma usando RANGE possiamo anche accedere a più celle.

Ad esempio per le celle da A1 a B5 se vogliamo il valore di 50, possiamo scrivere il codice come di seguito.

Codice:

 Sub Range_Examples () Intervallo ("A1: B5"). Valore = 50 End Sub 

Questo inserirà il valore di 50 dalla cella A1 a B5.

Invece di fare riferimento direttamente alle celle, possiamo usare la variabile per contenere il riferimento di celle specificate.

In primo luogo, definire la variabile come oggetto "Range".

Codice:

 Sub Range_Examples () Dim Rng As Range End Sub 

Una volta che la variabile è definita come oggetto "Range", dobbiamo impostare il riferimento per questa variabile su quali sono gli indirizzi di cella a cui manterranno il riferimento.

Per impostare il riferimento dobbiamo utilizzare la parola chiave "SET" e inserire gli indirizzi delle celle utilizzando l'oggetto RANGE.

Codice:

 Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") End Sub 

Ora la variabile "Rng" si riferisce alle celle da A1 a B5.

Invece di scrivere l'intervallo di indirizzi della cella ("A1: B5") possiamo semplicemente utilizzare il nome della variabile "Rng".

Codice:

 Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") Rng.Value = "Range Setting" End Sub 

Ora questo inserirà il valore menzionato dalla cella A1 alla cella B5.

Supponiamo che tu voglia qualunque cosa la cella selezionata debba essere un riferimento, quindi possiamo impostare il riferimento come segue.

Codice:

 Sub Range_Examples () Dim Rng As Range Set Rng = Selection Rng.Value = "Range Setting" End Sub 

Questa è una bellezza perché se seleziono una delle celle e la eseguo inserirà il valore anche in quelle celle.

Ad esempio, selezionerò determinate celle.

Ora eseguirò il codice e vedrò cosa succede.

Per tutte le celle selezionate ha inserito il valore.

In questo modo, possiamo impostare il riferimento all'intervallo dichiarando le variabili in VBA.

Cose da ricordare

  • L'intervallo può selezionare più celle ma CELLS può selezionare una cella alla volta.
  • RANGE è un oggetto e CELLS è una proprietà.
  • Qualsiasi variabile oggetto dovrebbe essere impostata come riferimento dell'oggetto utilizzando la parola chiave SET.