Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

macro per trasformare minuti in ore.

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

macro per trasformare minuti in ore.

Postdi lucylucy » 08/01/16 18:07

Buongiorno a tutti
Mi scuso in partenza se non risulto chiara nell esposizione ma sono alle prime armi con le macro.
Dispongo di un file in Excel costituito da tante tabelle quante sono le settimane lavorative.
In ogni tabella per orizzontale ci sono i giorni dal lunedì al venerdì mentre per verticale il dettaglio che dovrò andare a scrivere ogni giorno relativamente a ciò che svolgo.
Nell incrocio tra l attività svolta e il giorno devo riportare il tempo impiegato.
Poiche il tempo che impiego è espresso in minuti non posso fare altro che scrivere i minuti.
Tuttavia la collega paghe li vuole rapportato in ore ma se dovessi pensare di fare la conversione ogni volta mi sparo.
Ho costruito quindi una prova di macro su una cella dove registro le seguenti operazioni :
F2 per entrare nella cella, metto l uguale alla sx del numero, metto la barra per il diviso alla dx del numero è infine digito 60. Ecco fatto che ottengo l ora frazionata.
peccato però che non sono riuscita a farlo sul resto delle celle.
inoltre se provo a registrarlo sulla cella vuota mi da errore (ovviamente voi penserete)
Come posso farlo sull intero foglio? Così che una volta compilato il mio reportage mi basti schiacciare la mia macro e tutto si trasforma?
Grazie!
lucylucy
Newbie
 
Post: 3
Iscritto il: 08/01/16 17:31

Sponsor
 

Re: macro per trasformare minuti in ore.

Postdi Anthony47 » 08/01/16 23:20

Ciao lucylucy, benvenuto/a nel forum.
Purtroppo la richiesta non e' a prova di errore.
In particolare non mi e' chiaro se ad esempio 90 minuti devono diventare 1.5 ore oppure 1h:30m, ne' se l'utente successivo elaborera' il foglio excel, per cui gli orari devono essere rappresentati nel formato orario di Excel, o se si limitera' a leggere i numeri e copiarli in un altro ambiente (evviva l'automazione d'ufficio) per cui basta rappresentare tutto in formato leggibile ed e' ok.

Ti aspettiamo con questi chiarimenti...
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: macro per trasformare minuti in ore.

Postdi lucylucy » 11/01/16 11:49

Grazie per l attenzione.
Come dicevi tu avrei bisogno di trasformare 90 minuti ad esempio in 1,50.
Il file a fine mese lo stampo e lo passo alla collega che poi riporta manualmente in altro programma i dati.
Grazie per la risposta :)
lucylucy
Newbie
 
Post: 3
Iscritto il: 08/01/16 17:31

Re: macro per trasformare minuti in ore.

Postdi Anthony47 » 11/01/16 23:28

Per principio io sono contrario a modificare il contenuto di celle inputate dall'utente; in prima istanza perche' si perde la corrispondenza tra quanto scritto dall'utente e quanto calcolato dalla macro, e in seconda perche' diventa spesso problematico determinare se quei dati sono stati gia' elaborati (=modificati) o non ancora.
Pertanto la mia implementazione prima fa una copia del foglio corrente, che viene rinominato in modo riconoscibile e poi su questa copia vengono alterate le celle che l'utente vuole convertire, che devono essere identificate tramite la "Selezione" prima di avviare la macro.
Il codice equivalente:
Codice: Seleziona tutto
Sub MinOra()
Dim cName As String, cSel As String, myTim As Range
'
cName = ActiveSheet.Name
cSel = Selection.Address
'Crea copia e rinomina:
ActiveSheet.Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "ZCZC_" & cName
'Trasforma:
For Each myTim In Range(cSel)
aaa = myTim.Address
If IsNumeric(myTim.Value) Then
    If myTim.Value > 0 Then
        myTim.Value = myTim.Value / 60
        myTim.NumberFormat = "0.00"
    End If
End If
Next myTim
End Sub

Operativamente: sul foglio originale selezioni l'area da "lavorare", lanci la Sub MinOra (premi Alt-F8, selezioni MinOra dall'elenco di macro disponibili, premi Esegui).

Quando vorrai ripetere una seconda volta l'operazione sullo stesso foglio dovrai preventivamente cancellare la replica del foglio prima di eseguire la macro.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: macro per trasformare minuti in ore.

Postdi lucylucy » 12/01/16 08:08

Grazie mille sei stato gentilissimo!
lucylucy
Newbie
 
Post: 3
Iscritto il: 08/01/16 17:31


Torna a Applicazioni Office Windows


Topic correlati a "macro per trasformare minuti in ore.":


Chi c’è in linea

Visitano il forum: Nessuno e 6 ospiti

cron