Skip to main content

Come creare un intervallo denominato dinamico in Excel?

Author: Xiaoyang Last Modified: 2025-08-06

Normalmente, gli intervalli denominati sono molto utili per gli utenti di Excel. È possibile definire una serie di valori in una colonna, dare un nome a quella colonna e poi fare riferimento a quell'intervallo tramite il nome invece che tramite i riferimenti delle celle. Ma la maggior parte delle volte, è necessario aggiungere nuovi dati per espandere i valori dei dati dell'intervallo a cui si fa riferimento in futuro. In questo caso, bisogna tornare su Formule > Gestione Nomi e ridefinire l'intervallo per includere il nuovo valore. Per evitare ciò, è possibile creare un intervallo denominato dinamico, il che significa che non è necessario regolare i riferimenti delle celle ogni volta che si aggiunge una nuova riga o colonna alla lista.

Crea un intervallo denominato dinamico in Excel creando una tabella

Crea un intervallo denominato dinamico in Excel con Funzione

Crea un intervallo denominato dinamico in Excel con codice VBA


Crea un intervallo denominato dinamico in Excel creando una tabella

Se stai utilizzando Excel 2007 o versioni successive, il modo più semplice per creare un intervallo denominato dinamico è quello di creare una tabella Excel denominata.

Supponiamo di avere un intervallo di dati seguenti che deve diventare un intervallo denominato dinamico.

doc-dynamic-range1

1. Innanzitutto, definirò i nomi degli intervalli per questo intervallo. Seleziona l'intervallo A1:A6 e inserisci il nome Data nella Casella Nome, quindi premi il tasto Invio. Per definire un nome per l'intervallo B1:B6 come PrezzoVendita nello stesso modo. Allo stesso tempo, creo una formula =somma(PrezzoVendita) in una cella vuota, vedi screenshot:

doc-dynamic-range2

2. Seleziona l'intervallo e fai clic su Inserisci > Tabella, vedi screenshot:

doc-dynamic-range3

