Vediamo come sia possibile visualizzare una funzione presente in una cella di Excel.
La prima possibilità è di ricorrere al menù Strumenti -> Opzioni -> Scheda Visualizza -> Comando Formula (in Excel 2003) oppure Pulsante Office -> Opzioni di Excel -> Impostazioni Avanzate -> Opzioni di visualizzazione per il foglio di lavoro -> Visualizza formule nelle celle anziché i risultati calcolati (in Excel 2007). In questo modo verranno visualizzate tutte le formule del foglio, che sostituiranno quindi il relativo risultato e viceversa.
Se invece vogliamo visualizzare solo le formule inserite in alcune celle a nostra scelta, si dovrà creare una nuova funzione come descritto di seguito:
Aprire la finestra di VBA:
In Excel XP o 2003:
Menù Strumenti – Macro – Visual Basic Editor
In Excel 2007:
Bottone di Office – Pulsante Opzioni di Excel – Impostazioni generali – Opzione “Mostra scheda Sviluppo sulla barra multifunzione”
A questo punto ritornando nella finestra di Excel verrà visualizzata anche la Scheda Sviluppo nella quale troviamo il pulsante Visual Basic
Nella finestra Visual Basic inserire un nuovo modulo (menù Inserisci – Modulo) e copiare il codice riportato sotto:
Function FormText(CellRef As Range, Optional RefIndicator As Integer) As String
‘ RefIndicator: 0 do not show, 1 show reference, 2 show absolute reference
Dim n As Integer, f As Integer
If IsNull(RefIndicator) = True Then
RefIndicator = 0
End If
FormText = CellRef.Formula
If RefIndicator > 0 Then
FormText = “[” & CellRef.Address & “] ” & FormText
End If
n = 1
f = InStr(1, FormText, “]”)
Do While n <>
If RefIndicator = 1 And Mid(FormText, n, 1) = “$” Then
FormText = Trim(Left(FormText, n – 1) & Mid(FormText, n + 1, 200))
End If
If Mid(FormText, n, 1) = “,” Then
FormText = Trim(Left(FormText, n) & ” ” & Mid(FormText, n + 1, 200))
End If
n = n + 1
Loop
End Function
Chiudere quindi la finestra di Visual Basic e tornare in Excel.
A questo punto ci posizioniamo nella cella in cui vogliamo visualizzare il risultato della funzione ossia la formula contenuta in un’altra cella:
=FormText(Riferimento)
Dove Riferimento è la cella di cui vogliamo visualizzare la formula
Se vogliamo rendere disponibile questa funzione in modo tale da trovarla all’avvio di ogni cartella di Excel possiamo creare un componente aggiuntivo come specificato qui.
Informatics, ski racer, loves travels, Finland, Norway, mountains, squash, photography, Drones and RC Helicopter
a me funziona solo se nella stringa
"Do While n <>"
metto
"Do While n <> 2"
comunque grazie, utilissimo
francesco