Prenditi un momento e visualizza la scheda Trova della finestra di dialogo Trova e sostituisci. Il modo più semplice per farlo è premere Ctrl + F. Quando la finestra di dialogo viene visualizzata per la prima volta (vedere la figura 1), Excel fa alcuni presupposti su ciò che si desidera esattamente cercare. Quello che vuoi cercare è dettato dall’impostazione dell’elenco a discesa Entro. (Potrebbe essere necessario fare clic sul pulsante Opzioni per visualizzare l’elenco a discesa All’interno.)

image

Figura 1. La scheda Trova della finestra di dialogo Trova e sostituisci.

Quando si visualizza per la prima volta la finestra di dialogo, Dentro è impostato su Foglio per impostazione predefinita. Questa impostazione è vera indipendentemente dal fatto che si selezioni un foglio di lavoro o più fogli di lavoro prima di visualizzare la finestra di dialogo.

Se si desidera che l’elenco a discesa All’interno sia predefinito su Cartella di lavoro (anziché Foglio), non è possibile specificarlo in Excel. Puoi trarre conforto dal fatto che l’impostazione dell’elenco a discesa Entro è persistente per la sessione corrente con Excel. In altre parole, se si imposta su Cartella di lavoro, si completa la ricerca e successivamente si esegue un’altra ricerca, l’impostazione Entro è persistente; è ancora impostato su Cartella di lavoro.

È interessante notare che, a prima vista, non sembra esserci modo di affrontare questo problema utilizzando una macro. Questo perché Excel non fornisce un modo per una macro per visualizzare e modificare facilmente le impostazioni nella finestra di dialogo Trova e sostituisci. Molte finestre di dialogo possono essere visualizzate utilizzando la raccolta Dialogs, ma non Trova e sostituisci. Invece, VBA ti consente di visualizzare una versione precedente della finestra di dialogo Trova, utilizzando questo codice:

Sub ShowFind1()

Application.Dialogs(xlDialogFormulaFind).Show End Sub

Sfortunatamente, questa versione della finestra di dialogo Trova non dispone di un controllo che consenta di specificare l’ambito della ricerca, come si può fare con l’elenco a discesa All’interno nella scheda Trova della finestra di dialogo Trova e sostituisci.

C’è un modo per visualizzare la corretta finestra di dialogo Trova e sostituisci, ma non è usando la raccolta Dialogs. Invece è necessario aprire la finestra di dialogo utilizzando la raccolta CommandBars, che essenzialmente visualizza la finestra di dialogo utilizzando un comando di menu. (Abbastanza ironico se ci pensi: Excel non ha più menu, ma puoi ancora accedere alla raccolta CommandBars per visualizzare le finestre di dialogo usando i menu.) Ecco come farlo:

Sub ShowFind2()

ActiveSheet.Cells.Find What:="", LookAt:=xlWhole     Application.CommandBars("Worksheet Menu Bar").FindControl( _       ID:=1849, recursive:=True).Execute End Sub

Il metodo Find consente di impostare i diversi parametri nella finestra di dialogo Trova e sostituisci e quindi si accede all’oggetto CommandBars per visualizzare effettivamente la finestra di dialogo.

_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 (10348) si applica a Microsoft Excel 2007 e 2010. Puoi trovare una versione di questo suggerimento per la vecchia interfaccia del menu di Excel qui: