Codice non trovato su cerca x

di Jekob_82 il
21 risposte

Ciao ragazzi sapete dirmi cosa non va in questo file? In colonna f del primo foglio su alcune celle mi da questo messaggio ma nel foglio adiacente, in riferimento allo stesso codice, la cella riporta un valore, eppure mi da codice non trovato.

21 Risposte

  • È un problema di dati: un po' sono testi, un po' sono numeri.

    Infatti, se provi ad anteporre un apostrofo in cella A5, vedrai che in F5 la formula risolve correttamente con "R13".

    O sistemi i dati di partenza e ti assicuri che ci siano testi (soluzione preferibile) oppure li fai convertire alla formula

    =SE($A5="";"";(CERCA.X(TESTO($A5;"0");Elencocer!$C$2:C$48;Elencocer!$H$2:$H$48;"codice non trovato")))
  • Perchè a5 la lista parte da a2 se metto :

    =SE($A2="";"";(CERCA.X(TESTO($A2;"0");Elencocer!$C$2:C$48;Elencocer!$H$2:$H$48;"codice non trovato"))) mi da sempre codice non trovato.

  • 04/06/2026 - Jekob_82 ha scritto:

    Perchè a5

    Era un esempio come un altro... Mi piaceva il 120101 perché è quello che uso io di solito a lavoro.

    04/06/2026 - Jekob_82 ha scritto:

    mi da sempre codice non trovato.

    In A2 hai una TAB al fondo del codice che ti sfalsa il dato. Devi uniformarlo. Se togli il TAB, la funzione risolve senza problemi. Fai in modo che i dati siano puliti.

    PS: meglio se modifichi anche in TESTO($A2;"000000"), così sei certo che siano sempre 6 cifre con gli zeri in testa.

  • Si ma per fare TESTO($A2;"000000") devo usare una cella di appoggio, non mi va, ne ho fin troppe di colonne.

    No non riesco mi escono troppi codice non trovato sia con:
    =SE($A2="";"";(CERCA.X(TESTO($A2;"0");Elencocer!$C$2:C$48;Elencocer!$H$2:$H$48;"codice non trovato")))

    e anche con:
    =SE($A2="";"";(CERCA.X($A2;Elencocer!$C$2:C$48;Elencocer!$H$2:$H$48;"codice non trovato")))

    Ergo, abbandono l'idea, non è fattibile senza smadonnare. 

    Grazie lo stesso.

  • 04/06/2026 - Jekob_82 ha scritto:

    devo usre una cella di appoggio

    No, la puoi mettere direttamente nella formula. Puoi anche usarla direttamente nelle CERCA.X:

    =SE($A2="";"";(CERCA.X(TESTO($A2;"000000");TESTO(Elencocer!$C$2:C$48;"000000");Elencocer!$H$2:$H$48;"codice non trovato")))

    ma non ti risolve eventuali altri errori.

    Certo è che se sfrutti momentaneamente una colonna d'appoggio e poi copi/incolli solo i valori, è meglio.

    Per sapere quale strada è la più efficiente, serve sapere da dove arrivano i dati da cui parti: se sono dati "statici", meglio pulirli una volta e non pensarci più. se arrivano da una qualche base dati, allora serve fare in modo che la formula faccia il lavoro al posto tuo.

  • Sono statici in linea di massima ma se capita di dover aggiungere un codice nuovo quindi non presente ecco che quell'elenco subisce una variazione.

    Anche integrandola mi rimangono due codici non trovati che sono quelli dove a fianco del numero c'è del testo tra parentesi.

  • 04/06/2026 - Jekob_82 ha scritto:

    Sono statici in linea di massima

    Allora meglio pensare di pulirli. Quando a me capita, mi metto di santa pazienza e, per tramite di una colonna d'appoggio, creo con una funzione il dato pulito. Poi copio questi dati e li incollo sulle celle di partenza. Faccio tutti gli aggiustamenti che servono e poi cancello il range d'appoggio.

    04/06/2026 - Jekob_82 ha scritto:

    Anche integrandola mi rimangono due codici non trovati

    Basta un piccolo escamotage: gli fai cercare solo i primi caratteri:

    ...CERCA.X(SINISTRA(TESTO($A2;"000000");7);...

  • Grazie 1000 per il supporto, però te lo dico sinceramente, io odio queste formule chilometriche

    Tanto più che o uso il copia incolla ma a scriverle 9 su 10 sbaglio la sintassi. Meno male che ultimamente mi viene in aiuto l'IA 

  • 04/06/2026 - Jekob_82 ha scritto:

    io odio queste formule chilometriche

    Io anche, per quello opto sempre per pulire i dati quando è possibile. Con tutti i codici a posto, si ritorna alla tua originale. Basta solo la SINISTRA in più.

    Anche se c'è da dire che non è molto lunga questa formula. In ogni caso, se il problema è la lunghezza nelle celle, puoi pensare di tramutarla in LAMBDA ed usarla in quel modo. Così se la dovessi annidare in altre funzioni, non diventa davvero illeggibile. Ma vale per la 2024/365, non ricordo che versione di Excel tu abbia.

  • 2021 ma io excel lo uso talmente male che non so se vale la pena aggiornare la versione. Le mie conoscenze di excel sono sempre quelle. Adesso bene o male un pò me la cavo perchè un po con l'IA che mi aggiusta un sacco di formule, poi mi sono salvato un sacco di esempi e di formule e cerco di usare sempre quelle adattandole al contesto, ma io ed excel andiamo poco d'accordo.

  • Cambia la formula del foglio ELENCOCER

    in C2 da trascinare in basso

    =SE(VAL.NUMERO(B2);B2;SOSTITUISCI(B2;"*";"P"))

    dovrebbe sistemarsi la ricerca

  • No non cambia niente sempre codice non trovato in alcune righe

  • No non cambia niente sempre codice non trovato in alcune righe

    magari non sono uguali eh?

    guarda il 020304

    ha l'apostrofo davanti e non si capisce il perchè

    nell'altro foglio abbia uno spazio alla fine

    questo

    130110P(TERMOP)........non esiste

    esiste

    130110P

    questo non esiste

    150202P(COMP) 

    esistono

    150202P

    150202(COMP)

    NB

    CERCA.X ha l'espansione nel 2021 si può sfuttare

    =SE($A2:A100="";"";(CERCA.X($A2:A100;Elencocer!$C$2:C$100;Elencocer!$H$2:$H$100;"codice non trovato")))

Devi accedere o registrarti per scrivere nel forum
21 risposte