Tekstvakproblemen

Status
Niet open voor verdere reacties.

DaveVdB

Gebruiker
Lid geworden
5 okt 2006
Berichten
5
Ik ben bezig met een formuliertje te maken om op een eenvoudige manier gegevens in te voeren in een excel file. Dit programma bestaat uit een aantal tekstvlakjes waar (mits de nodige beveiligingen) er werkuren kunnen inworden die dan in excel file worden opgeslagen.

Nu, momenteel loop ik vast op het probleem dat telkens als ik iets in een tekstvak wis of iets foutief invoer loopt mijn programma vast.

Het betreft over deze code: (en duid als fout de eerste 'If...' regel aan.
Private Sub txtShiftMaandag_Change()

'Wanneer de waarde tussen 0 en 13 ligt wordt het shifttype weergegeven, anders krijgt men een foutmelding
If 0 <= txtShiftMaandag.Text And txtShiftMaandag.Text <= 13 And txtShiftMaandag.Text <> Empty Then
txtShiftMaandagTekst.Value = Worksheets("Shift_types").Cells(txtShiftMaandag.Text + 2, 2).Value
Else
MsgBox ("Foutieve invoer. Dit shifttype bestaat niet!")
txtShiftMaandagTekst.Value = Empty
End If

'Beveiliging tegen foutieve invoer van weekendshiften tijdens de weekdagen
If txtShiftMaandag.Text = 4 Or txtShiftMaandag = 5 Then
MsgBox ("Foutieve invoer. Dit shifttype kan men niet op een weekdag invoeren!")
txtShiftMaandagTekst.Text = ""
End If

'Automatische invoer/beveiliging van werkuren bij speciale dagen
If txtShiftMaandag.Text = 6 Or txtShiftMaandag.Text = 7 Or txtShiftMaandag.Text = 8 Then
txtWerkurenMaandag.Text = 0
txtWerkurenMaandag.Enabled = False
Else
txtWerkurenMaandag.Enabled = True
End If

End Sub

Ik zit er al een tijdje aan te knoeien en kom er niet uit. Wie kan mij helpen?
 
misschien kun je
txtShiftMaandag.Text <> Empty
vervangen door
Not IsEmpty(txtShiftMaandag.Text)

Ik heb in het verleden ook wel eens problemen gehad als ik <> Empty gebruikte.
 
Bedankt voor de tip Jan. Helaas levert dit ook geen beter resultaat op.

Ik heb dat stukje van empty erbij gevoegd omwille van het feit dat ik zonder ook tegen dat probleem liep, maar dat was dus zonder resultaat. Ik hoop dat iemand raad weet want ben er al een tijdje aan bezig en geraak het behoorlijk moe.
 
Kun je het bestand (eventueel zonder of met fictieve gegevens) hier gezipt plaatsen?
Dat zoekt wat gemakkelijker
 
Sorry voor de late reactie, even heel druk geweest en in het weekend lag jammer genoeg de server eruit.

Ik zie je bestand in het rar bestand staan maar krijg het niet uitgepakt.
Heb het ook op een andere pc geprobeerd, wordt daar wel geopend maar macro loopt niet (formulier kan niet geopend worden, foutmelding bij UserForm.show)
Bestandje is vermoedelijk verminkt.
 
Tekstvakprobleem

De fout zit hem als het tekstvak niet is gevuld. Dan vergelijk je een getal met niets.

Wijzig je code alsvolgt:

If txtShiftMaandag.Text = Empty Then
MsgBox "Typ een getal groter of gelijk aan nul en kleiner dan 14"
elseIf txtShiftMaandag.Text >=0 And txtShiftMaandag.Text < 14 Then
txtShiftMaandagTekst.Value = Worksheets("Shift_types").Cells(txtShiftMaandag.Text + 2, 2).Value
Else
MsgBox ("Foutieve invoer. Dit shifttype bestaat niet!")
txtShiftMaandagTekst.Value = Empty
End If
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan