A volte in una macro è utile selezionare le celle relative alla cella attualmente selezionata. Ad esempio, supponiamo che tu voglia selezionare le prime tre celle della riga corrente. Puoi farlo utilizzando il seguente codice VBA:

Range(Cells(Selection.Row, 1), Cells(Selection.Row, 3)).Select

La proprietà Cells restituisce un oggetto che rappresenta una riga e una colonna specifiche (singola cella) di un foglio di lavoro. In questo utilizzo, Cells viene utilizzato due volte per determinare un intervallo specifico di celle. La prima istanza restituisce la prima cella della riga corrente, mentre la seconda restituisce la terza cella della riga corrente. Pertanto, l’intervallo diventa dalla prima alla terza cella della riga corrente.

Invece di utilizzare la proprietà Cells per specificare una posizione, è possibile utilizzare la proprietà Offset per eseguire gran parte della stessa operazione. Considera il seguente codice:

Range(ActiveCell.Offset(-3, 5), ActiveCell.Offset(0, 10)).Select

Ciò utilizza la proprietà Offset dell’oggetto ActiveCell per specificare un intervallo relativo alla cella attualmente selezionata. La proprietà Offset accetta un argomento che rappresenta la riga e la colonna dell’offset. Un valore negativo rappresenta in alto (per la riga) e a sinistra (per la colonna). Un valore positivo è in basso (per la riga) e a destra (per la colonna). È inoltre possibile utilizzare un valore 0, che rappresenta la riga o la colonna corrente.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (11402) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Excel qui: