Luigi's Mansion 2 HD Vieni ad acchiappare i fantasmi con noi su Award & Oscar!
 
Previous page | 1 | Next page
Vote | Print | Email Notification    
Author

[RISOLTO] Vba Macro con formattazione condizionale complessa con piu' fattori

Last Update: 7/3/2024 8:43 AM
Post: 11
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/14/2024 8:28 AM
 
Modify
 
Delete
 
Quote

Ciao a tutti,

ho un problema complesso da risolvere che non riesco a fare in autonomia.

Vi allego file di riferimento

Il foglio "calendario turni" si riferisce all'inserimento a calendario di tutti i turni dei medici e della tipologia del turno
nel foglio "bti" che poi verrà replicato per tutti gli altri, c'è il dettaglio del singolo medico e qualche report.

le mie due necessita sono le seguenti:
1- Se nel foglio "bti", colonna "I", io inserisco un valore come ferie (I14), nel foglio calendario turni ho la necessità che in corrispondenza di quel giorno (righe 17,18,19), se io inserissi lo stesso medico con un turno, le celle si colorassero di altro colore (giallo). Quindi in questo esempio le celle C17, I19 e O19 dovrebbero essere colorate. La stessa formattazione deve essere fatta per le seguenti voci (ferie, malattia, corso6, corso8, doc, doc$, assegn, gae, apm6$, apm12$) perchè il concetto è lo stesso, restano esclusi solo i valori (extra1,2,3,4) cioè che in quel giorno non si debba inserire a quel medico altro turno
NB. Il foglio successivo "pam" si riferisce ad altro medico, quindi la regola deve valere anche per lui, si devono incastrare a vicenda, i medici sono una ventina
2- Se nel foglio "calendario turni" inserisco un turno notte ("TIN"), il giorno successivo, su ogni postazione (colonne), se inserissi lo stesso medico dovrei avere le celle colorate (rosso), nel caso specifico la cella O13 o I40 per esempio dovrebbero essere colorate

E' fattibile? come posso gestirlo?

Vi ringrazio molto ma per me questo è veramente complesso, non ci ho mai avuto a che fare

Grazie di cuore!
Cristiano
Post: 3,414
Registered in: 10/10/2013
Location: VICENZA
Age: 69
Master User
365
OFFLINE
6/15/2024 3:48 PM
 
Modify
 
Delete
 
Quote

ciao
senti hai il 365 o il 2021
perchè cambia tutto

