Hej igen Du kan ange att koden ska gälla första bladet i den arbetsbok där makrot finns genom att ändra rutinen Recalc så här: Hej Just det. With-köret är en effektivare variant av: Tack allihopa. Hur man gör det bäst beror på Rätt arbetsboken består av dessa fem blad, efter årsskiftet blir det sex.VBA hjälp
Denna kod hittade jag för att få fram klocka och datum i ett excel ark, suveränt.
__________________________________________________________________
Dim SchedRecalc As Date
Sub Recalc()
Range("w6").Value = Format(Now, "yyyy-mm-dd")
Range("s6").Value = Format(Time, "hh:mm:ss AM/PM")
Call SetTime
End Sub
Sub SetTime()
SchedRecalc = Now + TimeValue("00:00:01")
Application.OnTime SchedRecalc, "Recalc"
End Sub
Sub Disable()
On Error Resume Next
Application.OnTime EarliestTime:=SchedRecalc, Procedure:="Recalc", Schedule:=False
End Sub
________________________________________________________________________
Nu uppstod ett annat prb. Klockan ska bara köras i ett speciellt aktivt blad, prb är att när jag klickar på någon av mina hyperlänkar som ligger i excel bladet så får jag fel kod från VBA. Jag antar att VBA försöker köra samma kod i den filen jag öppnar, som jag har skrivskyddat. Jag har försökt klura hur jag ska lösa det utan att lyckas, någon som har tipps.
Tack på förhand
Rasmus Sv: VBA hjälp
Sub Recalc()
With ThisWorkbook.Worksheets(1)
.Range("w6").Value = Format(Now, "yyyy-mm-dd")
.Range("s6").Value = Format(Time, "hh:mm:ss AM/PM")
End With
Call SetTime
End Sub
Sv: VBA hjälp
Nu har jag testat koden och den fungerar inte, får samma prb Fick dessutom lägga till"end with" i avslutet för att jag skulle kunna köra den.
"körfel nr 1004"
___________________________________________________________________
Dim SchedRecalc As Date
Sub Recalc()
With ThisWorkbook.Worksheets(1)
Range("w6").Value = Format(Now, "yyyy-mm-dd")
Range("s6").Value = Format(Time, "hh:mm:ss AM/PM")
Call SetTime
End With
End Sub
Sub SetTime()
SchedRecalc = Now + TimeValue("00:00:01")
Application.OnTime SchedRecalc, "Recalc"
End Sub
Sub Disable()
On Error Resume Next
Application.OnTime EarliestTime:=SchedRecalc, Procedure:="Recalc", Schedule:=False
End Sub
_______________________________________________________________________________________
Någon som ser prb :)
Tack på förhand
//RasmusSv: VBA hjälp
Sub Recalc()
ThisWorkbook.Worksheets(1).Range("w6").Value = Format(Now, "yyyy-mm-dd")
ThisWorkbook.Worksheets(1).Range("s6").Value = Format(Time, "hh:mm:ss AM/PM")
Call SetTime
End Sub
Sv:VBA hjälp
Men, det finns alltid ett men :). Hur får jag den att fungera i fem olika blad i samma dokument. Kör jag koden så fungerar det bara i ett blad i taget.
PS! Jag har som sagt inte alltid tid att läsa av era svar därför kan det ta lite tid ibland.
//RasmusSv: VBA hjälp
- består arbetsboken av exakt dessa fem blad?
om inte - är det fem blad i följd?
- räcker det om klockan fungerar på aktivt blad?Sv:VBA hjälp
Klockan ska fungera på alla blad, iaf det som är aktivt. Dock växlar man mellan bladen hela tiden
//Rasmus