Utilizzando intervalli denominati in una macro

Bruce ha un intervallo denominato (Account) definito in una cartella di lavoro e si chiede come accedere e utilizzare tale intervallo denominato dall'interno di una macro. Ci sono diversi modi per accedere alla gamma, utilizzando sia l'oggetto Range o la collezione Names.

Per accedere l'intervallo denominato utilizzando l'oggetto Range, tutto quello che dovete fare è fornire il nome del campo come parametro per l'oggetto. Questo nome è la stessa che è stata definita all'interno di Excel. Per esempio, la seguente riga potrebbe essere usato per cambiare il colore interno dell'intera gamma:

Fogli di lavoro ("Sheet1"). Range ("Account"). Interior.Color = vbYellow

Notare che l'oggetto Range è utilizzato rispetto a un foglio particolare, in questo caso Sheet1. Si potrebbe anche definire un oggetto intervallo all'interno di VBA e poi assegnarlo ad essere pari al intervallo denominato, in questo modo:

Set RNG = Worksheets ("Sheet1"). Range ("Account")

L'altro metodo di usare l'intervallo denominato è di utilizzare l'insieme Names. La seguente riga sarà nuovamente impostare il colore degli interni della gamma di colore giallo:

Cartelle di lavoro ("Book1.xls"). Names ("Account"). RefersToRange.Interior.Color = vbYellow

Si noti che la raccolta Names è relativo all'intera cartella di lavoro, quindi non è necessario conoscere quali foglio di lavoro l'intervallo denominato è associato a quando si utilizza questo metodo di accesso. È inoltre possibile definire un oggetto Range in VBA e assegnarlo ad essere lo stesso l'intervallo denominato:

Set RNG = Workbooks ("Book1.xls"). Names ("Account"). RefersToRange

Si deve sapere che il metodo di raccolta Names di accedere a una gamma di nome sarà fattibile solo se non si ha lo stesso intervallo denominato definito su diversi fogli di lavoro nella cartella di lavoro. Se lo fai, allora si avrà bisogno di utilizzare il metodo oggetto Range, che richiede l'uso di un nome del foglio di lavoro specifico nel riferimento.

ExcelTips è la vostra fonte per la formazione Microsoft Excel conveniente. Questo suggerimento (3106) si applica a Microsoft Excel 97, 2000, 2002, e 2003. È possibile trovare una versione di questo suggerimento per l'interfaccia ribbon di Excel (Excel 2007 e versioni successive) qui: Utilizzando intervalli denominati in una macro.