
Formula generica
(=COLUMN(range)-COLUMN(range.firstcell)+1)
Sommario
Per ottenere un set completo di numeri di colonna relativi in un intervallo, è possibile utilizzare una formula di matrice basata sulla funzione COLUMN.
Nell'esempio mostrato, la formula di matrice in B4: H4 è:
(=COLUMN(B4:H4)-COLUMN(B4)+1)
Nel foglio di lavoro, questo deve essere inserito come formula di matrice multicella utilizzando Control + Maiusc + Invio
Questa è una formula robusta che continuerà a generare numeri relativi anche quando le colonne vengono inserite davanti all'intervallo.
Spiegazione
La prima funzione COLUMN genera un array di 7 numeri come questo:
(2,3,4,5,6,7,8)
La seconda funzione COLUMN genera un array con un solo elemento come questo:
(2)
che viene quindi sottratto dal primo array per restituire:
(0,1,2,3,4,5,6)
Infine, viene aggiunto 1 per ottenere:
(1,2,3,4,5,6,7)
Con un intervallo denominato
È possibile adattare questa formula da utilizzare con un intervallo denominato. Ad esempio, nell'esempio precedente, se hai creato un intervallo denominato "dati" per B4: H4, puoi utilizzare questa formula per generare i numeri di colonna:
(=COLUMN(data)-COLUMN(INDEX(data,1,1))+1)
Incontrerai questa formula in altre formule di matrice che devono elaborare i dati colonna per colonna.
Con SEQUENCE
Con la funzione SEQUENZA la formula per restituire colonne di righe relative per un intervallo è semplice:
=SEQUENCE(COLUMNS(range))
La funzione COLONNE fornisce il conteggio delle colonne, che viene restituito alla funzione SEQUENZA. SEQUENZA crea quindi un array di numeri, a partire dal numero 1. Quindi, seguendo l'esempio originale sopra, la formula seguente restituisce lo stesso risultato:
=SEQUENCE(COLUMNS(B4:H4)) // returns (1;2;3;4;5;6;7)
Nota: la formula SEQUENZA è una nuova funzione di matrice dinamica disponibile solo in Excel 365.