• 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.

VBA Code werkt niet meer

  • Onderwerp starter Onderwerp starter p4r3
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

p4r3

Gebruiker
Lid geworden
17 feb 2017
Berichten
21
Beste iedereen,

Ik heb gister code (zie onderin post) van internet gehaald en gebruikt in een Excel-bestand. Dit heb ik geplaatst in 'blad1, verder heb ik niets in Thisworkbook of module gezet. Dit werkte prima.
Nadat ik zojuist in een ander blad in VBA wat heb getypt en vervolgens weer heb verwijderd (er staat nu alleen code in blad1), werkt de code in blad1 niet meer. Er komt niet meer automatisch datum en tijd tevoorschijn indien er wat in kolom 5 wordt getypt. Andere soorten code doen ook niets meer.

Waarschijnlijk is het iets simpels wat ik over het hoofd zie, maar ikzelf heb weinig verstand van VBA. Kan het zijn dat ik per ongeluk iets heb uitgeschakeld waardoor het niet meer werkt? Excel geeft aan dat de code zelf in orde is.


Private Sub Worksheet_change(ByVal Target As Range)

If Target.Column = 5 Then
Application.EnableEvents = False
Cells(Target.Row, 7).Value = Date + Time
Application.EnableEvents = True
End If

If Target.Column = 6 Then
Application.EnableEvents = False
Cells(Target.Row, 8).Value = Date + Time
Application.EnableEvents = True
End If

End Sub


Alvast bedankt!
 
Laatst bewerkt:
De oorzaak van je probleem kan ik zo niet aangeven, maar ik zou de code sowieso anders schrijven:
Code:
Private Sub Worksheet_change(ByVal Target As Range)
    If Target.Column = 5 Or Target.Column = 6 Then
        Application.EnableEvents = False
        Cells(Target.Row, Target.Column + 2).Value = Now
        Application.EnableEvents = True
    End If
End Sub
 
Gebruik svp code markeringen (tags)


dit is genoeg:

Code:
Private Sub Worksheet_change(ByVal Target As Range)
   If Target.Column = 5 or Target.Column = 6 Then target.offset(,2)=now
End Sub
 
Application.enableevents staat op False.

Sluit je werkboek en Excel af, en heropen het, of draai een keer onderstaande code.
Code:
[COLOR=#333333]
sub toemaar()
Application.EnableEvents = True
end sub[/COLOR]
 
Het werkt weer! Allen hartstikke bedankt voor de snelle reacties en de verbeterde code. Het blijkt dus inderdaad dat enableEvents op false stond hehe. Weer iets geleerd!

Nogmaals bedankt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan