• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Mijn Counter werkt niet! Help!

Status
Niet open voor verdere reacties.

eefjek1986

Gebruiker
Lid geworden
27 sep 2012
Berichten
53
Hallo allemaal,

zoals jullie kunnen zien, in onderstaande stuk, heb ik een Counter in deze code verwerkt.
Maar hij telt niet!?
Wie ziet wat ik niet zie?

Code:
Option Explicit
Private Sub Workbook_Open()
Dim dagdeel As String
Dim Counter As Long, LastOpen As String, Msg As String
    Call BeveiligingAan
        ActiveWindow.Caption = ActiveWorkbook.FullName
    Range("b25").Activate
    Range("H2") = UCase(gebruiker)
    If Time < 0.5 Then
        dagdeel = "morgen "
    ElseIf Time >= 0.5 And Time < 0.75 Then
        dagdeel = "middag "
    Else: dagdeel = "navond "
    End If
   [COLOR="#FF0000"] Msg = "Goede" & dagdeel & vbCr & vbCr & UCase(gebruiker) & "," & _
    vbCr & vbCr & "dit bestand is " & Counter + 1 & " keer geopend " & _
    vbCr & vbCr & " de laatste keer was op:  " & Date & vbCr & vbCr & " om " & Time & " uur"
    MsgBox Msg, vbInformation, ThisWorkbook.Name[/COLOR]
        
            
[COLOR="#00FF00"]'   Haal alle gegevens op[/COLOR]
    Counter = GetSetting("XYZ Corp", "Budget", "Count", 0)
    LastOpen = GetSetting("XYZ Corp", "Budget", "Opened", "")
 
[COLOR="#00FF00"]'   Update de informatie en opslaan[/COLOR]
    Counter = Counter + 1
    LastOpen = Date & " " & Time
    SaveSetting "XYZ Corp", "Budget", "Count", Counter
    SaveSetting "XYZ Corp", "Budget", "Opened", LastOpen
End Sub

Alvast veel dank voor alle hulp,

Groet,

Eefje
 
M.i. moet je eerst de gegevens ophalen alvorens je de variabele counter gaat gebruiken in je MsgBox, want hij telt wel degelijk.
 
Hallo Rudi,

ik geloof je meteen, maar wat bedoel je nu eigenlijk? En hoe moet ik "dat" dan doen?
Zou jij mij dat kunnen/willen uitleggen? En of mee kunnen helpen?

Groetjes,

Eefje
 
Probeer het zo eens Eefje.
Code:
Private sub workbook_open()
Dim dagdeel As String
Dim Counter As Long, LastOpen As String, Msg As String
'   Haal alle gegevens op
    Counter = GetSetting("XYZ Corp", "Budget", "Count", 0)
    LastOpen = GetSetting("XYZ Corp", "Budget", "Opened", "")
    
Call BeveiligingAan
        ActiveWindow.Caption = ActiveWorkbook.FullName
    Range("b25").Activate
    Range("H2") = UCase(gebruiker)
    If Time < 0.5 Then
        dagdeel = "morgen "
    ElseIf Time >= 0.5 And Time < 0.75 Then
        dagdeel = "middag "
    Else: dagdeel = "navond "
    End If
    Msg = "Goede" & dagdeel & vbCr & vbCr & UCase(gebruiker) & "," & _
    vbCr & vbCr & "dit bestand is " & Counter + 1 & " keer geopend " & _
    vbCr & vbCr & " de laatste keer was op:  " & Date & vbCr & vbCr & " om " & LastOpen
    MsgBox Msg, vbInformation, ThisWorkbook.Name
        
            
 
'   Update de informatie en opslaan
    Counter = Counter + 1
    LastOpen = Date & " " & Time
    SaveSetting "XYZ Corp", "Budget", "Count", Counter
    SaveSetting "XYZ Corp", "Budget", "Opened", LastOpen
end sub
 
Hallo Harry,

nu werkt het, al heb ik wel eerst de "teller" in de Register-editor op 0 moeten zetten.

Dus, dank je wel voor je hulp.



Groetjes,


Eefje:love:
 
Hallo Eefje,

Was niet nodig geweest hoor.;)
Voeg de rode tekst toe, en open het bestandje.
Na het open haal je de rode regel weer weg.

