Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

[RISOLTO] Ricerca Numero di riga

Ultimo Aggiornamento: 06/05/2022 16:52
Post: 6.783
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
03/05/2022 11:34

Ciao a tutti mi occorrerebbe una formula per conoscere il numero di riga.

ho una tabella composta da 100 date partendo dalla riga 1, quale potrebbe essere una formula per determinare che la data x si trovi alla riga 5, posto che effettivamente la data di ricerca è alla riga5.

in effetti ho una colonna Date che non sono consecutive, nel foglio successivo devo estrarre dei dati in base alla data, non essendo consecutive che facevo data-1 adesso devo trovare una formula che partendo da una data mi dia la data che si trova nella cella superiore del primo foglio

non devo saltare le date devono andare in successione

15/4/22
18/4/22
27/4/22
19/4/22

trovando la data 27/4/22 mi dovrebbe portare la data 18/4/22 quindi la formula dovrebbe fare sull'altro foglio

27/4/22
18/4/22
15/4/22

non so se mi sono spiegato, trovando la riga potrei risalire alla data precedente oppure esiste un altro metodo.

non so se sono riuscito a spiegarmi bene

Ciao By Sal (8-D
[Modificato da by sal 03/05/2022 11:38]
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 112
Registrato il: 27/12/2016
Città: SIENA
Età: 50
Utente Junior
Office 2019/Office 365
OFFLINE
03/05/2022 15:40

Ciao Sal,
non so se ho capito bene la regola.
Potrebbe andare bene =SE.ERRORE(INDIRETTO(INDIRIZZO(CONFRONTA($G$2;Foglio1!$A$1:$A$100;0);1));"")

Dove $G$2 contiene il valore da cercare e Foglio1!$A$1:$A$100 le date, naturalmente nelle caselle sottostanti la formula dovrebbe diventare
=SE.ERRORE(INDIRETTO(INDIRIZZO(CONFRONTA($G$2;Foglio1!$A$1:$A$100;0)-1;1));"")

Probabilmente c'e' anche il modo per fare una matrice unica ma questo mi sembrava il più veloce



---
pensa bene a quello che cerchi, allega un file di esempio, prova il registratore di macro, imparerai e potresti già avere la soluzione
Post: 6.783
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
03/05/2022 16:37

Ciao Duccio, purtroppo non funziona mi da come risultato 0, vedi cella gialla foglio "risultato"

allego il file con i riferimenti giusti

come vedi partendo dalla cella "V3" a scendere mi dovrebbe dare le date, le ho scritte manualmente, prendendole dal foglio "date", la tua formula l'ho inserita nella cella V8 aggiustando i riferimenti, ma il risultato è zero.

con il VBA avrei risolto subito, ma con le formule sono una frana, purtroppo nel caso ho bisogno di una formula.

Ciao By Sal (8-D

se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 113
Registrato il: 27/12/2016
Città: SIENA
Età: 50
Utente Junior
Office 2019/Office 365
OFFLINE
03/05/2022 17:54

Ciao Sal,
colpa mia e della fretta

=INDIRETTO(INDIRIZZO(CONFRONTA(M4;Date!B2:B1498;0);2;;;"Date"))

Con questa formula ti dà il valore che hai indicato (22/04/2022), nel caso tu voglia casella precedente o seguente

=INDIRETTO(INDIRIZZO(CONFRONTA(M4;Date!B2:B1498;0)+1;2;;;"Date")) o =INDIRETTO(INDIRIZZO(CONFRONTA(M4;Date!B2:B1498;0)-1;2;;;"Date"))

o per utilizzare il trascinamento

=INDIRETTO(INDIRIZZO(CONFRONTA($M$4;Date!$B$2:$B$1498;0)-RIF.RIGA()+9;2;;;"Date"))

Ti allego il file
---
pensa bene a quello che cerchi, allega un file di esempio, prova il registratore di macro, imparerai e potresti già avere la soluzione
Post: 6.784
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
04/05/2022 16:24

Ciao Duccio, funziona alla grande, grazie, mi hai tolto un bel mal di testa.

Ciao By Sal (8-D
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 2.596
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Veteran
365
OFFLINE
04/05/2022 17:26

ciao
forse sbaglio ma mi sembra
=SE.ERRORE(INDICE(Date!$B$2:$B$3000;CONFRONTA($M$4;Date!$B$2:$B$3000;0)-RIF.RIGA($A1)+1);"")

mentre se vuoi sistemarle anche in ordine

matriciale ctrl maiuscolo invio
=SE.ERRORE(GRANDE(INDICE(Date!$B$2:$B$3000;PICCOLO(SE(Date!$B$2:$B$3000<=$M$4;Date!$B$2:$B$3000);RIF.RIGA($A2)));RIF.RIGA(A2));"")
[Modificato da federico460 04/05/2022 17:50]
Post: 6.790
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
06/05/2022 16:52

Ciao Federico funzionano tutt'e due anche queste, la seconda con la matriciale non serve in verità perche le date già sono ordinate ma comunque è sempre bene nel caso che mi trovo un elenco non ordinato.

Ciao e Grazie By Sal (8-D

se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 17:49. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com