3 textboxen vullen middels Split functie

Status
Niet open voor verdere reacties.

Sansje

Gebruiker
Lid geworden
21 dec 2014
Berichten
50
Ik heb 3 textboxen. Textbox 2 tot en met 4.

Textbox 2 geeft het dagnummer
Textbox 3 geeft het maandnummer
Textbox 4 geeft het jaarnummer

Ik dacht het met onderstaande code op te lossen, maar waar ga ik verkeerd?

Code:
    sq = Split(Date, "-")
    For i = 0 To UBound(sq)
    For j = 1 To 3
        TextBox(j).Value = sq(i)
    Next j
    Next i

Anders moet ik de verschillende textboxen vullen aan de hand van TextBox2.Value = sq(0), TextBox3.Value = sq(1) etc.
Dit lukt wel, maar ik vind het rommelig staan???

Wederom bedankt

Ps. Het is om een urenbrief te maken. Bovenstaande gegevens moeten vooraf, via Initialize, zijn ingevuld en moeten ook nog kunnen worden gewijzigd als dat nodig is.
 
Laatst bewerkt:
Een datum is een getal, geen tekst. En een stevig getal ook (42382 voor vandaag). Je zult dus functies moeten gebruiken. Iets als:
Code:
Textbox2 = Day(Date())
Textbox3 = Month(Date())
Textbox4 = Year(Date())
 
Sansje,

Het kan aan mij liggen, maar ik zie het nut van de split functie hier niet.

Wat OctaFish aangeeft, wil ik niet afwijzen. Echter mijn mening voor wat betreft de reactie van OctaFish, is dat het in deze niet uitmaakt. Het mag dan een datum mag dan een zeer sterk getal zijn, maar je kunt hem wel splitsen als hoe jij dat doet.

Om terug te komen op het nut welke ik hier niet zie voor de Split.

Schrijf gewoon als hoe OctaFish hem adviseert.

Dat is vele malen simpeler en makkelijk leesbaar dan het gebruik van Split.
 
Code:
Private Sub UserForm_Initialize()
    sq = Split(Date, "/")
    For i = 2 To 4
        Me("TextBox" & i) = sq(i - 2)
    Next
End Sub
 
Waarom zou je een code gebruiken van 4 regels als je het met 3 afkan? I don't see the point... Nog afgezien van de nodeloos ingewikkelde techniek...
 
Dat geldt natuurlijk ook voor die overbodige haken ...:P

Code:
Textbox2 = Day(Date)
Textbox3 = Month(Date)
Textbox4 = Year(Date)

of bedoel je dit ?;)

Code:
Private Sub UserForm_Initialize()
    For i = 2 To 4
        Me("TextBox" & i) = split(date,"/")(i - 2)
    Next
End Sub
 
Laatst bewerkt:
Heb je gelijk in; ik kopieer nog wel eens wat uit een Access query :).
 
Het hoe of wat is in deze niet aan mij besteed.;)
Het was er mij enkel om te doen om Sansje te tonen hoe haar denkwijze nu werkelijk neergeschreven moest worden.
En inderdaad, 1 regel minder is 1 regel minder.:thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan