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

Copiare celle su foglio 2 a condizione

Ultimo Aggiornamento: 11/09/2017 17:16
Post: 1
Registrato il: 09/09/2017
Città: SASSARI
Età: 64
Utente Junior
2007
OFFLINE
10/09/2017 16:05

Buona domenica,
primo post su questo forum, che peraltro già conosco. Saluto tutti.
Vorrei inserire, in fase di caricamento del foglio 2, un codice (prevedo molto articolato e, confesso, non alla mia portata in fase di prima realizzazione) che permetta di automatizzare ciò che, nell'allegato file di esempio, ho realizzato manualmente per mostrare il risultato finale che mi piacerebbe ottenere e mi aiuterebbe non poco.
In pratica imposto il turno mensile come appare nella parte sinistra del foglio 1 mettendo le lettere SN, M, P, N a fianco di ciascun nome. Questo permette di realizzare un prospetto stampabile su unico foglio.
Sul foglio 2 vorrei ottenere il riporto automatico dei nominativi giorno per giorno inseriti in uno schema fisso che prevede 4 celle sotto la voce smonto, 6 celle sotto la voce mattino, 5 celle sotto la voce pomeriggio, 4 celle sotto la voce notte. Per mantenere compatto il foglio 2 sarebbe sufficiente inserire i primi 8 caratteri del nome (come nell'esempio ho fatto con SEMPRONIO utilizzando SINISTRA cella;8) Ciò per fare in modo che, in fase di compilazione/modifica del turno mi renda conto immediatamente di quali e quante persone sono presenti in ciascun turno evitando di contare le singole lettere in ciascuna colonna spesso sbagliando.
Nella parte destra del foglio 1 ho utilizzato la funzione SE giusto per compilare il foglio 2, ma chiaramente è impensabile procedere così in quanto si farebbe prima a farlo manualmente.
Mi scuso per la lunga divagazione e ringrazio già da ora per eventuali contributi.
Post: 571
Registrato il: 02/08/2015
Utente Senior
Excel 2013
OFFLINE
11/09/2017 00:22

Ciao,
puoi fare tutto con delle formule matrciali (quindi da confermare con la combinazione di tasti CTRL + MAIUSC + INVIO).
Dalla versione 2010 di excel si può usare la funzione AGGREGA che evita di usare la forma matriciale ma personalmente non la ritendo "infallibile".

Quindi, nel foglio2, nella cella A3 (da copiare poi fino alla cella F6) inserirai la formula matriciale:
=SE.ERRORE(SINISTRA(INDICE(Foglio1!$A$1:$A$14;PICCOLO(SE.ERRORE(RIF.RIGA(Foglio1!$A$2:$A$14)/(INDICE(Foglio1!$B$2:$AE$14;;RIF.COLONNA(A1))="SN");"");RIF.RIGA(A1)));8);"")

Nella cella A8
Quindi, nel foglio2, nella cella A8 (da copiare poi fino alla cella F13) inserirai la stessa formula matriciale, sostituendo "SN" con "M";
=SE.ERRORE(SINISTRA(INDICE(Foglio1!$A$1:$A$14;PICCOLO(SE.ERRORE(RIF.RIGA(Foglio1!$A$2:$A$14)/(INDICE(Foglio1!$B$2:$AE$14;;RIF.COLONNA(A1))="M");"");RIF.RIGA(A1)));8);"")

e cosi via per i restanti due turni.

Ti riallego il file.

Ciao
Tore


"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Post: 1.608
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
11/09/2017 10:01

Tore!!! quella formula è un capolavoro!!

carissimi saluti



Domenico
Win 10 - Excel 2016
Post: 572
Registrato il: 02/08/2015
Utente Senior
Excel 2013
OFFLINE
11/09/2017 15:32

Re:
dodo47, 11/09/2017 10.01:

Tore!!! quella formula è un capolavoro!!

carissimi saluti







Ciao Domenico,
[SM=x423017]


"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Post: 1
Registrato il: 09/09/2017
Città: SASSARI
Età: 64
Utente Junior
2007
OFFLINE
11/09/2017 17:16

Re:
dodo47, 11/09/2017 10.01:

Tore!!! quella formula è un capolavoro!!






Un grazie di cuore.

Saluti
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 02:42. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com