Stellar Blade Un'esclusiva PS5 che sta facendo discutere per l'eccessiva bellezza della protagonista. Vieni a parlarne su Award & Oscar!
 
Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Cerca.verticale e ìdintorni'

Ultimo Aggiornamento: 13/05/2024 19:56
Post: 136
Registrato il: 07/03/2008
Città: MILANO
Età: 30
Utente Junior
2016 Pro Plus 2016
OFFLINE
13/05/2024 11:10

Buongiorno, avrei bisogno di una mano per risolvere il seguente problema.
Uso i riferimenti del file che allego: Nel 'Foglio1' ho una tabella in cui trascrivo, per ogni nominativo ore di docenza ed eventuale codocenza. Nel 'Foglio2' voglio riportare, ogni volta che inserisco un nominativo nella cella B2, in D2 il numero di ore di docenza e in F2 il numero di ore di codocenza relative allo stesso nominativo (ogni nominativo riporta questo valore subito nella cella sottostante). In D2 ho inserito la formula =CERCA.VERT(B2;Foglio1!A1:B20;2;FALSO). Che formula posso usare in F2 per ricavare la codocenza del nominativo in B2? Grazie
Excel 2007 e 2010
Post: 3.390
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Master
365
ONLINE
13/05/2024 12:38

ciao
per la formula ho usato il 2007 così non avrai problemi
B2 da tirare in basso
=SE(VAL.ERRORE(INDICE(Foglio1!$A$1:$A$1000;PICCOLO(SE((Foglio1!$A$1:$A$1000<>"codocenza")*(Foglio1!$A$1:$A$1000<>"");RIF.RIGA($A$1:$A$1000));RIF.RIGA(A1))));"";INDICE(Foglio1!$A$1:$A$1000;PICCOLO(SE((Foglio1!$A$1:$A$1000<>"codocenza")*(Foglio1!$A$1:$A$1000<>"");RIF.RIGA($A$1:$A$1000));RIF.RIGA(A1))))

D2
=SE(B2<>"";MATR.SOMMA.PRODOTTO((Foglio1!$A$1:$A$1000=$B2)*Foglio1!$B$1:$B$1000);"")
F2
=SE($B2<>"";MATR.SOMMA.PRODOTTO((Foglio1!$A$1:$A$1000=$B2)*Foglio1!$B$2:$B$1001);"")

se vuoi usare indice confronta al posto di cerca verticale ti puoi spostare di una riga in basso

F2
=INDICE(Foglio1!$B$1:$B$1000;CONFRONTA($B2;Foglio1!$A$1:$A$1000;0)+1)
Post: 136
Registrato il: 07/03/2008
Città: MILANO
Età: 30
Utente Junior
2016 Pro Plus 2016
OFFLINE
13/05/2024 13:32

Perfetto Fede! Userò INDICE. Grazie🙏
Excel 2007 e 2010
Post: 137
Registrato il: 07/03/2008
Città: MILANO
Età: 30
Utente Junior
2016 Pro Plus 2016
OFFLINE
13/05/2024 13:46

Fede, posso chiederti ancora un aiuto, se puoi?
Se volessi che nella tua formula
=INDICE(Foglio1!$B$1:$B$1000;CONFRONTA($B2;Foglio1!$A$1:$A$1000;0)+1)
il riferimento al foglio1! fosse il nome del mese e che ogni volta la formula andasse a leggere nel foglio con il nome del mese in corso. Per chiarezza: fermo restando il Foglio2, esistono altri dodici fogli che hanno il nome di ogni mese. Vorrei che la formula si adattasse al mese in corso. Tieni presente che nel foglio2 esiste un campo con la formula =OGGI(). Forse si potrebbe prelevare da lì il nome del foglio da cui leggere i dati?...
Grazie di tutto
Excel 2007 e 2010
Post: 3.391
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Master
365
ONLINE
13/05/2024 15:11

Ciao
in B1
=MAIUSC(TESTO(MESE(OGGI())*29;"MMMM"))
in F2
=INDICE(INDIRETTO($B$1&"!$B$1:$B$1000");CONFRONTA($B2;INDIRETTO($B$1&"!$A$1:$A$1000");0)+1)



nome foglio io ho usato il maiuscolo ma puoi scriverlo minuscolo e levare dalla formula MAIUSC
[Modificato da federico460 13/05/2024 15:13]
Post: 138
Registrato il: 07/03/2008
Città: MILANO
Età: 30
Utente Junior
2016 Pro Plus 2016
OFFLINE
13/05/2024 17:36

Grazie ai tuoi consigli ho anche applicato la formula alla casella D2 (semplicemente eliminando "+1" in fondo alla formula. Ma vorrei chiederti un'ultima cosa.
Stavo cercando di applicare le tue formule per prelevare un altro dato presente sempre nel foglio[mese] ma in colonna I. Ho, quindi, inserito in D3 la formula:
=INDICE(INDIRETTO($B$1&"!$F$1':$F$20");CONFRONTA($B2;INDIRETTO($B$1&"!$A$1:$A$20");0))
ma, come vedi, mi dà errore. Dove sbaglio?
P.S.: ho eliminato il foglio1 che, in realtà, non esiste, ma assume di volta in volta il nome [mese]. Allego il nuovo file di esempio
Excel 2007 e 2010
Post: 3.392
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Master
365
ONLINE
13/05/2024 19:02

ciao
hai allegato lo stesso file di prima
non vedo le formule nuove e il dato in B1
ma se devi prelevare in colonna I devi cambiare l'indice
=INDICE(INDIRETTO($B$1&"!$I$1':$I$20");CONFRONTA($B2;INDIRETTO($B$1&"!$A$1:$A$20");0))
[Modificato da federico460 13/05/2024 19:04]
Post: 139
Registrato il: 07/03/2008
Città: MILANO
Età: 30
Utente Junior
2016 Pro Plus 2016
OFFLINE
13/05/2024 19:14

Scusa Fede, rimando l'allegato, perchè così la formula dà sempre errore.
Excel 2007 e 2010
Post: 3.393
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Master
365
ONLINE
13/05/2024 19:27

ciao
guarda che funziona
=SE(B2<>"";INDICE(INDIRETTO($B$1&"!$F$1:$F$1000");CONFRONTA($B2;INDIRETTO($B$1&"!$A$1:$A$1000");0));"")

ma una volta messa in D2 la devi trascinare in basso

trovato l'errore è una virgoletta
nel primo indiretto
=INDICE(INDIRETTO($B$1&"!$F$1':$F$20");CONFRONTA($B2;INDIRETTO($B$1&"!$A$1:$A$20");0))
[Modificato da federico460 13/05/2024 19:34]
Post: 140
Registrato il: 07/03/2008
Città: MILANO
Età: 30
Utente Junior
2016 Pro Plus 2016
OFFLINE
13/05/2024 19:56

😱... è vero! Grazie moltissime Fede.
Purtroppo non posso dirti "a buon rendere" perchè, come vedi, sono piuttosto 'sprovveduto'!
Di nuovo grazie tante!
Excel 2007 e 2010
Vota: 15MediaObject5,00110 1
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 20:57. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com