Excel Lifting -

Sommario

Il termine "sollevamento" si riferisce a un comportamento di calcolo di matrice nelle formule di Excel. Quando si assegna una matrice a una funzione non programmata per accettare le matrici in modo nativo, Excel "solleva" la funzione e la chiama più volte, una volta per ogni valore nella matrice. Il risultato è un array con le stesse dimensioni dell'array di input. Il sollevamento è un comportamento integrato che si verifica automaticamente.

Esempio

L'esempio mostrato illustra cosa accade se si chiama la funzione LEN nell'intervallo C5: C7, che contiene tre valori. LEN non è programmato per gestire gli array in modo nativo, quindi LEN viene eseguito tre volte, una per ogni valore in un'operazione come questa:

=LEN(C5:C7) =LEN(("dog";"kitten";"fish")) =(3;6;4)

Si noti che il risultato è un array verticale con tre valori, proprio come l'intervallo di origine.

Trattare con più risultati

Quando il sollevamento avviene in una formula, ci saranno più risultati e questi devono essere soddisfatti.

Nell'esempio precedente, poiché LEN restituisce tre valori separati in un array, è necessario gestire l'output con una funzione che possa funzionare con gli array. Un'opzione è calcolare un conteggio totale dei caratteri nell'intervallo C5: C7 utilizzando SUMPRODUCT:

=SUMPRODUCT(LEN(C5:C7))

SUMPRODUCT gestirà gli array in modo nativo, quindi questa formula non richiede control + shift + enter.

Anche la funzione SUM potrebbe essere utilizzata, ma dovrebbe essere inserita con CSE:

(=SUM(LEN(C5:C7)))

Per ulteriori informazioni sui "comportamenti di calcolo degli array" di Excel, vedere questa presentazione di Joe McDaid sulle formule degli array.

Nota: un caso speciale di sollevamento è chiamato "sollevamento a coppie", che consiste nel combinare array in modo a coppie.

Articoli interessanti...