Copiare tutti i nomi di intervallo a livello di codice in Excel

Riepilogo

In Microsoft Office Excel è possibile creare una macro di Microsoft Visual Basic, Applications Edition (VBA) che consente di copiare tutti i nomi di intervallo dalla cartella di lavoro attiva a un'altra cartella di lavoro.

Ulteriori informazioni

Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia di qualsiasi tipo, sia espressa che implicita, ivi incluse, senza limitazioni, le garanzie implicite di commerciabilità o idoneità per uno scopo particolare. In questo articolo si presuppone che l'utente conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug delle procedure. I tecnici di supporto tecnico Microsoft sono autorizzati a fornire spiegazioni in merito alla funzionalità di una particolare routine, ma in nessuno caso a modificare questi esempi per fornire funzionalità aggiuntive o a creare routine atte a soddisfare specifiche esigenze.

Per creare e utilizzare una macro per copiare tutti i nomi degli intervalli dalla cartella di lavoro attiva a un'altra cartella di lavoro, seguire questa procedura nell'esempio seguente:

  1. Avviare Excel e quindi in una nuova cartella di lavoro fare clic su seleziona cella A1.

  2. Eseguire una delle operazioni seguenti:

    • In Microsoft Office Excel 2007 fare clic sulla scheda Formule e quindi su Definisci nome nel gruppo Nomi definiti .
    • In Microsoft Office Excel 2003 in e versioni precedenti di Microsoft Excel scegliere Nome dal menu Inserisci e quindi fare clic su Definisci.
  3. Nella finestra di dialogo Definisci nomi digitare Intervallo1 nella casella Nomi nella cartella di lavoro e quindi fare clic su OK.

  4. Selezionare la cella B1.

  5. Eseguire una delle operazioni seguenti:

    • In Excel 2007 fare clic sulla scheda Formule e quindi su Definisci nome nel gruppo Nomi definiti .
    • In Excel 2003 e nelle versioni precedenti di Excel scegliere Nome dal menu Inserisci e quindi fare clic su Definisci.
  6. Nella finestra di dialogo Definisci nomi digitare Intervallo2 nella casella Nomi nella cartella di lavoro e quindi fare clic su OK.

  7. Premere ALT+F11 per avviare l'editor di Visual Basic.

  8. Nel menu Inserisci, fare clic su Modulo.

  9. Nel foglio del modulo digitare il codice seguente:

    Sub Copy_All_Defined_Names()
       ' Loop through all of the defined names in the active
       ' workbook.
         For Each x In ActiveWorkbook.Names
          ' Add each defined name from the active workbook to
          ' the target workbook ("Book2.xls" or "Book2.xlsm").
          ' "x.value" refers to the cell references the
          ' defined name points to.
          Workbooks("Book2.xls").Names.Add Name:=x.Name, _
             RefersTo:=x.Value
       Next x
    End Sub
    
  10. Premere ALT+F11 per tornare a Excel.

  11. Eseguire una delle operazioni seguenti:

    • In Excel 2007 fare clic sul pulsante Microsoft Office, scegliere Salva con nome, excel Macro-Enabled cartella di lavoro e quindi salvare la cartella di lavoro con il nome Book1.xlsm.
    • In Excel 2003 e nelle versioni precedenti di Excel fare clic su Salva dal menu File e quindi salvare la cartella di lavoro come Book1.xls.
  12. Eseguire una delle operazioni seguenti:

    • In Excel 2007 fare clic sul pulsante Microsoft Office, su Nuovo, su Cartella di lavoro vuota e quindi su Crea.
    • In Excel 2003 fare clic su Nuovo dal menu File e quindi su Cartella di lavoro vuota nel riquadro attività Nuova cartella di lavoro .
    • In Excel 2002 e nelle versioni precedenti di Excel fare clic su Nuovo dal menu File , scegliere Cartella di lavoro e quindi fare clic su OK.
  13. Eseguire una delle operazioni seguenti:

    • In Excel 2007 fare clic sul pulsante Microsoft Office, scegliere Salva con nome, excel Macro-Enabled cartella di lavoro e quindi salvare la cartella di lavoro con il nome Book2.xlsm.
    • In Excel 2003 e nelle versioni precedenti di Excel fare clic su Salva con nome dal menu File e quindi salvare la cartella di lavoro come Book2.xls.
  14. Passare a Book1.

    Nota

    Potrebbe essere necessario ridurre a icona o ripristinare Book2 per visualizzare il pulsante Book1.

  15. Eseguire una delle operazioni seguenti:

    • In Excel 2007 fare clic sulla scheda Sviluppo e quindi su Macro.

      Nota

      Se la scheda Sviluppo non è visualizzata, fare clic sul pulsante Microsoft Office, scegliere Opzioni di Excel, fare clic su Popolari, selezionare la scheda Mostra sviluppatore nella casella di controllo Barra multifunzione e quindi fare clic su OK.

    • In Excel 2003 e nelle versioni precedenti di Excel scegliere Macro dal menu Strumenti e quindi fare clic su Macro.

  16. Nell'elenco Nome macro fare clic su Copy_All_Defined_Names e quindi su Esegui.

  17. Passare a Book2 e notare che la cella A1 è denominata Range1 e che la cella B1 è denominata Range2.