|
Rank: Member
Iscritto dal : 5/9/2003 Posts: 4
|
Ciao a tutti,qualcuno mi può aiutare?Lavoro su turni e ho un riposo ogni 5 giorni lavorativi,vorrei fare un calendario dove digitanto il primo riposo conosciuto dell'anno gli altri vengano assegnati in automatico...questo per avere una previsione sulla cadenza dei riposo nell'arco dell'anno,come posso fare?Mi aiutate?Grazie infinite in anticipo.
|
|
|
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
puoi usare la funzione GIORNO.LAVORATIVO() da applicare alle celle del foglio es: se nella cella A1 hai la data di partenza, nella cella B1 scriverai: =Giorno.Lavorativo(A1,5) nella cella C1 : =giorno.lavorativo(B1,5) e così via. in alternativa puoi usare una macro per facilitare l'immissione. Un esempio di macro può essere questa: Sub intervallo() Dim Riga as Integer Riga=2 for i= 1to 53 While cells(riga,1).value()"" riga=riga+1 wend cells(riga,1).select selection.NumberFormat= "m/d/yy" Activecell.FormulaR1C1="=GIORNO.LAVORATIVO(R[-1]C,5)" Next i end sub dimenticavo di dire che la funzione giorno lavorativo tiene conto del fine settimana sabato compreso saluti Andrea Edited by - a10n11 on 04/18/2005 09:58:11 Edited by - a10n11 on 04/18/2005 09:58:55
|
|
Rank: Member
Iscritto dal : 5/9/2003 Posts: 4
|
[quote] Ciao,ho provato la formula=Giorno.Lavorativo(A1,5)e mi da errore evidenziando(A1,5),allora ho provato ad eseguire la macro,ma anche quella al comando While cells(riga,1).value()"" la evidenzia in rosso e dice che è un comando non valido,sicuramente essendo un princpiante sbaglio qualcosa mi puoi ancora aiutare?Grazie,dalex
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve vedo ora che nel post i caratteri sono stati modificati. Nella riga qui sotto al posto delle parentesi tonde dopo ".value" vanno inseriti i simboli di maggiore e minore --While cells(riga,1).value()""--- per quanto riguarda la funzione Giorno.Lavorativo forse dipende dal fatto che questa funzione non è stata caricata. la puoi caricare da strumenti->componenti aggiuntivi- spuntando nella finestra "strumenti di analisi" saluti andrea Edited by - a10n11 on 05/08/2005 12:00:24
|
|
Rank: Member
Iscritto dal : 5/9/2003 Posts: 4
|
[quote] Ciao Andrea e grazie infinite per il tuo prezioso aiuto e consiglio:ho provato la formula ed è ok!Però non ho ancora risolto il problema in quantolavoro 6 giorni su 7 ed ogni 5 ho un riposo che varia di settimana in settimana(1na sett.il lun. la seguente la dom.ela seguente il sab.e così via) quindi mi interesserebbe far figurare anche la dom.come giorno lav.quando lo è, e di riposo quando spetta.Inoltre vorrei mettere per .es. nella col.A tutti i gg. dell'anno e nella col.B la parola "riposo" o "r"(dopo aver dgt.il primo conosciuto),in modo da poter scriv.nelle rest.6 celle vuote i turni giornalieri.Se non ti crea grosse difficoltà mi daresti ancora il tuo prezioso aiuto?Ancora grazie per l'aiuto precedente e spero a quello futuro,saluti dalex.
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve alex considerando il foglio strutturato come segue: Cella B1 data conosciuta del primo riposo: celle A3:A367 calendario dell'anno (gg/mm/aa) celle B3:B367 giorni della settimana (ggg) questa può essere l'esempio della macro: Sub calcola() Dim x as Date, costante as integer x=range("b1") costante=6 Set area=Range("a3",range("a3").End(xldown)) for each Cl in Area if Cl=x then Cl.offset(0,2).select Activecell="riposo" end if Next Do if Activecell.offset(costante,-1)= "" then exit Do Activecell.offset(costante,0).select activecell="riposo" Loop end sub prova e fa sapere se risolve. saluti andrea Edited by - a10n11 on 05/16/2005 15:42:47
|
|
Rank: Member
Iscritto dal : 5/9/2003 Posts: 4
|
[quote] Ciao Andrea,una sola parola :G R A N D I O S O !!!Hai risolto alla perfezione il mio guaio e volevo veramente ringraziarti di cuore per il validissimo aiuto che spero in futuro se avrò bisogno(sicuramente!)mi vorrai ancora concedere.Mi piacerebbe addentrarmi nel mondo delle "macro"e imparare tutti i comandi e i loro significati,hai da consigliarmi un testo(o dei siti)da consultare per riuscire a capirne qualcosa(anche se è molto difficile)?Ti rinnovo ancora un fantastiliardo di grazie infinite per la tua valida collaborazione, a presto Alex
|
|
Guest |