[Risolto] considerare sempre la prima cella di più matrici

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
Kripsnark
Messaggi: 14
Iscritto il: giovedì 1 agosto 2019, 0:31

[Risolto] considerare sempre la prima cella di più matrici

Messaggio da Kripsnark »

Salve a tutti,

ho una serie di matrici (3x3 nell'esempio), vorrei un modo per trovare automaticamente il secondo valore più grande delle celle sempre nella stessa posizione all'interno delle matrici, a lato ho inserito i risultati attesi trovati in modo "meccanico", ossia andando a scegliere ogni singola cella interessata.
In parole povere, ho bisogno di una funzione che vada a considerarmi contemporaneamente 1 cella ogni serie di celle.

Grazie, confido nella vostra capacità ed esperienza.
Allegati
Esempio.ods
(9.64 KiB) Scaricato 126 volte
Ultima modifica di Kripsnark il martedì 3 settembre 2019, 23:37, modificato 1 volta in totale.
Kripsnark
Windows 10 Home: OpenOffice 4.1.2
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: considerare sempre la prima cella di più matrici

Messaggio da gioh66 »

Buondì! Con una colonna d'appoggio, che io ho messo nella colonna A ho indicato la posizione di ogni riga delle varie matrici con 1, 2, 3.
Poi in B22 ho messo la seguente formula matriciale, da copiare nella cella e da confermare con la combinazione ctrl+maiuscolo+invio e non col solo invio

Codice: Seleziona tutto

=GRANDE(INDICE(INDICE(B$3:B$15;PICCOLO(SE($A$3:$A$15=RIF.RIGA(A1);RIF.RIGA($A$3:$A$15)-2);RIF.RIGA($A$1:$A$3));0));2)
Una volta inserita la formula copiare a destra e in basso.
Allegati
secondo valore più grande matrici con valori non consecutivi.ods
(9.85 KiB) Scaricato 110 volte
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: considerare sempre la prima cella di più matrici

Messaggio da gioh66 »

Ti ripropongo file e formula senza colonna d'appoggio. In B22 da confermare matriciale con la combinazione ctrl+maiuscolo+invio e non col solo invio e da copiare e incollare a destra e in basso, metti

Codice: Seleziona tutto

=SE(VAL.ERRORE(GRANDE(INDICE(INDICE(B$3:B$15;PICCOLO(SE(RESTO(RIF.RIGA($A$3:$A$15)-2;5)=RIF.RIGA(A1);RIF.RIGA($A$3:$A$15)-2);RIF.RIGA($A$1:$A$3));0));2));"";GRANDE(INDICE(INDICE(B$3:B$15;PICCOLO(SE(RESTO(RIF.RIGA($A$3:$A$15)-2;5)=RIF.RIGA(A1);RIF.RIGA($A$3:$A$15)-2);RIF.RIGA($A$1:$A$3));0));2))
Ps.: si può accorciare un po' la formula togliendo il doppio INDICE (frutto di un refuso delle mie prove)

Codice: Seleziona tutto

=SE(VAL.ERRORE(GRANDE(INDICE(B$3:B$15;PICCOLO(SE(RESTO(RIF.RIGA($A$3:$A$15)-2;5)=RIF.RIGA(A1);RIF.RIGA($A$3:$A$15)-2);RIF.RIGA($A$1:$A$3)));2));"";GRANDE(INDICE(B$3:B$15;PICCOLO(SE(RESTO(RIF.RIGA($A$3:$A$15)-2;5)=RIF.RIGA(A1);RIF.RIGA($A$3:$A$15)-2);RIF.RIGA($A$1:$A$3)));2))
Allegati
secondo valore più grande matrici con valori non consecutivi(bis).ods
(10.57 KiB) Scaricato 111 volte
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Kripsnark
Messaggi: 14
Iscritto il: giovedì 1 agosto 2019, 0:31

Re: considerare sempre la prima cella di più matrici

Messaggio da Kripsnark »

ti ringrazio, ma voglio mettervi nella mia situazione perchè non ho ancora le capacità per sviluppare la formula che mi hai gentilmente proposto nel mio caso.

Ho un elenco di 40 matrici tutte della stessa forma in più fogli. In un ulteriore foglio devo riportare in ordine decrescente i valori che si trovano sempre nella stessa posizione matriciale, facendo in modo che cambiando il valore in F1 (da AA in BB nell'esempio seguente) i valori si modifichino in maniera automatica.

Ci tengo a sottolineare che le matrici nei primi fogli non possono essere modificate o ordinate in modo differente.
Allegati
Esempio.ods
(18.78 KiB) Scaricato 104 volte
Kripsnark
Windows 10 Home: OpenOffice 4.1.2
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: considerare sempre la prima cella di più matrici

Messaggio da gioh66 »

Ok ma visto che questo foglio ha una struttura diversa dal primo che risultato ti aspetti adesso? Non capisco quei Piccolo 40, Piccolo 39 ecc...
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Kripsnark
Messaggi: 14
Iscritto il: giovedì 1 agosto 2019, 0:31

Re: considerare sempre la prima cella di più matrici

Messaggio da Kripsnark »

Per chiarezza volevo indicare la funzione piccolo, ossia che il valore minore fosse spostato a destra e si arrivasse ad avere il limite massimo sulla sinistra
Kripsnark
Windows 10 Home: OpenOffice 4.1.2
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: considerare sempre la prima cella di più matrici

Messaggio da gioh66 »

Scusami ma non ho capito. Non potresti postare un file con il risultato che ti aspetti messo a mano, come hai fatto col primo allegato?
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: considerare sempre la prima cella di più matrici

Messaggio da gioh66 »

Mmmmh! Vediamo se ho capito. Allora nella cella F1 ho messo un menù a tendina col nome dei fogli. Poi in E12, da copiare e incollare a destra, ho messo la seguente formula matriciale (ctrl+maiuscolo+invio per confermarla)

Codice: Seleziona tutto

=PICCOLO(INDICE(INDIRETTO($F$1&"!D2:D400");PICCOLO(SE(INDIRETTO($F$1&"!C2:C400")=$A11;RIF.RIGA(INDIRETTO($F$1&"!D2:D400"))-1);RIF.RIGA($A$1:$A$40)));COLONNE(E$1:$AR$1))
e in E17

Codice: Seleziona tutto

=PICCOLO(INDICE(INDIRETTO($F$1&"!D2:D400");PICCOLO(SE(INDIRETTO($F$1&"!C2:C400")=$A16;RIF.RIGA(INDIRETTO($F$1&"!D2:D400"))-1);RIF.RIGA($A$1:$A$40)));COLONNE(E$1:$AR$1))
Allegati
Esempio (bis).ods
(19.46 KiB) Scaricato 104 volte
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Kripsnark
Messaggi: 14
Iscritto il: giovedì 1 agosto 2019, 0:31

Re: considerare sempre la prima cella di più matrici

Messaggio da Kripsnark »

Hai capito perfettamente, scusa se con le mie spiegazioni scarse ti ho reso il compito più difficile.

grazie mille, ancora una volta mi sei stato di grande aiuto. Complimenti!
Kripsnark
Windows 10 Home: OpenOffice 4.1.2
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: [Risolto] considerare sempre la prima cella di più matri

Messaggio da gioh66 »

Di nulla! Grazie a te del riscontro. :super:
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Rispondi