[RISOLTO] Trovare il valore MAX() in una colonna con una condizione

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
L2018
00lunedì 1 aprile 2024 12:11
Ciao, Buona Pasquetta.

in colonna A ho questi valori:
10
9
8
7
6
5
4
3
2
1

in cella B1 inserisco 7,5
quale potrebbe essere una
formula che mi restituisce il valore, in quella colonna, che sia appena maggiore o uguale a 7,5 ?
in questo caso 8
se scrivo 4,8 la formula dovrebbe restituirmi 5
se scrivo 9 la formula dovrebbe darmi 9
Spero non sia complicato
Grazie al formulista provetto
Marius44
00lunedì 1 aprile 2024 12:43
Ciao Leo
Buona Pasquetta anche a te
Come hai disposto i valori, prova con questa formula
=SCARTO(A1;CONFRONTA(B1;A1:A10;-1)-1;0)

Attenzione che non funziona se i numeri in colonna A sono crescenti.
Ciao,
Mario
scossa
10lunedì 1 aprile 2024 12:45
il primo che mi viene in mente (Excel 2010):
in A2:A11 i numeri
in B1 il valore cercato
In A1 la formula: =MIN(SE.ERRORE(A2:A11/(A2:A11>=B1);"")) matriciale (confermare con ctrl+maiusc+invio)

N.B.: l'ordine dei numeri è indifferente.
L2018
00lunedì 1 aprile 2024 12:52
caspita
GRAZIE ad entrambi
siccome ho messo male i riferimenti devo ricostruirmi lo specchietto e vado golosamente a verificare
oltretutto ho posto la domanda in modo incompleto, perchè la "formula" dovrebbe essere concatenata 5 volte, in modo direi ricorsivo,
e mi tocca creare un file dedicato.
Mi riferisco ad un vecchio problema che avevo posto molto tempo fa e che comunque ho risolto, ma vorrei vedere se con un'unica vostra formula riesco a migliorare il meccanismo
A piu tardi
federico460
00lunedì 1 aprile 2024 14:22
ciao
L2018
solo per didattica

ricordati
1 dato più vicino con tabella in ordine crescente
0 dato esatto
-1dato più vicino con tabella in ordine decrescente

nel tuo caso
=INDICE(A1:A10;CONFRONTA(C1;A1:A10;-1))

poi se vuoi i primi cinque
=INDICE($A$1:$A$10;CONFRONTA($C$1;$A$1:$A$10;-1)+RIF.RIGA($A1)-1)

oppure meglio quella di Marius

=SCARTO(A1;CONFRONTA(C1;A1:A10;-1)-1;0;5)
ma non so se ti rende l'espansione la tua versione
al limite al posto di 5 usi il rif.riga e lo trascini
L2018
00lunedì 1 aprile 2024 15:08
Re:
federico460, 01/04/2024 14:22:

ciao L2018