comunque ho creato una tabella ( poi la puoi spostare dove vuoi
e formattato
=LET(H;INDICE($W$8:$AI$100;RIF.RIGA(I8)-7;CONFRONTA(I8;$W$7:$AI$7;0));E(H<>0;SINISTRA(H;5)<>"Extra"))

per la tabella
=MATR.TRASPOSTA(UNICI(A.COL(FILTRO(C8:R100;C7:R7="MEDICO");3)))

=SE.ERRORE(INDIRETTO(W$7&"!I5:I97");"")
[Edited by federico460 6/15/2024 4:40 PM]
Post: 11
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/17/2024 8:40 AM
 
Modify
 
Delete
 
Quote

Ciao Federico,

intanto grazie!!! vedo che funziona!! è una grande idea!

Ho solo un piccolo problema da gestire e ti chiedo la seconda parte di problema che non sono riuscito a fare:

1-la soluzione è perfetta, c'è solo un punto che mi lascia un dubbio, in quanto poi il file sarà compilato da più personale. Nel foglio del medico ho visto che giustamente tu hai tolto l'unione celle per far leggere la formattazione nel calendario e riportare il valore in tabella, infatti se io inserisco ad ora le ferie un giorno nel turno 14-20, e nel calendario inserisco lo stesso medico dalle 8-14, non viene evidenziato.
E' possibile fare in modo che nel foglio medico se inserisco la desiderata (ferie), mi vale per tutte e 3 le celle?

2-Nel calendario, avrei bisogno che se io inserissi il turno notte di un medico (valore "tin"), tutto il giorno successivo, se inserissi nuovamente un qualsiasi turno a quel medico in qualsiasi colonna si colorasse di rosso

è fattibile?

ti riallego il file

Grazie di cuore, mi stai risolvendo un grande problema

Cristiano

Post: 7,622
Registered in: 11/14/2004
Master User
Office 2019
OFFLINE
6/17/2024 11:42 AM
 
Modify
 
Delete
 
Quote

Ciao mi sono fatto un affacciata di pochi minuti, non posso stare al PC, oltre al problema che ti ha risolto egregiamente Federico che Saluto,

puoi ovviare al problema che hai detto delle celle unite che Federico ha tolto, mettendo la stessa data nelle 3 celle e poi nascondere i caratteri nella prima e terza cella lasciando visibile solo quella centrale, cosi sembra che sia una cella unica, prova e fai sapere.

per nascondere i caratteri in modo che se si cambia colore non si vedono, seleziona le 2 celle e nel formato Celle scegli personalizzato e sotto "Tipo:" dove vedi scritto "Standard" metti tre Punto e virgola cosi ;;; e confermi ora quelle celle i caratteri non saranno più visibili.

Ciao By Sal (8-D
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 12
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/17/2024 12:49 PM
 
Modify
 
Delete
 
Quote

Ciao Sal

se ho capito bene tu dici di copiare il valore che inserisco su tutte e 3 le celle del foglio del medico e poi da formato celle far "sparire" il testo con i ;;;, giusto?

Potrebbe essere un'ottima idea, sperando che chi usa il file si ricordi tassativamente di copiare il testo.

Non c'è un modo automatico immagino giusto?

Per l'ultimo quesito, mi potete aiutare?

Nel foglio calendario turni, avrei bisogno che se io inserissi il turno notte di un medico (valore "tin"), tutto il giorno successivo, se inserissi nuovamente un qualsiasi turno a quel medico in qualsiasi colonna si colorasse di rosso la casella del medico

Siete fantastici!!

Grazie!
Cristiano
Post: 3,416
Registered in: 10/10/2013
Location: VICENZA
Age: 69
Master User
365
OFFLINE
6/17/2024 1:28 PM
 
Modify
 
Delete
 
Quote

ciao
le celle unite sono un incubo su excel
le ho divise perchè lavoro su righe
e visto che a sinistra ci sono gli orari basta usare la convalida nell'orario che
il richiedente fa quel giorno.
non vedo la difficoltà
Post: 13
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/17/2024 2:01 PM
 
Modify
 
Delete
 
Quote

Ciao Federico,

tranquillo è perfetto così e lo gestiamo con la convalida

Riesci solo a verificarmi l'altro punto che ci sto perdendo la testa e non ci riesco?
Se riesco a sistemare anche quello sarebbe fantastico e posso chiudere tutto!

Grazie di cuore
Cristiano
Post: 3,417
Registered in: 10/10/2013
Location: VICENZA
Age: 69
Master User
365
OFFLINE
6/18/2024 11:55 AM
 
Modify
 
Delete
 
Quote

ciao
celle unite maledette

formula
=VAL.NUMERO(CONFRONTA(C11&"TIN";SCARTO(C$1;CERCA(2;1/($B$11:$B11=$B$8);RIF.RIGA($B$8:$B$100))-1;;3)&SCARTO(D$1;CERCA(2;1/($B$11:$B11=$B$8);RIF.RIGA($B$8:$B$100))-1;;3);0))
si applica a
=$C$11:$C$100;$F$11:$F$100;$I$11:$I$100;$L$11:$L$100;$O$11:$O$100;$R$11:$R$100
Post: 14
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/18/2024 2:12 PM
 
Modify
 
Delete
 
Quote

Ciao Federico

grazie! funziona!

c'è solo un piccolo problemino, che spero sia risolvibile.

Come ti mostro in foto, il rosso viene fuori correttamente inserendo un turno dello stesso medico il giorno successivo ma nella stessa colonna, dovrebbe venire rosso in qualsiasi colonna io vada ad inserire lo stesso medico il giorno successivo, anche dove ti ho evidenziato io



Si può gestire?

Grazie mille per il fantastico aiuto!

Cristiano
Post: 3,418
Registered in: 10/10/2013
Location: VICENZA
Age: 69
Master User
365
OFFLINE
6/18/2024 4:04 PM
 
Modify
 
Delete
 
Quote

Ciao
sostituisci la formula con questa
=VAL.NUMERO(LET(COL;ESCLUDI(A.CAPO.RIGA(A.RIGA(SCARTO($C$1;CERCA(2;1/($B$11:$B11=$B$8);RIF.RIGA($B$8:$B$100))-1;;3;18));3);;-1);CONFRONTA(C11&"TIN";(SCEGLI.COL(COL;1))&(SCEGLI.COL(COL;2));0)))

e fai delle prove

se non avete il 365 neanche provarla
[Edited by federico460 6/18/2024 4:25 PM]
Post: 15
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/19/2024 8:08 AM
 
Modify
 
Delete
 
Quote

Ciao Federico,
funziona perfettamente!!!

non so davvero come ringraziarti!!

quindi se non ci fosse il 365 non funziona giusto?

grazie grazie grazie di cuore!

se posso sdebitarmi in qualche modo lo farei volentieri!

a presto!
Cristiano
Post: 3,419
Registered in: 10/10/2013
Location: VICENZA
Age: 69
Master User
365
OFFLINE
6/19/2024 11:05 AM
 
Modify
 
Delete
 
Quote

ciao
si solo365 forse il 2021 ma non ne sono certo.
visto che è risolto
se chiudi la discussione ci fai un favore

detta tra noi due mi sono impuntato sul complicato
ma è una formattazione semplice da fare se non usi le celle unite per i giorni
e la usi in tutte le versioni

ti basta
=MATR.SOMMA.PRODOTTO(($A$8:$A$100=$A11-1)*($C$8:$R$100=C11)*($D$8:$S$100="TIN"))
si applica alle solite colonne
=$C$11:$C$100;$F$11:$F$100;$I$11:$I$100;$L$11:$L$100;$O$11:$O$100;$R$11:$R$100

guarda basta colorare il giorno dello stesso colore della cella e ne vedi 1 solo
[Edited by federico460 6/19/2024 11:24 AM]
Post: 16
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/19/2024 1:03 PM
 
Modify
 
Delete
 
Quote

Perfetto!

fantastico davvero!!

mi hai risolto un grandissimo problema!

ma la discussione è chiusa? oppure come faccio a farlo?

grazie davvero di cuore

Cristiano
Post: 3,420
Registered in: 10/10/2013
Location: VICENZA
Age: 69
Master User
365
OFFLINE
6/19/2024 1:24 PM
 
Modify
 
Delete
 
Quote

ciao
bene hai messo risolto
io ti consiglio la seconda formula e l'eliminazione delle celle unite
è più facile da gestire
Post: 17
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
6/19/2024 2:08 PM
 
Modify
 
Delete
 
Quote

Grazie davvero per tutto!

a presto!
Cristiano
Post: 1,456
Registered in: 4/2/2018
Location: PESCARA
Age: 76
Veteran User
EXCEL 2016 - SPREAD32
ONLINE
6/19/2024 2:12 PM
 
Modify
 
Delete
 
Quote

Re:
Ciao, il RISOLTO l'ho messo io come Moderatore

Purtroppo mi sembra che gli utenti possano solo segnalare che il problema è risolto.
[Edited by L2018 6/19/2024 2:21 PM]

LEO
https://t.me/LordBrum
Post: 3,421
Registered in: 10/10/2013
Location: VICENZA
Age: 69
Master User
365
OFFLINE
6/19/2024 2:28 PM
 
Modify
 
Delete
 
Quote

ciao
Leo
ma allora ci spii😂
Post: 1,457
Registered in: 4/2/2018
Location: PESCARA
Age: 76
Veteran User
EXCEL 2016 - SPREAD32
ONLINE
6/19/2024 2:31 PM
 
Modify
 
Delete
 
Quote

Re:
federico460, 19/06/2024 14:28:

ciao
Leo
ma allora ci spii😂



ahahah, in effetti ho un'anima poliziesca... [SM=p4449749]

LEO
https://t.me/LordBrum
Post: 18
Registered in: 7/11/2020
Age: 42
Junior User
microsoft 365 versione 2021
OFFLINE
7/3/2024 8:43 AM
 
Modify
 
Delete
 
Quote

Ciao Federico

ti chiedo ancora una piccola mano,

è tutto perfetto ma non ho pensato ad un aspetto importante,

noi abbiamo fatto in modo che se un medico ha un turno di notte, e il giorno dopo gli venga inserito un turno si colori di rosso ed è perfetto,

avrei necessità che se io inserisco ad un medico un turno di mattina o pomeriggio (tim o tip), e nello stesso giorno in qualsiasi postazione gli inserissi un turno di notte, si colorasse anche in questo caso

è possibile?

grazie!
Cristiano
Vote: 15MediaObject5.00119 1
Admin Thread: | Close | Move | Delete | Modify | Email Notification Previous page | 1 | Next page
New Thread
 | 
Reply
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Users | Search | Log In | Register | Admin
Tutti gli orari sono GMT+01:00. Adesso sono le 2:22 PM. : Printable | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com