Vba: come ottenere il valore di una cella da un altro foglio
È possibile utilizzare i seguenti metodi in VBA per ottenere il valore della cella in un altro foglio:
Metodo 1: ottieni il valore di una cella da un altro foglio
Sub GetCellAnotherSheet()
ActiveCell.Value = Worksheets(" Sheet2 ").Range(" A2 ")
End Sub
Questa particolare macro otterrà il valore dalla cella A2 nel Foglio2 e lo restituirà alla cella attualmente attiva.
Metodo 2: ottieni il risultato dell’operazione sui valori delle celle da un altro foglio
Puoi anche eseguire un’operazione sulle celle di un altro foglio e restituire il risultato dell’operazione nella cella attualmente attiva.
Ad esempio, puoi utilizzare la seguente sintassi per aggiungere i valori nell’intervallo B2:B10 nel Foglio2 e restituire la somma nella cella attualmente attiva:
Sub GetCellAnotherSheet()
ActiveCell.Value = WorksheetFunction.Sum(Worksheets(" Sheet2 ").Range(" B2:B10 "))
End Sub
Gli esempi seguenti mostrano come utilizzare ciascun metodo nella pratica.
Esempio 1: ottieni il valore di una cella da un altro foglio
Supponiamo di avere il seguente foglio chiamato Foglio2 che contiene informazioni su vari giocatori di basket:
Supponiamo che la cella A2 su Foglio1 sia attualmente selezionata come cella attiva.
Possiamo creare la seguente macro per ottenere il valore nella cella A2 del Foglio2 e restituirlo alla cella attualmente attiva:
Sub GetCellAnotherSheet()
ActiveCell.Value = Worksheets(" Sheet2 ").Range(" A2 ")
End Sub
Quando eseguiamo questa macro, possiamo vedere che il valore della cella A2 di Foglio1 è ora impostato su “Mavs”, che corrisponde al valore della cella A2 di Foglio2 :
Esempio 2: ottieni il risultato dell’operazione sui valori delle celle da un altro foglio
Supponiamo ancora di avere il seguente foglio chiamato Foglio2 che contiene informazioni su vari giocatori di basket:
Possiamo utilizzare la seguente macro per sommare i valori nella colonna punto di Foglio2 e restituire il risultato alla cella attualmente attiva, che risulta essere la cella A2 di Foglio1 :
Sub GetCellAnotherSheet()
ActiveCell.Value = WorksheetFunction.Sum(Worksheets(" Sheet2 ").Range(" A2 "))
End Sub
Quando eseguiamo questa macro, possiamo vedere che la somma dei valori nell’intervallo A2:A10 di Foglio2 viene ora visualizzata nella cella A2 di Foglio1 :
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:
VBA: come impostare il valore di una cella in un altro foglio
VBA: come selezionare un intervallo in una cella attiva
VBA: come eliminare le righe in base al valore della cella