Come utilizzare la formular1c1 in vba (con esempi)
È possibile utilizzare la proprietà FormulaR1C1 in VBA per creare un riferimento assoluto o relativo a una cella particolare su un foglio.
Esistono due modi comuni per utilizzare questa proprietà:
Metodo 1: utilizzare la formula R1C1 per creare un riferimento assoluto
Sub MultipyCell()
Range(" C5 ").FormulaR1C1 = " =R1C1*20 "
End Sub
Quando esegui questa particolare macro, la cella C5 visualizzerà il risultato della cella nella riga 1 e nella colonna 1 moltiplicato per 20.
Metodo 2: utilizzare la formula R1C1 per creare un riferimento relativo
Sub MultipyCell()
Range(" C5 ").FormulaR1C1 = " =R[-4]C[-2]*20 "
End Sub
Quando esegui questa particolare macro, la cella C5 visualizzerà il risultato della cella 4 righe sopra e 2 colonne alla sua sinistra moltiplicato per 20.
I seguenti esempi mostrano come utilizzare nella pratica ciascun metodo con un foglio Excel contenente il valore 10 nella cella A1 :
Esempio 1: utilizzare la formula R1C1 per creare un riferimento assoluto
Possiamo creare la seguente macro per moltiplicare il valore della cella nella riga 1 e nella colonna 1 per 20 e visualizzare i risultati nella cella C5 :
Sub MultipyCell()
Range(" C5 ").FormulaR1C1 = " =R1C1*20 "
End Sub
Quando eseguiamo questa macro, riceviamo il seguente output:
Possiamo vedere che Excel ha utilizzato la formula =$A$1*20 per calcolare il risultato nella cella C5 .
Poiché abbiamo utilizzato R1C1 nella nostra formula in VBA, abbiamo fatto un riferimento assoluto alla cella nella prima riga e nella prima colonna, che è la cella A1 .
Esempio 2: utilizzare la formula R1C1 per creare un riferimento relativo
Possiamo creare la seguente macro per moltiplicare il valore della cella che si trova 4 righe sopra e 2 colonne a sinistra della cella C5 per 20 e visualizzare i risultati nella cella C5 :
Sub MultipyCell()
Range(" C5 ").FormulaR1C1 = " =R[-4]C[-2]*20 "
End Sub
Quando eseguiamo questa macro, riceviamo il seguente output:
Possiamo vedere che Excel ha utilizzato la formula =A1*20 per calcolare il risultato nella cella C5 .
Poiché abbiamo utilizzato le parentesi con R[-4]C[-2] nella nostra formula in VBA, abbiamo fatto un riferimento relativo alla cella situata 4 righe sopra e 2 colonne a sinistra della cella C5 , che è la cella A1 .
Nota : è possibile trovare la documentazione completa per la proprietà VBA FormulaR1C1 qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:
VBA: una formula semplice per “Se la cella contiene”
VBA: come contare le occorrenze di caratteri in una stringa
VBA: come verificare se una stringa contiene un’altra stringa