Problema in Excel con la formula LET

Anonimo
2025-03-22T13:14:40+00:00

Buongiorno,
ho usato la seguente formula Excel ed ho ottenuto un errore "La formula contiene un errore"

=LET(

n1; CONTA.VALORI(Tabella1[Valore1]); 

n2; CONTA.VALORI(Tabella2[Valore2]); 

all; STACK.ORIZ(n1; n2); 

all 

)

e la stessa cosa se uso nn1 oppure nnn1 mentre se uso nnnn1 funziona:

= LET(

nnnn1; CONTA.VALORI(Tabella1[Valore1]); 

nnnn2; CONTA.VALORI(Tabella2[Valore2]); 

all; STACK.ORIZ(nnnn1; nnnn2); 

all 

)

ho Microsoft 365 Italiano
Microsoft® Excel® per Microsoft 365 MSO (Versione 2502 Build 16.0.18526.20168) a 64 bit

Grazie se vorrete spiegarmi il motivo dell'errore.
Flavio

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Eleuterio Tedeschi 18,750 Punti di reputazione Moderatore volontario
2025-03-22T18:27:21+00:00

L'esempio che ho pubblicato era solo per capire se l'errore dipendeva dalla scrittura della formula LET

Immaginavo😊, infatti avevo scritto:

Sicuramente è un esempio ...

Sarebbe interessante capire la necessità di questa:

=LET(

lista1; Tabella1[Valore1];

lista2; Tabella2[Valore2];

conta1; RIGHE(lista1);

conta2; RIGHE(lista2);

STACK.ORIZ(

INDICE(lista1; INT(SEQUENZA(conta1*conta2;1;0)/conta2)+1);

INDICE(lista2; RESTO(SEQUENZA(conta1*conta2;1;0); conta2)+1)

)

)

Sono sicuro che con MAKEARRAY potresti ottenere qualche vantaggio, ma l'importante è che hai risolto.

Ancora grazie

Grazie a te Flavio, ricorda solo di chiudere la discussione appena puoi,

ciao.
P.S.

Il 2° parametro di SEQUENZA lo puoi omettere😉

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Eleuterio Tedeschi 18,750 Punti di reputazione Moderatore volontario
2025-03-22T14:04:11+00:00

ho usato la seguente formula Excel ed ho ottenuto un errore "La formula contiene un errore"
=LET(

n1; CONTA.VALORI(Tabella1[Valore1]);

n2; CONTA.VALORI(Tabella2[Valore2]);

all; STACK.ORIZ(n1; n2);

all

)

...
Grazie se vorrete spiegarmi il motivo dell'errore.

Dichiarando n1 non può che renderti errore, perché non puoi utilizzare nomi che potrebbero essere riferimenti validi, nel tuo caso la cella N1 del foglio.

Puoi risolvere agevolmente interponendo un underscore:
n_1

Ciao.
P.S.
Sicuramente è un esempio, ma non ha senso usare LET se non hai ridondanza di operazioni, visto che si può semplificare in:
=STACK.ORIZ(CONTA.VALORI(Tabella1[Valore1]);CONTA.VALORI(Tabella2[Valore2])

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2025-03-22T15:42:59+00:00

    Molte grazie per la gentile risposta, alla cella N1 non avevo proprio pensato.
    L'esempio che ho pubblicato era solo per capire se l'errore dipendeva dalla scrittura della formula LET
    la formula completa è

    =LET(

    lista1; Tabella1[Valore1]; 
    
    lista2; Tabella2[Valore2]; 
    
    conta1; RIGHE(lista1); 
    
    conta2; RIGHE(lista2); 
    
      STACK.ORIZ( 
    
        INDICE(lista1; INT(SEQUENZA(conta1\*conta2;1;0)/conta2)+1); 
    
        INDICE(lista2; RESTO(SEQUENZA(conta1\*conta2;1;0); conta2)+1) 
    
    ) 
    

    )

    Ancora grazie e buon lavoro.
    Flavio

    La risposta è stata utile?

    0 commenti Nessun commento