Ciao Federico
(ricordo bene la differenza fra 0 dato esatto e 1 più vicino, inoltre l'estensione a 5 non mi riguarda in quel modo ma è da riferire a 5 ulteriori colonne, che poi spiegherò).
ringrazio anche te per le formule, senz'altro giuste.
Purtroppo negli ultimi minuti mi sono accorto di aver posto la domanda con un bello strafalcione di errore che sto cercando di capire, perchè ho riesumato un problema vecchio, già risolto, con la speranza di migliorare-semplificare le formule.
In realtà la richiesta:
formula che mi restituisce il valore, in quella colonna, che sia appena maggiore o uguale a 7,5
forse, dico forse, era stata posta bene, ma doveva essere una domanda successiva, nel senso che avrei dovuto PRIMA farne una di inizializzazione e poi passare a questa.
Nel complesso ho combinato un casino che metà basta (detto alla vicentina).
Posso solo tentare di rimediare pubblicando il file reale completo, con già la mia soluzione, e nel quale potreste scrivere le vostre risposte a margine.
In tale file cercherò di scrivere la procedura da seguire.
Per fare tutto ciò mi ci vuole tempo (i passi tardi e lenti del Petrarca) e quindi vi prego di considerare sospesa la discussione.
Mi limito a ripetere lo scopo finale del quesito di molto tempo fa, che ho pazientemente risolto e funziona.
-------------------------
Dato lo sviluppo delle combinazioni del Lotto, peraltro riassunte da una semplice tabella, e dato un numero in input (indice), compreso fra 1 e il massimo delle combinazioni, si vuole arrivare a determinare in 5 caselle i 5 estratti della combinazione.
Ma il primo dei 5 estratti è il risultato di una formula di inizializzazione dovuta ad una necessità matematica.
Gli altri 4 derivano dalla vera formula richiesta.
Scusatemi
L2018
00lunedì 1 aprile 2024 18:16
Ciao
eccomi a pubblicare il file che io feci tempo fa trovando la soluzione, che forse è un po' raffazzonata ma funziona
oggi mi sono incasinato mentalmente e tecnicamente, in pratica mi sono fatto da solo un pesce d'Aprile.
La speranza è che le 3 formule vostre in qualche modo possano sostituire l'accozzaglia dei miei CERCA.X.
La mia soluzione funziona ma ad un certo punto si rivolge ad un riquadro che non dovrebbe esistere (colonna K).
Insomma se vi fa piacere divertitevi.
N.B.
Tutte le soluzioni possibili in VBA ce le ho già.
Saluti
federico460
00lunedì 1 aprile 2024 18:41
ciao
non ho capito una pera😁
questa ti porta il primo dato
poi se spieghi cosa vuoi la completiamo
=INDICE(G1:G1000;CONFRONTA(MAX(SE($B$1:$B$1000<=$B1-$H$1;$B$1:$B$1000));$B$1:$B$1000;0))
L2018
00lunedì 1 aprile 2024 18:54
Ciao
ci avrei quasi giurato che fosse un minestrone poco comprensibile nonostante i miei sforzi per prepararlo
il concetto sarebbe:
stabilire un numero di posizione e partendo dal massimo delle combinazioni ricavare 5 formule che messe in 5 caselle diano i 5 estratti della combinazione il cui indice è quello stabilito.
Detta così sembra pure facile, eppure c'è da perdere la pazienza
io comunque sono riuscito a trovare la soluzione con vari CERCA.X.
e siccome 5 formule ulteriori non è che cambino le cose, sinceramente preferisco considerare comunque chiusa o risolta la discussione
Oltretutto la prima formula dovrebbe inizializzare la procedura, spiegare tutto per iscritto non mi è facile.
In ogni caso le vostre formule sono comunque valide, vedrò se riesco ad adattarle.
Grazie
federico460
00lunedì 1 aprile 2024 18:57
ciao
guarda che è solo un indice confronta
non un minestrone😀
il max() è quello che ti permette trovare il dato esatto che cerchi
L2018
00lunedì 1 aprile 2024 19:04
Re:
federico460, 01/04/2024 18:57:

ciao
guarda che è solo un indice confronta
non un minestrone😀
il max() è quello che ti permette trovare il dato esatto che cerchi



aspetta, il minestrone è il MIO tabellone, troppo incasinato, lo ammetto
Le vostre formule, TUTTE, funzionano, ma non riesco a dire tutto.
Per esempio la PRIMA formula dovrebbe dare 1, e le altre 4, simili, dovrebbero dare 12,44,83,90, su questo non ho dubbi, dato che il numero di posizione imposto sia 1.000.000.
cioè nello sviluppo lessicografico del Lotto la combinazione che occupa il 1.000.000 mo posto è
1-12-44-83-90
con gli Indice-Confronta si tratterebbe di trovare quei 5 numeri
federico460
00lunedì 1 aprile 2024 19:15
ciao
5 numeri 5 formule?
uno per riga o per colonna
L2018
00lunedì 1 aprile 2024 19:23
Re:
federico460, 01/04/2024 19:15:

ciao
5 numeri 5 formule?
uno per riga o per colonna



sì, esatto: 5 formule piu o meno simili danno i 5 numeri, in riga o colonna che sia
stamattina mi sono intrecciato da solo pensando ingenuamente di avere 5 formule da concatenare che dessero un solo risultato, forse ero ubriaco
tra le 5 formule la prima forse è un po' diversa perche deve inizializzare la procedura partendo dal MASSIMO DIMINUITO della posizione.
Questo ho tentato di scrivere nelle istruzioncelle color rosatello del file

federico460
00lunedì 1 aprile 2024 19:26
comunque la tua tabella da H a J
è la miglior cosa che puoi avere
altrimenti la formula unica si può fare ma diventa stratosferica
L2018
00lunedì 1 aprile 2024 19:30
Re:
federico460, 01/04/2024 19:26:

comunque la tua tabella da H a J
è la miglior cosa che puoi avere
altrimenti la formula unica si può fare ma diventa stratosferica



Fede, lo so che la mia H-J va bene, ma abbiamo appena detto che non ha senso una ipotetica formula unica e stratosferica, proprio perchè vogliamo i 5 estratti, distinti.

alla fine tutto poteva ridursi a usare formule diverse dai CERCA.X col pretesto di rendere il file retro-compatibile, ma non mi interessa, non devo distribuirlo, va benissimo così.
Grazie dell'impegno
federico460
00lunedì 1 aprile 2024 19:38
ciao
sto usando il vintage
questa rende il 12
=INDICE($G$1:$G$10000;CONFRONTA(MAX(SE(C$1:$C$10000<=$B$1-$H$1-INDICE($B$1:$B$10000;CONFRONTA(MAX(SE($B$1:$B$10000<=$B$1-$H$1;$B$1:$B$10000));$B$1:$B$10000;0));$B$1:$B$10000));$B$1:$B$10000;0))
L2018
00lunedì 1 aprile 2024 19:42
Re:
federico460, 01/04/2024 19:38:

ciao
sto usando il vintage
questa rende il 12
=INDICE($G$1:$G$10000;CONFRONTA(MAX(SE(C$1:$C$10000<=$B$1-$H$1-INDICE($B$1:$B$10000;CONFRONTA(MAX(SE($B$1:$B$10000<=$B$1-$H$1;$B$1:$B$10000));$B$1:$B$10000;0));$B$1:$B$10000));$B$1:$B$10000;0))



no no, ti prego, lascia perdere, mi tengo quello che ho, oltretutto la mia ora libera è appena scaduta, accidenti alle incombenze che mi impediscono tutto



L2018
00martedì 2 aprile 2024 10:27
Ciao a tutti
in questa discussione, creata l'altro ieri, mi sono accorto di aver creato un vero disordine, anche il file allegato è disordinato.
Mi permettete di rifare la domanda ? Copincollo la domanda in modo corretto.

in colonna A ho questi valori:
10
9
8
7
6
5
4
3
2
1

in cella B1 inserisco 7,5
quale potrebbe essere una
formula che mi restituisce il valore più alto, in quella colonna, che sia appena MINORE o UGUALE a 7,5 ?
in questo caso 7
se scrivo 4,8 la formula dovrebbe restituirmi 4
se scrivo 9 la formula dovrebbe darmi 9
Grazie, perdonate
scossa
00martedì 2 aprile 2024 10:54
=MAX(SE.ERRORE(A2:A11/(A2:A11<=B1);""))
L2018
00martedì 2 aprile 2024 10:56
Re:
scossa (Scossa.vr), 02/04/2024 10:54:

=MAX(SE.ERRORE(A2:A11/(A2:A11<=B1);""))



grazie Scossa, vado a verificare, con calma
scossa
00martedì 2 aprile 2024 10:58
Come la precedente, è matriciale (confermare con ctrl+maiusc+invio).
L2018
00martedì 2 aprile 2024 11:02
Re:
scossa (Scossa.vr), 02/04/2024 10:58:

Come la precedente, è matriciale (confermare con ctrl+maiusc+invio).


sì sì, lo avevo pensato, FUNZIONA
Ora, nel pomeriggio, cerco di applicare al file in modo organico, in modo da poter pubblicare, se vi interessa
Molte Grazie Scossa


L2018
00martedì 2 aprile 2024 14:09
Bene
grazie alla collaborazione di Marius44, Federico460 e Scossa sono riuscito a sistemare e pulire il file di cui si parlava.
Il file si occupa di restituire una combinazione fornendogli un indice di posizione, e viceversa.
ci sono 3 sezioni
La prima restituisce la combinazione richiamata da un indice di posizione, usando le formule CERCA.X
La seconda restituisce la combinazione richiamata da un indice di posizione, usando formule diverse.
Nella terza sezione, inserendo i numeri verdi di una combinazione si ottiene al contrario l'indice di posizione di quella combinazione.
Si parla di Lotto, ma con un po' di impazzimento il file puo' essere tradotto in MillionDay o Enalotto.
Ciao
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 13:29.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com