Code:
Private Sub workbook_open()
Dim dagdeel As String
Dim Counter As Long, LastOpen As String, Msg As String, gebruiker
gebruiker = "hsv"
'   Haal alle gegevens op
    Counter = GetSetting("XYZ Corp", "Budget", "Count", 0)
    LastOpen = GetSetting("XYZ Corp", "Budget", "Opened", "")
[COLOR=#ff0000] Counter = -1
[/COLOR]    'Call BeveiligingAan
        ActiveWindow.Caption = ActiveWorkbook.FullName
    Range("b25").Activate
    Range("H2") = UCase(gebruiker)
    If Time < 0.5 Then
        dagdeel = "morgen "
    ElseIf Time >= 0.5 And Time < 0.75 Then
        dagdeel = "middag "
    Else: dagdeel = "navond "
    End If
    Msg = "Goede" & dagdeel & vbCr & vbCr & UCase(gebruiker) & "," & _
    vbCr & vbCr & "dit bestand is " & Counter + 1 & " keer geopend " & _
    vbCr & vbCr & " de laatste keer was op:  " & Date & vbCr & vbCr & " om " & LastOpen
    MsgBox Msg, vbInformation, ThisWorkbook.Name
        
            
 
'   Update de informatie en opslaan
    Counter = Counter + 1
   
    LastOpen = Date & " " & Time
    SaveSetting "XYZ Corp", "Budget", "Count", Counter
    SaveSetting "XYZ Corp", "Budget", "Opened", LastOpen
End Sub
 
Hallo Harry,

nog een vraagje, als dat mag?
Wat mij opvalt is dat als ik het bestand open;
ik de tijd van het huidige openen te zien krijg?
Ik dacht dat ik dan ook de tijd van de laatste (een na laatste) opening te zien zou krijgen?
Of heb ik iets gemist?

Groet,

Eefje
 
Ik denk dat je onderstaande gemist hebt.
Hier rood gemarkeerd.
Code:
Msg = "Goede" & dagdeel & vbCr & vbCr & UCase(gebruiker) & "," & _
    vbCr & vbCr & "dit bestand is " & Counter + 1 & " keer geopend " & _
    vbCr & vbCr & " de laatste keer was op:  " & Date & vbCr & vbCr & " om " & [COLOR=#ff0000]LastOpen
[/COLOR]    MsgBox Msg, vbInformation, ThisWorkbook.Name
 
Hallo Harry,

als ik "lastOpen" toevoeg krijg ik zowel de datum als de tijd dubbel te zien!?
Hoe kan ik onderstaande zo aanpassen, dat ik de in de code staande (datum en tijd) opmaak kan behouden?

Code:
[COLOR="#FF0000"]Msg = "Goede" & dagdeel & vbCr & vbCr & UCase(gebruiker) & "," & _
    vbCr & vbCr & "dit bestand is " & Counter + 1 & " keer geopend " & _
    vbCr & vbCr & "de laatste keer was op:  " & vbCr & vbCr & Format(Date, "dddd dd mmmm yyyy") & vbCr & vbCr & "om " &[/COLOR] [COLOR="#0000FF"]LastOpen[/COLOR] & [COLOR="#FF0000"]Format(Time, "hh:mm") & " uur"
    MsgBox Msg, vbInformation, ThisWorkbook.Name[/COLOR]

Groetjes,

Eefje
 
Sorry Eefje,

Was me niet eens opgevallen.:o
Code:
Msg = "Goede" & dagdeel & vbCr & vbCr & UCase(gebruiker) & "," & _
    vbCr & vbCr & "dit bestand is " & Counter + 1 & " keer geopend " & _
    vbCr & vbCr & " de laatste keer was op: " & LastOpen
    MsgBox Msg, vbInformation, ThisWorkbook.Name
 
Hoi Harry,

daar ben ik weer, is er dan geen mogelijkheid om LastOpen met de volgende opmaak weer te geven?

Code:
Format(Date, "dddd dd mmmm yyyy") & vbCr & vbCr & "om " & Format(Time, "hh:mm") & " uur"

Groetjes,

Eefje:o
 
Hoi Eefje,

Uiteraard wel.
Werkt pas na de tweede keer workbooks_open

Code:
[COLOR=#ff0000]LastOpen = Format(Date, "dddd dd mmmm yyyy") & vbCr & vbCr & "om " & Format(Time, "hh:mm") & " uur" 'Date & " " & Time
[/COLOR]    SaveSetting "XYZ Corp", "Budget", "Count", Counter
    SaveSetting "XYZ Corp", "Budget", "Opened", LastOpen
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan