set.focus

Status
Niet open voor verdere reacties.

Joop555

Gebruiker
Lid geworden
8 jun 2012
Berichten
16
In mijn userform wil ik dat als er geen barcode is ingevoerd, dat het userform wordt leeggemaakt en daarna de cursor in de TextBox van de barcode komt te staan.
Ik hoopte dat onderstaande zou werken, maar de cursor staat daarna niet in de gewenste TextBox.

If barcode = "" Then

MsgBox ("Er is geen barcode ingevuld. Scan of voer alsnog een Barcode in"), vbCritical
barcode = Empty
y = Empty
z = Empty
barcode.SetFocus

Exit Sub
End If

Wat doe ik fout?

Joop
 
1. je gebruikt geen code tags rondom VBA code
2. je plaatst geen voorbeeldbestand

Je kunt het zo aanpakken:
zet in het userform 1 textbox en 1 frame.
Zet in het frame de velden die ingevuld moeten worden als er een barcode is ingevoerd.
Stel het frame in als onzichtbaar.
Maak de zichtbaarhied van het frame afhankelijk van de invoer in het tekstvak voor de barcode:

Code:
Private Sub txtBarcode_Change()
   Frame1.visible=txtbarcode.text<>""
end sub

Zolang het frame niet zichtbaar is, heeft txtbarcode altijd de focus.
 
SNP, Bedankt voor je antwoord.

Ik heb het volgende probleem en kom er dan met jou antwoord niet uit.
Na het invullen van de barcode moeten er nog andere gegevens worden ingevoerd en hoe mensen het voor elkaar krijgen, maar na het invoeren van de barcode en het oproepen van gegevens bij de barcode weten ze daarna de barcode te verwijderen en als men daarna op OK drukt, worden de gegevens weggeschreven zonder barcode. Daarom wil ik dat na het verlaten van de "TextBox barcode" en als deze textbox leeg is, dat de cursor na het leegmaken van alle velden terug gezet wordt in de "TextBox barcode"
 
Laatst bewerkt:
SNB,
Tís even anders dan ik het in gedachte had, maar wel een mooie optie.
Zal er verder mee aan de slag.
Bedankt voor je hulp.

Gr. Joop
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan