Ricerca in matrice dati con controlli multipli

Anonimo
2010-03-01T18:27:03+00:00

Buongiorno, ho un problema con una formula che non riesco a far funzionare, è un'evoluzione del mio precedente post "cerca valori in matrici dati excel".

L'altra volta paoloard era riuscito a trovare una soluzione, che però non riesco a fare funzionare correttamente in questo caso.

Purtroppo mi trovo costretto ad allegare un piccolissimo file excel di esempio (27K), perchè non riesco a spiegare tutti i controlli che deve fare la formula, aprendolo al seguente link www.mediafire.com/file/djdijc122wz/Listino.xls  si vedono subito le celle in cui devo inserire le formule. Nelle celle azzurre c'è già una bozza di formula, ma non funziona.

Ho passato anche la nottata scorsa a tentativi, era meglio se andavo a dormire.....

grazie mille per l'aiuto, so che questo è il forum giusto per ricevere aiuto dagli esperti (pensavo anch'io di esserlo, ma devo ricredermi......)

ciao Mario

Microsoft 365 e Office | Installare, riscattare, attivare | Per la casa | Altro

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
Anonimo
2010-03-02T18:02:58+00:00

Ciao Mario,

figurati se chiedi troppo!

Avrei voluto scriverla già prima, ma temevo di creare troppa cofusione.

Utilizzando il nome Ante, definito come indicato sopra, la formula diventerebbe:

=CERCA.VERT($C83;SCARTO(Ante;1;-2;CONTA.SE($A$7:$A$76;$B83));CONFRONTA($D83;Ante;)+2)

da inserire in riga 83 e trascinare in basso.

Ciao, Nur

La risposta è stata utile?

0 commenti Nessun commento

3 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2010-03-02T22:25:03+00:00

    Ciao Nur,

    grazie mille per la collaborazione, adesso è perfetta.

    ciao Mario

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2010-03-02T16:50:32+00:00

    Bravissimo Nur,

    hai interpretato benissimo (e risolto) quello che mi serviva, grazie mille!!!

    per la cronaca ho provato a mettere il nome Ante nella formula precedente, ma come probabilmente ti immagini non ci sono riuscito, se non chiedo troppo e tu volessi ottimizzarmi la formula......grazie mille

    ciao Mario

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2010-03-02T11:50:05+00:00

    Ciao Mario,

    ho fatto una modifica veloce alla tua formula.

    Prova:

    =CERCA.VERT($C83;SCARTO($B$6;CONFRONTA($B83;$A$7:$A$76;);;CONTA.SE($A$7:$A$76;$B83);10);CONFRONTA($D83;SCARTO($B$6;CONFRONTA($B83;$A$7:$A$76;)-1;;;10);))

    Credo che si possa sintetizzare meglio.

    (quei due SCARTO($B$6;CONFRONTA($B83;$A$7:$A$76;);;... ripetuti, non mi piacciono molto)

    E' corretto che, nel tuo esempio, anche DoorB 13 5 restituisca errore?

    Spero di sì. Io l'ho interpretato così.

    In attesa di soluzioni migliori, puoi vedere come va.

    Alcune osservazioni.

    Dove inserisci le Ante, utilizzi una convalida dati riferita all'intervallo T2:T20.

    Se, invece, definissi un nome 'dinamico', potresti ottenere, in corrispondenza di ciascun codice, *solo* le ante possibili.

    Impedendo (o limitando) così le possibilità di errore.

    Ad esempio (la faccio semplice, resteranno alcune righe bianche vuote nell'elenco a discesa, ma è accettabile).

    Seleziona la cella D83.

    Vai in menù > Inserisci > Nome > definisci:

    scegli un nome, ad esempio: Ante

    nella casella 'Riferito a:' scrivi:

    =SCARTO(Listini!$D$6;CONFRONTA(Listini!$B83;Listini!$A$7:$A$76;)-1;;;10)

    [OK]

    Quindi, seleziona D83:D90

    Vai in menù > dati > convalida e varia l'intervallo che stai usando in 'Origine:' con:

    =Ante

    Se questa proposta ti può interessare, tra l'altro, il nome Ante, potrebbe essere utilizzato anche all'interno della formula precedente, migliorandone l'aspetto.

    Ciao, Nur

    La risposta è stata utile?

    0 commenti Nessun commento