Stampare presenze giornaliere
Stampare presenze giornaliere
Buongiorno, vorrei realizzare o meglio stampare giornalmente, in base al foglio di Calc che allego, un elenco che mi indichi le varie assenze di quel giorno per ogni magazzino.
Cioè il giorno 1 dovrà stampare
Magazzino 4
Amministrazione 2
Spedizioni 2
Resi 1
Il giorno 2 mi dovrà stampare
Magazzino 2
Amministrazione 1
Spedizioni 0
Resi 1
Dovrei creare una macro per ogni giorno ed associarla ad ognuno dei giorni, ma mi sembra troppo macchinoso.
come potrei risolvere?
Grazie a tutti.
Cioè il giorno 1 dovrà stampare
Magazzino 4
Amministrazione 2
Spedizioni 2
Resi 1
Il giorno 2 mi dovrà stampare
Magazzino 2
Amministrazione 1
Spedizioni 0
Resi 1
Dovrei creare una macro per ogni giorno ed associarla ad ognuno dei giorni, ma mi sembra troppo macchinoso.
come potrei risolvere?
Grazie a tutti.
- Allegati
-
- presenze.ods
- (17.39 KiB) Scaricato 186 volte
Calc OpenOffice 3.1
Re: Stampare presenze giornaliere
Potresti creare un altro foglio con solo il riepilogo e stampare quello.
Allego un esempio.
Allego un esempio.
- Allegati
-
- presenze v2.ods
- (20.88 KiB) Scaricato 195 volte
LibreOffice 24.8.4 (Win 11)
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
Re: Stampare presenze giornaliere
Grazie Attila,
quasi perfetto. Però dovrei gestire anche il MESE nella stampa giornaliera, nel senso che io avrei un foglio per ogni mese come quelli che ho inserito nel file di esempio.
Ri-allego il file modificato.
Quindi nel foglio STAMPE GIORNALIERE dovrei riuscire a sceglier prima il MESE poi il GIORNO da stampare.
Grazie mille!!!
quasi perfetto. Però dovrei gestire anche il MESE nella stampa giornaliera, nel senso che io avrei un foglio per ogni mese come quelli che ho inserito nel file di esempio.
Ri-allego il file modificato.
Quindi nel foglio STAMPE GIORNALIERE dovrei riuscire a sceglier prima il MESE poi il GIORNO da stampare.
Grazie mille!!!
- Allegati
-
- presenze v2.ods
- (28.97 KiB) Scaricato 173 volte
Calc OpenOffice 3.1
Re: Stampare presenze giornaliere
Fai test.
- Allegati
-
- presenze v4.ods
- (105.98 KiB) Scaricato 187 volte
LibreOffice 24.8.4 (Win 11)
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
Re: Stampare presenze giornaliere
Cavolo Attila!!!!....mi vuoi fare impazzire!!!
Dopo 1/2 ora ho capito che c'era un foglio nascosto!!!
Gran bel casino...spero di adattarlo alle mie esigenze.
Grazie mille.....faccio test e riferisco!!!!
Per ora BUON WEEK.
Dopo 1/2 ora ho capito che c'era un foglio nascosto!!!
Gran bel casino...spero di adattarlo alle mie esigenze.
Grazie mille.....faccio test e riferisco!!!!
Per ora BUON WEEK.
Calc OpenOffice 3.1
Re: Stampare presenze giornaliere
È lo spirito giusto, molti si limitano a prendere la soluzione così come arriva... il forum serve anche a questo... (fornire soluzioni)... ma soprattutto serve per diffondere conoscenza... e trovare qualcuno che vuole andare a fondo .... (anche sacrificando una 1/2 ora ) ... secondo me ripaga di gran lunga tutto il tempo che volontari, amministratori, moderatori, e tutti gli altri utenti del forum mettono a disposizione del prossimo.skate2k5 ha scritto:Dopo 1/2 ora ho capito che c'era un foglio nascosto!!!
Se trovi difficoltà, posta pure i tuoi dubbi.skate2k5 ha scritto: Gran bel casino...spero di adattarlo alle mie esigenze.
LibreOffice 24.8.4 (Win 11)
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
Re: Stampare presenze giornaliere
Sono perfettamente d'accordo con te!!!
Spero un domani di poter contribuire anche io (in proporzione con le conoscenze ).
Grazie ancora.
Spero un domani di poter contribuire anche io (in proporzione con le conoscenze ).
Grazie ancora.
Calc OpenOffice 3.1
Re: Stampare presenze giornaliere
E' vero Attila ho capito che esiste questo foglio, ma proprio non riesco a capire da dove cominiciare.Attilafdd ha scritto:skate2k5 ha scritto:Dopo 1/2 ora ho capito che c'era un foglio nascosto!!!
Qual'è la cella o colonna che comanda nel foglio?...da cui poi credo discendano tutte le altre?
Grazie
Calc OpenOffice 3.1
Re: Stampare presenze giornaliere
Diciamo che più che una cella è una formula sulla quale si impernia la risposta alla tua esigenza. Tutto il resto diciamo che... prepara i dati per essere gestiti da questa formula.skate2k5 ha scritto:Qual'è la cella o colonna che comanda nel foglio?...da cui poi credo discendano tutte le altre?
La formula principale è l'intersezione di due aree e si ottiene con l'operatore ! (punto esclamativo) (La trovi da C6 a C9 del foglio "stampe giornaliere").
Codice: Seleziona tutto
=INDIRETTO($C$2 & "_" & $C$3) ! INDIRETTO($C$2 &"_" &B6)
Bene, vedi la tabella divisa in questo modo:
- ogni giorno è un'area verticale che inizia con il numero del giorno e finisce in corrispondenza di "resi" (riga 18)
- i reparti sono aree orizzontali che iniziano con il nome del reparto e terminano con il valore in corrispondenza del 31esimo giorno
Incrociando (cioè intersecando) un'area giorno con un'area reparto trovo esattamente il corrispondente valore riportato in tabella (noi umani tracciamo col dito fino all'incrocio, nei programmi si usa l'operazione "intersezione"... e come dicevo prima in Calc si usa l'operatore "!").
Se questo è chiaro provo ad andare avanti.
Tutto questo giochetto funziona meglio se "aree in colonna" e le "aree in riga" le chiamo in modo che le aree in colonna si chiamino come il numero del giorno che mi interessa, le aree in riga si chiamino come il reparto che mi interessa.
Qui utilizziamo la funzione di definizione nomi o ancor meglio di creazione automatica nomi disponibile in Calc (in Libreoffice: Foglio - Aree con nomi ed espressioni - Definisci o ancor meglio seleziona la tabella con ctrl+* poi Foglio - Aree con nomi ed espressioni - Crea e poi seleziona l'opzione sia "prima riga" che "colonna di sinistra" così in un batter d'occhio creerà i 31 nomi dei giorni e i 4 nomi dei reparti).
Poi ci viene in aiuto la funzione INDIRETTO che ci permette di fare riferimento alle aree semplicemente menzionandole per nome creato come sopra.
Per il momento la formula in C6 del foglio "Stampe giornaliere":
Codice: Seleziona tutto
=INDIRETTO($C$2 & "_" & $C$3) ! INDIRETTO($C$2 &"_" &B6)
Codice: Seleziona tutto
=INDIRETTO(Nome_giorno) ! INDIRETTO(Nome_reparto)
- nomino il giorno 9
- con INDIRETTO richiamo l'area verticale riferibile al giorno 9
- nomino il reparto Magazzino
- con INDIRETTO richiamo l'area orizzontale riferibile al Magazzino
- interseco l'area "giorno 9" con l'area "Magazzino" tramite l'operatore "!"
... e ottengo il valore riportato nella tabella.
Mi fermo un attimo... fammi sapere se è tutto chiaro così proseguo.
LibreOffice 24.8.4 (Win 11)
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
Re: Stampare presenze giornaliere
Ok Attila...ti seguo!
L'unica parte dove sono in confusione è la definizione dei nomi (in automatico).
Qui utilizziamo la funzione di definizione nomi o ancor meglio di creazione automatica nomi disponibile in Calc (in Libreoffice: Foglio - Aree con nomi ed espressioni - Definisci o ancor meglio seleziona la tabella con ctrl+* poi Foglio - Aree con nomi ed espressioni - Crea e poi seleziona l'opzione sia "prima riga" che "colonna di sinistra" così in un batter d'occhio creerà i 31 nomi dei giorni e i 4 nomi dei reparti).
Io uso Calc v.5.1.5.2 e per definire un nome: seleziono l'area - poi definisci- espressioni con nome - inserisci....ma non riesco a selezionare l'opzione sia "prima riga" che "colonna di sinistra", o meglio non la trovo.
Per il resto ti seguo abbastanza.
Grazie
L'unica parte dove sono in confusione è la definizione dei nomi (in automatico).
Qui utilizziamo la funzione di definizione nomi o ancor meglio di creazione automatica nomi disponibile in Calc (in Libreoffice: Foglio - Aree con nomi ed espressioni - Definisci o ancor meglio seleziona la tabella con ctrl+* poi Foglio - Aree con nomi ed espressioni - Crea e poi seleziona l'opzione sia "prima riga" che "colonna di sinistra" così in un batter d'occhio creerà i 31 nomi dei giorni e i 4 nomi dei reparti).
Io uso Calc v.5.1.5.2 e per definire un nome: seleziono l'area - poi definisci- espressioni con nome - inserisci....ma non riesco a selezionare l'opzione sia "prima riga" che "colonna di sinistra", o meglio non la trovo.
Per il resto ti seguo abbastanza.
Grazie
Calc OpenOffice 3.1
Re: Stampare presenze giornaliere
In firma scrivi Calc OpenOffice 3.1skate2k5 ha scritto: Io uso Calc v.5.1.5.2
Io sto usando Libreoffice 5.3.3... forse c'è qualche diversità nei menu, comunque da me si trova qui:
LibreOffice 24.8.4 (Win 11)
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
Re: Stampare presenze giornaliere
Bene, proseguiamo.
Capito come gira la formula
bisogna trovare il modo di passare alla formula il "Nome_giorno" e il "Nome_reparto"
Prima complicazione: ti servono 12 mesi.
Quindi la formula dovrà puntare a 12 tabelle.
Ci occorrerà un modo per rendere univoco il Nome_giorno e Nome_reparto, per ogni tabella.
Ho creato quindi il il famoso foglio nascosto come foglio di appoggio.
Se vedi in questo foglio denominato "Riepilogo", nella colonna D vengono resi univoci i Nomi_reparto concatenandoli con il rispettivo mese, mentre nella prima riga di ogni tabella viengono resi univoci i nomi(numeri)_giorni sempre concatenandoli con il mese cui la tabella si riferisce.
Capito come gira la formula
Codice: Seleziona tutto
=INDIRETTO(Nome_giorno) ! INDIRETTO(Nome_reparto)
Prima complicazione: ti servono 12 mesi.
Quindi la formula dovrà puntare a 12 tabelle.
Ci occorrerà un modo per rendere univoco il Nome_giorno e Nome_reparto, per ogni tabella.
Ho creato quindi il il famoso foglio nascosto come foglio di appoggio.
Se vedi in questo foglio denominato "Riepilogo", nella colonna D vengono resi univoci i Nomi_reparto concatenandoli con il rispettivo mese, mentre nella prima riga di ogni tabella viengono resi univoci i nomi(numeri)_giorni sempre concatenandoli con il mese cui la tabella si riferisce.
Ultima modifica di Attilafdd il martedì 20 giugno 2017, 21:26, modificato 1 volta in totale.
LibreOffice 24.8.4 (Win 11)
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
Re: Stampare presenze giornaliere
Compreso anche questo passaggio abbiamo:
1) la formula che sfrutta l'intersezione delle aree (che ci fornirà il risultato finale)
2) le aree denominate in modo univoco con il rispettivo nome mese
Ora non resta che far scegliere all'utente quale mese vuole rappresentare e quale giorno di quel mese.
Per questo sfruttiamo 2 menu a tendina (Dati - Validità dati): C2 (per il mese) e C3 (per il giorno)
La formula finale dunque sarà:
dove
non è altro che la concatenazione del nome del mese con il numero del giorno (es. Giugno_20)
e
la concatenazione del nome del mese con il nome del reparto (es. Giugno_Magazzino)
Ed il gioco è fatto.
1) la formula che sfrutta l'intersezione delle aree (che ci fornirà il risultato finale)
2) le aree denominate in modo univoco con il rispettivo nome mese
Ora non resta che far scegliere all'utente quale mese vuole rappresentare e quale giorno di quel mese.
Per questo sfruttiamo 2 menu a tendina (Dati - Validità dati): C2 (per il mese) e C3 (per il giorno)
La formula finale dunque sarà:
Codice: Seleziona tutto
=INDIRETTO($C$2 & "_" & $C$3) ! INDIRETTO($C$2 &"_" &B6)
Codice: Seleziona tutto
$C$2 & "_" & $C$3
e
Codice: Seleziona tutto
$C$2 &"_" &B6
Ed il gioco è fatto.
LibreOffice 24.8.4 (Win 11)
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
-----------------------------------------
Se risolto inserisci [Risolto] e la spunta verde : viewtopic.php?f=9&t=5661
Re: Stampare presenze giornaliere
Buongiorno e ancora grazie per le tue lezioni!
Prima di affermare di aver capito vorrei riuscire a personalizzare secondo le mie esigenze il tutto.
Dubbio: nella cella F2 del foglio Riepilogo c'è la formula...
non riesco proprio a capire le celle di riferimento.
il valore 1 (o meglio RIF.RIGA(F$1)+12 ) a cosa si riferisce? allo stesso foglio ???
Grazie
Prima di affermare di aver capito vorrei riuscire a personalizzare secondo le mie esigenze il tutto.
Dubbio: nella cella F2 del foglio Riepilogo c'è la formula...
Codice: Seleziona tutto
= INDIRETTO($B2 & "." & INDIRIZZO(RIF.RIGA(F$1)+12;RIF.COLONNA(F11);4))
il valore 1 (o meglio RIF.RIGA(F$1)+12 ) a cosa si riferisce? allo stesso foglio ???
Grazie
Calc OpenOffice 3.1