3. Nella finestra di dialogo Crea Tabella, seleziona La mia tabella ha intestazioni (se l'intervallo non ha intestazioni, deselezionala), fai clic sul pulsante OK, e i dati dell'intervallo saranno convertiti in tabella. Vedi screenshot:

doc-dynamic-range4 -2 doc-dynamic-range5

4. E quando inserisci nuovi valori dopo i dati, l'intervallo denominato si adatterà automaticamente e anche la formula creata verrà modificata. Vedi gli screenshot seguenti:

doc-dynamic-range6 -2 doc-dynamic-range7

Note:

1. I nuovi dati inseriti devono essere adiacenti ai dati precedenti, il che significa che non ci devono essere righe o colonne vuote tra i nuovi dati e i dati esistenti.

2. Nella tabella, è possibile inserire dati tra i valori esistenti.


Crea un intervallo denominato dinamico in Excel con Funzione

In Excel 2003 o versioni precedenti, il primo metodo non sarà disponibile, quindi ecco un altro modo per te. La seguente funzione OFFSET() può fare questo favore per te, ma è un po' complicato. Supponiamo di avere un intervallo di dati che contiene i nomi degli intervalli che ho definito, ad esempio, A1:A6 il nome dell'intervallo è Data, e il nome dell'intervallo B1:B6 è PrezzoVendita, allo stesso tempo, creo una formula per PrezzoVendita. Vedi screenshot:

doc-dynamic-range2

È possibile cambiare i nomi degli intervalli in nomi di intervalli dinamici con i seguenti passaggi:

1. Vai su Formule > Gestione Nomi, vedi screenshot:

doc-dynamic-range8

2. Nella finestra di dialogo Gestione Nomi, seleziona l'elemento che desideri utilizzare e fai clic sul pulsante Modifica.

doc-dynamic-range9

3. Nella finestra di dialogo Modifica Nome visualizzata, inserisci questa formula =OFFSET(Foglio1!$A$1, 0, 0, CONTA.VALORI($A:$A), 1) nella casella di testo Si riferisce a, vedi screenshot:

doc-dynamic-range10

4. Poi fai clic su OK, e ripeti il passaggio 2 e il passaggio 3 per copiare questa formula =OFFSET(Foglio1!$B$1, 0, 0, CONTA.VALORI($B:$B), 1) nella casella di testo Si riferisce a per il nome dell'intervallo PrezzoVendita.

5. E gli intervalli denominati dinamici sono stati creati. Quando inserisci nuovi valori dopo i dati, l'intervallo denominato si adatterà automaticamente e anche la formula creata verrà modificata. Vedi gli screenshot:

doc-dynamic-range6 -2 doc-dynamic-range7

Nota: Se ci sono celle vuote nel mezzo del tuo intervallo, il risultato della tua formula sarà errato. Questo perché le celle non vuote non vengono conteggiate, quindi il tuo intervallo sarà più corto di quanto dovrebbe essere, e le ultime celle nell'intervallo verranno lasciate fuori.

Suggerimento: spiegazione di questa formula:

  • =OFFSET(riferimento,righe,colonne,[altezza],[larghezza])
  • -1
  • =OFFSET(Foglio1!$A$1, 0, 0, CONTA.VALORI($A:$A), 1)
  • riferimento corrisponde alla posizione della cella iniziale, in questo esempio Foglio1!$A$1;
  • riga si riferisce al numero di righe che ti muoverai verso il basso, rispetto alla cella iniziale (o verso l'alto, se usi un valore negativo). In questo esempio, 0 indica che l'elenco inizierà dalla prima riga verso il basso.
  • colonna corrisponde al numero di colonne che ti muoverai a destra, rispetto alla cella iniziale (o a sinistra, usando un valore negativo). Nella formula sopra riportata, 0 indica espandere 0 colonne a destra.
  • [altezza] corrisponde all'altezza (o al numero di righe) dell'intervallo che inizia dalla posizione regolata. $A:$A, conterà tutti gli elementi inseriti nella colonna A.
  • [larghezza] corrisponde alla larghezza (o al numero di colonne) dell'intervallo che inizia dalla posizione regolata. Nella formula sopra riportata, l'elenco sarà largo 1 colonna.

Puoi modificare questi argomenti secondo necessità.


Crea un intervallo denominato dinamico in Excel con codice VBA

Se hai più colonne, potresti ripetere e inserire formule individuali per tutte le colonne rimanenti, ma sarebbe un processo lungo e ripetitivo. Per semplificare le cose, puoi usare un codice per creare automaticamente l'intervallo denominato dinamico.

1. Attiva il tuo foglio di lavoro.

2. Tieni premuti i tasti ALT + F11, e si aprirà la finestra Microsoft Visual Basic for Applications.

3. Fai clic su Inserisci > Modulo, e incolla il seguente codice nella Finestra Modulo.

Codice VBA: crea intervallo denominato dinamico

Sub CreateNamesxx()
'Update 20131128
Dim wb As Workbook, ws As Worksheet
Dim lrow As Long, lcol As Long, i As Long
Dim myName As String, Start As String
Const Rowno = 1
Const Colno = 1
Const Offset = 1
On Error Resume Next
Set wb = ActiveWorkbook
Set ws = ActiveSheet
lcol = ws.Cells(Rowno, 1).End(xlToRight).Column
lrow = ws.Cells(Rows.Count, Colno).End(xlUp).Row
Start = Cells(Rowno, Colno).Address
wb.Names.Add Name:="lcol", RefersTo:="=COUNTA($" & Rowno & ":$" & Rowno & ")"
wb.Names.Add Name:="lrow", RefersToR1C1:="=COUNTA(C" & Colno & ")"
wb.Names.Add Name:="myData", RefersTo:="=" & Start & ":INDEX($1:$65536," & "lrow," & "Lcol)"
For i = Colno To lcol
    myName = Replace(Cells(Rowno, i).Value, " ", "_")
    If myName <> "" Then
        wb.Names.Add Name:=myName, RefersToR1C1:="=R" & Rowno + Offset & "C" & i & ":INDEX(C" & i & ",lrow)"
    End If
Next
End Sub

4. Poi premi il tasto F5 per eseguire il codice, e verranno generati alcuni intervalli denominati dinamici che sono nominati con i valori della prima riga e crea anche un intervallo dinamico chiamato MyData che copre l'intero set di dati.

5. Quando inserisci nuovi valori dopo le righe o le colonne, l'intervallo verrà espanso. Vedi gli screenshot:

doc-dynamic-range12
-1
doc-dynamic-range13

Note:

1. Con questo codice, i nomi degli intervalli non vengono visualizzati nella Casella Nome, per visualizzare e utilizzare comodamente i nomi degli intervalli, ho installato Kutools per Excel, con il suo Riquadro di Navigazione, i nomi degli intervalli dinamici creati sono elencati.

2. Con questo codice, l'intero intervallo dei dati può essere espanso verticalmente o orizzontalmente, ma ricorda che non ci devono essere righe o colonne vuote tra i dati quando inserisci nuovi valori.

3. Quando utilizzi questo codice, il tuo intervallo di dati deve iniziare dalla cella A1.


Articolo correlato:

Come aggiornare automaticamente un grafico dopo aver inserito nuovi dati in Excel?

I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l’analisi dei dati grazie a: Esecuzione intelligente | Genera codice | Crea formule personalizzate | Analizza dati e genera grafici | Richiama Funzioni avanzate
Funzionalità popolari: Trova, evidenzia o identifica duplicati | Elimina righe vuote | Combina colonne o celle senza perdere dati | Arrotonda
Super RICERCA.VERT: Ricerca con criteri multipli    Ricerca valori multipli  |   Ricerca su più fogli   |   Corrispondenza approssimativa ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa a selezione multipla….
Gestione colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia lo stato di visibilità delle colonne nascoste | Confronta intervalli e colonne...
Funzionalità in evidenza: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestione Cartella di lavoro & Foglio di lavoro | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email da elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
I15 migliori kit di strumenti:12 strumenti di testo (Aggiungi testo, Elimina Caratteri Specifici, ...) | Oltre50 tipi di grafici (Diagramma di Gantt, ...) | Oltre40 formule utili (Calcola l'età in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci immagine dal percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti per unire & dividere (Unione avanzata righe, Dividi celle, ...) | ...e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre!

Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta l’interfaccia a schede su Office, rendendo il tuo lavoro molto più semplice

  • Abilita la modifica a schede e la lettura in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
  • Aumenta la tua produttività del50% e ti fa risparmiare centinaia di clic ogni giorno!