Controllo orario di lavoro

Non sapete dove scrivere? Scrivete qui!
Regole del forum
Solo richieste di aiuto. Per saluti e presentazioni utilizzate il forum Discussioni Generali e Presentazioni.
Rispondi
linfo
Messaggi: 11
Iscritto il: venerdì 16 marzo 2012, 13:33

Controllo orario di lavoro

Messaggio da linfo »

Buongiorno, sono un utilizzatore di openoffice per la formulazione di un orario di lavoro in versione tabellata.
Avrei bisogno di chiedervi come poter creare una (o più) macro che eseguano dei controlli finali in automatico, dopo la compilazione dello stesso orario (a mano).
Non mastico il visual basic, cosicchè le interazioni che potrei fare sul codice sorgente sono pressochè nulle...

Fondamentalmente avrei bisogno di eseguire alcuni controlli finali come in esempio...
Ogni lettera è una persona, nelle colonne vi sono i vari luoghi interni di lavoro, ogni riga è una giornata.

-chi è segnato in alcune colonne (relative a turno notturno) non dovrebbe essere riportato per sbaglio in nessuna cella diurna del gionro successivo (perchè sta riposando)
-Ogni persona non dovrebbe avere più di 2 caselle occupate tipo mattina e pomeriggio (non tre quindi, ma una si - solo casella di mattina o solo di pomeriggio) in ciascuna riga giornaliera

E' possibile fare tutto ciò o sono destinato a controllare "a mano" ogni volta?
Grazie mille a chi mi darà una mano
open office 3.2
Gaetanopr
Volontario
Volontario
Messaggi: 3291
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Controllo orario di lavoro

Messaggio da Gaetanopr »

Ciao, manca l'allegato di esempio.
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
linfo
Messaggi: 11
Iscritto il: venerdì 16 marzo 2012, 13:33

Re: Controllo orario di lavoro

Messaggio da linfo »

Grazie mille! H inserto l'allegato di prova.
E' un orario che comprende vari luoghi di lavoro nelle colonne in alto (m=mattina, p=pomeriggio,n=notte), a sx i giorni del mese.
Chiederei se potete aiutarmi a considerare:
-La lettera (persona) che è nelle caselle grigie di notte, non dovrebbe comparire nelle caselle diurne bianche o colorate del giorno successivo (poichè sta riposando dopo il turno notturno)
-Nessuno dovrebbe avere più di due turni, (mattina o pomeriggio) nell'arco del giorno (ogni singola riga), non è necessario che il sistema controlli effettivamente la presenza di turni nelle colonne mattina o pomeriggio ma semplicemente un contatore per lettera, per ciascuna riga, che segnali la presenza di 3 o più lettere uguali per riga (non so se mi sono spiegato).

Grazie a chi mi aiuterà.

Matteo
Allegati
Orario prova.ods
(17.6 KiB) Scaricato 49 volte
open office 3.2
Gaetanopr
Volontario
Volontario
Messaggi: 3291
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Controllo orario di lavoro

Messaggio da Gaetanopr »

Puoi usare la formattazione condizionata, qualcosa di questo tipo per le celle m-p

Codice: Seleziona tutto

CONTA.SE($G$3:$AW$3;G3)>1
e

Codice: Seleziona tutto

CONTA.SE($G$3:$AW$4;G3)>1
per le celle n.
In pratica verifichi che lo stesso nome non sia presente + di una volta nella stessa riga, per la notte estendi il range pure alla riga successiva.
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
linfo
Messaggi: 11
Iscritto il: venerdì 16 marzo 2012, 13:33

Re: Controllo orario di lavoro

Messaggio da linfo »

Ho capito il senso, non ci avevo pensato...
Ho provato ad inserire i tuoi codici ma non funziona, mettendo 3 lettere uguali su una riga non le registra come VERO ma come falso.
E neppure mettendo una lettera il giorno successivo alla notte.
Potresti spiegarmi meglio la sintassi cosi posso provare a sistemarlo?

"Conta.se" nell'intervallo selezionato $ (=per ogni, immagino) da cella A a cella etc, la cella G3 (la prima solamente?) è >1?? Ho capito bene?
Io vorrei estendere l'analisi a tutta la riga.

Scusate ma non ho molta dimestichezza...:(
open office 3.2
linfo
Messaggi: 11
Iscritto il: venerdì 16 marzo 2012, 13:33

Re: Controllo orario di lavoro

Messaggio da linfo »

Son riuscito a capire la sintassi, ho bisogno di confrontare i range di valori in tabella, con ciascun valore non solo appartenente alla prima cella G3 ma estendendo a tutta la riga...
open office 3.2
Gaetanopr
Volontario
Volontario
Messaggi: 3291
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Controllo orario di lavoro

Messaggio da Gaetanopr »

Veramente non avevo fatto test, ora provando mi sono accorto che è al contrario, cioè la riga 4 deve confrontarsi con la riga precedente (3) e così via e non viceversa.
Ho semplificato il tuo file a due righe la formula da mettere a tutte le celle è la seguente

Codice: Seleziona tutto

=O(CONTA.SE($G$4:$AW$4;K4)>1;CONTA.PIÙ.SE($G$2:$AW$2;"n";$G$3:$AW$3;K4)>0)
In sostanza scorporando la formula, sulla stessa riga non deve ripetersi due volte CONTA.SE($G$4:$AW$4;K4)>1e non deve essere presente nemmeno una volta nella riga precedente con campo notte CONTA.PIÙ.SE($G$2:$AW$2;"n";$G$3:$AW$3;K4)>0.
Nella prima riga non dovendosi confrontare con nessun giorno precedente basterebbe questa

Codice: Seleziona tutto

CONTA.SE($G$3:$AW$3;K4)>1
anche se dovrebbe esserci sempre un giorno precedente.
Allego file.

I doppioni sulla stessa riga vengono evidenziati entrambi, invece se il doppione è sulla riga del giorno seguente alla notte, viene evidenziata solo la cella del giorno dopo, cioè il turno che non dovrebbe essere effettuato.
Allegati
Orario prova.ods
(13.47 KiB) Scaricato 39 volte
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
linfo
Messaggi: 11
Iscritto il: venerdì 16 marzo 2012, 13:33

Re: Controllo orario di lavoro

Messaggio da linfo »

Perdonami ma non ho capito...ho visto il file che hai allegato e sono d'accordo con i risultati evidenziati nelle caselle in rosso.
Volevo giusto chiederti come avevi fatto a far illuminare automaticamente la casella di errore? Dove hai inserito la stringa di comando?

Per il resto provando questi codici nella tabella originale temo che non funzionino, che sia un problema della mia versione di openoffice?
open office 3.2
Gaetanopr
Volontario
Volontario
Messaggi: 3291
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Controllo orario di lavoro

Messaggio da Gaetanopr »

linfo ha scritto: lunedì 5 dicembre 2022, 21:46 Volevo giusto chiederti come avevi fatto a far illuminare automaticamente la casella di errore? Dove hai inserito la stringa di comando?
Per il resto provando questi codici nella tabella originale temo che non funzionino, che sia un problema della mia versione di openoffice?
Da questo tuo messaggio dicendo che non ci avevi pensato credevo che sapessi come funziona la formattazione condizionata
linfo ha scritto: domenica 4 dicembre 2022, 14:08 Ho capito il senso, non ci avevo pensato
Consulta linea in merito o fai una ricerca, troverai un bel pò di spiegazioni.
https://help.libreoffice.org/7.2/it/tex ... _id3153189
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Rispondi