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

Datum van formulier VB naar Excel gaat mis

Status
Niet open voor verdere reacties.

Mellie1991

Gebruiker
Lid geworden
8 sep 2014
Berichten
8
Ik heb een vraag over een manier om de datum invoer goed te laten verlopen.
Ik heb een 'simpel' formulier gemaakt, om data in te kunnen voeren.

-----------------------------------------

Dit is mijn code:

Code:
Private Sub cmdtoevoegen_click()
Dim irow As Long
Dim ws As Worksheet
Set ws = Worksheets("database")

irow = ws.Cells(Rows.Count, 1) _
.End(xlUp).Offset(1, 0).Row

ws.Cells(irow, 1).Value = Me.txtdatum.Value
ws.Cells(irow, 2).Value = Me.txtmachine.Value
ws.Cells(irow, 3).Value = Me.txtkant.Value
ws.Cells(irow, 4).Value = Me.txtgoed.Value
ws.Cells(irow, 5).Value = Me.txtfout.Value

Me.txtmachine.Value = ""
Me.txtkant.Value = ""
Me.txtgoed.Value = ""
Me.txtfout.Value = ""
Me.txtmachine.SetFocus
End Sub
Private Sub cmdsluiten_click()
Unload Me
End Sub
Private Sub UserForm_Click()
End Sub
--------------------------------------------------------

Ik heb problemen met de invoer van de datum, ik wil graag in het formulier dat de datuminvoer
d-m-yy / dd-mm-yyyy en alles wat er tussen in zit ingevoerd kan worden...

Het probleem, zodra ik het toevoeg wordt het in excel mm-dd-yyyy (en varianten) de Amerikaanse manier dus... (mijn instellingen qua datumnotatie en taal in excel staan allemaal 'goed op Nederlands', zoals het hele bedrijf)

Ik lees heel veel problemen en oplossingen op verschillende forums om in de code dit vast te zetten, maar kom er niet uit hoe ik dit in mijn eigen code kan toepassen... (ben het mezelf aan het aanleren...)

Kan iemand mij helpen? het gaat om het invoervak "txtdatum"

Knipsel.PNG
Knipsel2.PNG
 
Laatst bewerkt:
gebruik svp code tags rondom VBA code in een bericht en cdate() in je macro.
 
Dank,

maar waar plaats/gebruik ik die cdate() ???

(ben echt nog maar beginner :s )
 
Code:
Private Sub c_toevoegen_click()
    Sheets("database").cells(rows.count,1).end(xlup).offset(1).resize(,5)=array(cdate(txtdatum.Value),txtmachine.Value,txtkant.Value,txtgoed.Value,txtfout.Value)
end sub
 
Bedankt :D

Probleem opgelost,

uiteindelijke code is geworden:

Code:
Private Sub cmdtoevoegen_click()
    Sheets("database").Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(, 5) = Array(CDate(txtdatum.Value), txtmachine.Value, txtkant.Value, txtgoed.Value, txtfout.Value)

Me.txtmachine.Value = ""
Me.txtkant.Value = ""
Me.txtgoed.Value = ""
Me.txtfout.Value = ""
Me.txtmachine.SetFocus

End Sub

Private Sub cmdsluiten_click()
Unload Me
End Sub

Private Sub UserForm_Click()

End Sub

Doet de datum nu helemaal goed :D
 
Komt er in het datumveld iets anders te staan dan de datum van vandaag ?
 
Ja,

als ik bijv 5-1-14 invoer

dan komt er nu netjes 05-01-14 in excel te staan, en herkent deze ook als datum 5-1-2014
 
Je begrijpt me verkeerd:

als bij de invoer alleen de dag van vandaag moet worden ingevuld kan dat ook zonder textbox met een datum

Code:
Private Sub c_toevoegen_click()
    Sheets("database").cells(rows.count,1).end(xlup).offset(1).resize(,5)=array(Date,txtmachine,txtkant,txtgoed,txtfout)
end sub
 
Ah ok zo,

Er moet juist ook een andere datum ingevuld kunnen worden.
De datum van meten moet worden ingevuld, maar het kan best zijn dat de gegevens later pas worden ingevoerd.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan