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

Dubbelklik voor datum vandaag

Status
Niet open voor verdere reacties.

kepuut

Gebruiker
Lid geworden
18 jan 2013
Berichten
16
Hallo,

Hoe kan ik ervoor zorgen dat wanneer ik dubbel klik op een cel de datum van vandaag verschijnt (dus zonder gebruik te maken van een snelkoppeling op het toetsenbord)?

Groet
 
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    Target.Value = Date
End Sub
 
Hmmm het werkt niet bij mij. Kan het bestand wel openen maar zie geen code :)
 
Heb je wel eerst op Bewerken inschakelen geklikt als daar om wordt gevraagd?
Niks ten nadele van wieter trouwens, maar die van Rudi vind ik beter.
 
Laatst bewerkt:
Nee de optie tot bewerken krijg ik niet, ik denk dat mijn Excel 2007 het bestand niet volledig kan openen. Als je me ook nog zou uitleggen hoe en waar ik die code moet invoeren zou ik heel blij zijn (nog veel te leren).
 
Druk op ALT+F11 om in de macro editor te komen.
 
Hmm waarschijnlijk toch iets ingewikkelder dan gedacht, in ieder geval voor een macro leek.
Wieter, dank voor je bestand. Ik kan het wel openen maar krijg de melding: Visual Basic macro's werken niet in Office 2008 voor Mac. Vervolgens werkt het dubbelklikken (weer) niet.
 
Tsja, dat het voor een Mac is had je er niet bij verteld.
 
Je zal moeten upgraden naar een nieuwere versie want in Mac 2008 worden macro's niet ondersteund.
 
Bedankt allen! Op mijn werk lukt het wel en is het me gelukt met behulp van de code van Wieter(Rudi, jouw code doet het niet?). Nu wil ik nog een bepaald aantal kolommen instellen die elk een stuk of 300 cellen hebben die dmv dubbelklik gevuld kunnen worden met de datum van vandaag, maar dit lukt me nog niet. Iemand?
 
Voor bv kolommen 5 tem 7
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    If Target.Column >= 5 And Target.Column <= 7 Then
        Target.Value = Date
    End If
End Sub
 
Hmm die krijg ik niet ingesteld. Kan ik het ook in onderstaande formule integreren? Ik zou graag vanaf A4 t/m N280 willen instellen.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Zet in B14 de datum van vandaag na dubbelklik
Dim t As Range, r As Range, rC As Range
Set t = Target
Set rC = t.Offset(0, 0)
Set r = Range("B14")
If Intersect(t, r) Is Nothing Then Exit Sub
v = t.Value
If IsEmpty(rC) Then
Application.EnableEvents = False
rC.Value = Date
Application.EnableEvents = True
End If
If t.Value < 1 Then Exit Sub
Application.EnableEvents = False
rC.Value = Date
Application.EnableEvents = True
End Sub
 
zo iets?
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("A4:N280")) Is Nothing Then Target = Date
' en hier eventueel : cancel= true
End Sub
 
Laatst bewerkt:
Je bent blijkbaar erg geïnteresserd in het gebruik van macro's. Begin bij het begin en lees een basisboek over VBA van voor naar achter door.
 
Code voor datum na dubbelklik in A4:N280

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim t As Range, r As Range, rC As Range
Set t = Target
Set rC = t.Offset(0, 0)
[COLOR="#FF0000"]Set r = Range("A4:N280")[/COLOR]
If Intersect(t, r) Is Nothing Then Exit Sub
v = t.Value
If IsEmpty(rC) Then
    Application.EnableEvents = False
    rC.Value = Date
    Application.EnableEvents = True
End If
If t.Value < 1 Then Exit Sub
Application.EnableEvents = False
rC.Value = Date
Application.EnableEvents = True
End Sub
 
Laatst bewerkt:
Waarom al die onnodige variabelen in je code ?
Het enige doel dat ze hebben is extra regels toevoegen aan de macro.
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    If Not Intersect(Target, Range("A4:N280")) Is Nothing Then
        Target.Value = IIf(Target <> "", Target.Value, Date)
    End If
End Sub
 
Laatst bewerkt:
Slechte gewoonte Rudi.
Ik begin altijd met variabelen te deklareren, ik moet dat eens afleren.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan