• 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 Datum automatisch invullen in userform

Status
Niet open voor verdere reacties.

patrixweb

Gebruiker
Lid geworden
21 sep 2010
Berichten
105
Hallo Forumleden,

Ik ben een soort van database aan het maken voor een kleine afdeling. Nu kom ik maar niet achter de vba code om een datum (van vandaag) automatisch te laten invullen in mijn userform. Tevens zou ik ook graag bij het juist invullen van een personeelsnummer de voor- en achternaam automatisch in de userform laten vullen.

Wie kan mij helpen aan de vba code?

Bij voorbaat hartelijk dank!

Bekijk bijlage Voorbeeld01.xlsm

Gr. Patrick
 
Dit achter je Userform:
Code:
Private Sub UserForm_Initialize()
    Txtdatum1.Text = Date
    Txttijdstip = Format(Time, "hh:mm")
End Sub
 
Laatst bewerkt:
Hallo edmoor,

Dank je wel...precies wat ik zocht..(ik heb mij echt blind gestaard)

Heb ik misschien ook de vba code voor de 2de vraag?? #DTV ;-)
 
Als antwoord op je vraag, ja, die heb je nu wel :P
Code:
Private Sub Txtpersnr_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    With Sheets("Personeel").Range("A:A")
        Set prs = .Find(What:=Txtpersnr.Text, After:=.Range("A1"), LookIn:=xlValues, LookAt:=xlWhole)
    End With
    If Not prs Is Nothing Then
        Txtvoornaam.Text = Range(prs.Address).Offset(, 1)
        Txtachternaam.Text = Range(prs.Address).Offset(, 2)
    Else
        MsgBox "Onjuist personeelsnummer", vbCritical + vbOKOnly
        Cancel = True
    End If
End Sub
 
Laatst bewerkt:
Hallo Edmoor,


Ik heb de codes toegevoegd en tijd e.d. werkt maar het tweede gedeelte niet. De code pakt hij alleen in et VBA omgeving. Zodra ik hem live test dan pakt hij alleen de gegevens in sheet waar de userform op dat moment is.

Als ik op melding klik dan pakt hij de tijd en datum wel maar het zoeken naar personeelsnummer niet..moet er misschien nog een verwijzing in naar een sheet?
 

Bijlagen

Inderdaad. Slip Of The Finger ;)
Code:
Private Sub Txtpersnr_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    With Sheets("personeel").Range("A:A")
        Set prs = .Find(What:=Txtpersnr.Text, After:=.Range("A1"), LookIn:=xlValues, LookAt:=xlWhole)
        If Not prs Is Nothing Then
            Txtvoornaam.Text = .Range(prs.Address).Offset(, 1)
            Txtachternaam.Text = .Range(prs.Address).Offset(, 2)
        Else
            MsgBox "Onjuist personeelsnummer", vbCritical + vbOKOnly
            Cancel = True
        End If
    End With
End Sub

En je aanname was correct :thumb:
 
Laatst bewerkt:
Super dank je wel...het is gelukt...Ik heb de code nog iets bij moeten werken maar dat is een detail :-D

Private Sub Txtpersnr_Exit(ByVal Cancel As MSForms.ReturnBoolean)
With Sheets("personeel").Range("A:A")
Set prs = .Find(What:=Txtpersnr.Text, After:=.Range("A1"), LookIn:=xlValues, LookAt:=xlWhole)
If Not prs Is Nothing Then
Txtvoornaam.Text = .Range(prs.Address).Offset(, 1)
Txtachternaam.Text = .Range(prs.Address).Offset(, 2)
Else
MsgBox "Onjuist personeelsnummer", vbCritical + vbOKOnly
Cancel = True
End If
End with
End Sub

Nogmaals hartelijk dank!!
 
Je bedoelt die vet gedrukte End With?
Die staat er bij mij ook in.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan