Michele_s
23-04-2004, 23:07
Ciao a tutti
Ho provato a mettere insieme la macro seguente con lo scopo di visualizzare prima in una msgbox e poi in una cella L39 il totale delle ore lavorate pomeridiane fino a quel momento in quel mese, tenendo conto di un tetto massimo variabile di mese in mese da inserire con una inputbox.
Purtroppo si blocca sulla riga sottolineata e non riesco a venirne a capo.
Oltre al problema esposto sopra, mi chiedevo se era possibile attivare la macro seguente nel momento successivo al trascinamento dalla cella superiore (il giorno prima) a quella inferiore (il giorno in corso) contenente la formula per il calcolo delle ore pomeridiane. Così trascinando la cella avrei non solo lo straordinario di quel giorno, ma il totale mensile fino a quel momento.
Più in generale si può abbinare una macro all’attivazione di una cella, o al compimento di un’operazione in una cella, senza operare sull'intero foglio, come avviene cliccando su ThisWoorkbook?
Ecco il listato:
Sub Superato_Il_Totale_Consentito()
ActiveSheet.Select
Dim a As Date
Dim x As Integer
Dim limite As Variant
Dim y As Date
limite = Application.InputBox("Formato ora hh/mm", "inserisci le ore consentite")
Range("L4").Select
y = ActiveSheet.Cells(x, 12).NumberFormat = "h:mm"
a = 0
For x = 4 To 34
‘ le righe da 1 a 3 sono occupate da intestazioni
If IsDate(a) Then a = a + y
Range("L39").Value = a
MsgBox a
If a >= limite Then
MsgBox ("Hai Superato il limite consentito"), _
vbCritical - vbOKOnly, "ATTENZIONE"
Else
MsgBox ("Non hai ancora superato il limite consentito"), _
vbCritical + vbOKOnly, "ATTENZIONE"
End If
If ActiveSheet.Cells(x, 12) = "" Then Exit For
Range("A1").Select
Next
End Sub
Grazie
Michele
Ho provato a mettere insieme la macro seguente con lo scopo di visualizzare prima in una msgbox e poi in una cella L39 il totale delle ore lavorate pomeridiane fino a quel momento in quel mese, tenendo conto di un tetto massimo variabile di mese in mese da inserire con una inputbox.
Purtroppo si blocca sulla riga sottolineata e non riesco a venirne a capo.
Oltre al problema esposto sopra, mi chiedevo se era possibile attivare la macro seguente nel momento successivo al trascinamento dalla cella superiore (il giorno prima) a quella inferiore (il giorno in corso) contenente la formula per il calcolo delle ore pomeridiane. Così trascinando la cella avrei non solo lo straordinario di quel giorno, ma il totale mensile fino a quel momento.
Più in generale si può abbinare una macro all’attivazione di una cella, o al compimento di un’operazione in una cella, senza operare sull'intero foglio, come avviene cliccando su ThisWoorkbook?
Ecco il listato:
Sub Superato_Il_Totale_Consentito()
ActiveSheet.Select
Dim a As Date
Dim x As Integer
Dim limite As Variant
Dim y As Date
limite = Application.InputBox("Formato ora hh/mm", "inserisci le ore consentite")
Range("L4").Select
y = ActiveSheet.Cells(x, 12).NumberFormat = "h:mm"
a = 0
For x = 4 To 34
‘ le righe da 1 a 3 sono occupate da intestazioni
If IsDate(a) Then a = a + y
Range("L39").Value = a
MsgBox a
If a >= limite Then
MsgBox ("Hai Superato il limite consentito"), _
vbCritical - vbOKOnly, "ATTENZIONE"
Else
MsgBox ("Non hai ancora superato il limite consentito"), _
vbCritical + vbOKOnly, "ATTENZIONE"
End If
If ActiveSheet.Cells(x, 12) = "" Then Exit For
Range("A1").Select
Next
End Sub
Grazie
Michele