Hallo forumleden,
Ik heb een werkboek (uitgeklede versie) waarin werkblad “logbook-today” opmerkingen ingeschreven worden.
Tijdens de nacht, om 00:01 wordt de inhoud van logbook-today gekopieerd naar een volgend werkblad, Logbook_previous_days.
Wat correct werkt is:
Als het werkboek open staat wordt er netjes om 00:01 gekopieerd naar het tweede blad, datum (A2) in logbook-today wordt aangepast naar de datum vandaag. De inhoud wordt gewist en in gedefinieerde namen wordt de waarde van de laatste keer gekopieerd aangepast.
Als je de macro in module VerplaatsData “kopie” laat draaien, deze werkt op zich ook helemaal correct.
Probleem:
Als het werkboek gesloten is en het wordt geopend de volgende dag na middernacht (na 00:01) zou er dus direct moeten gekopieerd worden, want (IF x < y Then kopie), dit werkt niet.
De datum wordt wel gewijzigd naar datum vandaag in cel A2 en in gedefinieerde namen (laatsteKeerGekopieerd) wordt de waarde aangepast.
Maar de waarden in range (A1:V24) zouden mee gekopieerd moeten worden naar blad Logbook_previous_days , dit via de macro kopie, blijven staan.
Ik vermoed dat het in de code Private Sub Workbook_Open fout loopt. Deze code heb ik op het forum gekregen maar het project heeft lang stilgelegen.
Graag jullie hulp.
Alvast bedankt
Marc
Ik heb een werkboek (uitgeklede versie) waarin werkblad “logbook-today” opmerkingen ingeschreven worden.
Tijdens de nacht, om 00:01 wordt de inhoud van logbook-today gekopieerd naar een volgend werkblad, Logbook_previous_days.
Wat correct werkt is:
Als het werkboek open staat wordt er netjes om 00:01 gekopieerd naar het tweede blad, datum (A2) in logbook-today wordt aangepast naar de datum vandaag. De inhoud wordt gewist en in gedefinieerde namen wordt de waarde van de laatste keer gekopieerd aangepast.
Als je de macro in module VerplaatsData “kopie” laat draaien, deze werkt op zich ook helemaal correct.
Probleem:
Als het werkboek gesloten is en het wordt geopend de volgende dag na middernacht (na 00:01) zou er dus direct moeten gekopieerd worden, want (IF x < y Then kopie), dit werkt niet.
De datum wordt wel gewijzigd naar datum vandaag in cel A2 en in gedefinieerde namen (laatsteKeerGekopieerd) wordt de waarde aangepast.
Code:
Private Sub Workbook_Open()
x1 = Split(ThisWorkbook.Names("LaatsteKeerGekopieerd"), Chr(34))
On Error GoTo errhandler
x = DateValue(x1(1))
errhandler:
If Err.Number = 9 Then x = Right(x1(0), Len(x1(0)) - 1)
y = DateValue(Date)
If x < y Then Call kopie 'Laatste keer gekopieerd was op een andere dag, dan direkt kopieren
'Deze regel werkt niet
Application.OnTime TimeValue("00:01:00"), "kopie" 'Anders klaarzetten tegen volgende middernacht
'Deze regel werkt
'========toegevoegd om datum te plaatsen===========
With Sheets("Logbook-today")
'.Unprotect Password:="123"
'.Range("A1:A4").Locked = False
.Range("A2").Value = Format(Date, "dd/mm/yyyy")
.Range("A1").Value = Format(Date, "mmmm")
.Range("A4").Value = Format(Date, "dd/mm/yyyy")
'.Protect Password:="123"
End With
'=========================================
Worksheets("Logbook-today").Activate
'Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"", False)" 'Toolbar invisible maken
'Call TimeSetting
End Sub
Ik vermoed dat het in de code Private Sub Workbook_Open fout loopt. Deze code heb ik op het forum gekregen maar het project heeft lang stilgelegen.
Graag jullie hulp.
Alvast bedankt
Marc