JohnJ_83 ha scritto:Fantastico! Funziona eccellentemente! Infinite grazie!
Prego
JohnJ_83 ha scritto:
Giusto per imparare, sapresti spiegarmi che tipo di formule hai usato o in che modo effettuano il calcolo!?
Foglio3
In colonna A (al momento nascosta) viene conteggiato progressivamente il riscontro dei tuoi inserimenti X.
Il primo è 1, il secondo diventa 2, …. fino a conteggiare progressivamente tutti i tuoi X.
Per visualizzare la colonna nascosta seleziona tutto il foglio (clicca su quadrattino vuoto in altro sopra ai numeri di riga) e poi da Menu > Formato > Colonna > Mostra apparirà anche la colonna A. La formula chiave è quella contenuta nella cella A2 ossia:
Questa può essere copiata in basso quanto serve e si replicherà adattandosi automaticamente alla nuova posizione (già fatto fino alla riga 501 così da tornar utile anche nel caso estendessi la tua base "articoli/Prezzi" fino a tale riga) permettendo di ottenere in tale colonna quanto sopra esposto.
Foglio1
Cella A21 e cella F21 sono le celle contenenti le formule chiave iniziali che poi possono essere replicate in basso quanto serve.
Formula di cella A21:
Codice: Seleziona tutto
=SE(VAL.ERRORE(CERCA.VERT(RIF.RIGA()-20;$Foglio3.$A$2:$D$501;3;0));"";CERCA.VERT(RIF.RIGA()-20;$Foglio3.$A$2:$D$501;3;0))
Formula di cella F21:
Codice: Seleziona tutto
=SE(VAL.ERRORE(CERCA.VERT(RIF.RIGA()-20;$Foglio3.$A$2:$D$501;3;0));"";CERCA.VERT(RIF.RIGA()-20;$Foglio3.$A$2:$D$501;4;0))
Entrambe contengono dunque formule composte da più funzioni.
La funzione RIF.RIGA() recupera il numero 21 iniziale (cella A21 o cella F21)
Sottraendo 20 rimane il valore 1
Con la funzione CERCA.VERT() viene trovato il riscontro del Numero 1 nell'area dati d'interesse del foglio 3 ($Foglio3.$A$2:$D$201) estraendone rispettivamente per cella A21 e F22 le relative corrispondenze trovate in colonna 3 e 4 (la prima contiene il contatore progressivo, la seconda è quella di selezione X la terza la descrizione articolo e la quarta il prezzo).
La funzione VAL.ERRORE() verifica se la formula dovesse dare errore (dati del riscontro progressivo non trovati).
La funzione SE() testa il verificarsi dell'errore predetto e in tal caso invece di visualizzare una indicazione d'errore inserisce una stringa nulla “” che equivale a far apparire la cella vuota.
Copiando in basso la formula quanto basta (già fatto fino riga 40) vengono estratti i successi progressivi riscontri fino al numero 20 (per esigenze maggiori come indicato nel file copiare ultime celle verdi verso il basso quanto serve).
Risultato vengono visualizzati progressivamente nelle aree verdi, se presenti, i primi 20 riscontri trovati.
Per esigenze maggiori estendere aree verdi in basso come già indicato.
Ricapitolando le formule chiave da studiarti sono:
Foglio3.A2
Foglio1.A21
Foglio1.F21
Le altre si sono adattare/replicate automaticamente in relazione alla particolare impostazione delle precedenti utilizzando una combinazione di riferimenti relativi e assoluti (uso del simbolo $ nelle formule) …
JohnJ_83 ha scritto:
Se dovessi spostare poi quelle celle di calcolo dalla riga 21 in altre righe, cosa dovrei andare a cambiare??? Thanks
Devi tener presente che le celle chiave sono quelle della riga 21 perchè come detto ottieni il nero 1 (come detto sopra).
Ora se l'esigenza è di aumentare in basso il numero di riscontri puoi copiare questa o una delle altre celle verdi gia presenti in basso quanto ti serve.
Se invece devi proprio spostare l'area di visualizzazione dei riscontri devi modificare la parte di formula
RIF.RIGA()-20 della prima cella verde di ciascuna delle due colonne in modo tale da ottenere sempre il valore 1.
Esempio. Se vuoi partire dalla riga 50 anzichè dalla riga 21 come adesso.
Il valore di RIF.RIGA() sarà 50
Per ottenere 1 dovrai sottrarre 49 anzichè 20
Altro esempio. Se vuoi partire dalla riga 74 anzichè dalla riga 21 come adesso.
Il valore di RIF.RIGA() sarà 74
Per ottenere 1 dovrai sottrarre 73 anzichè 20
Attenzione: Notare che nelle due formule chiave ci sono due
RIF.RIGA()-20 percui dovrai apportare la medesima modifica in entrambi.
Fatto questo copi/trascini in basso suddette celle quanto serve e le formule si adattano automaticamente all'esigenza della lunghezza lista che vorrai.
PS.: Ricarico il file in quanto nel precedente allegato le formule chiave estendevano ricerca fino a riga 201 ($Foglio3.$A$2:$D$201) ora corretto fino a riga 501 ($Foglio3.$A$2:$D$501)
.... spero di non averti complicato troppo le idee ...
.