Melding Fout 6 tijdens uitvoering Overloop

Status
Niet open voor verdere reacties.

JohnSnoei

Gebruiker
Lid geworden
25 jul 2023
Berichten
30
Bij het invullen van meer dan 5 karakters in TextBox1 krijg ik "Fout 6 tijdens uitvoering Overloop" op onderstaande VBA code. Als je foutopsporing aanklik stop hij bij "id= Wijzigen.TextBox1.Value". Kan iemand mij vertellen wat er fout is aan de Code

Sub GetDataW()
With Sheets("Data")
If IsNumeric(Wijzigen.TextBox1.Value) Then
flag = False
i = 0
id = Wijzigen.TextBox1.Value
Do While Cells(i + 1, 1).Value <> ""
If Cells(i + 1, 1).Value = id Then
flag = True
For j = 2 To 22
Wijzigen.Controls("TextBox" & j).Value = Cells(i + 1, j).Text
Next j
End If
i = i + 1
Loop
If flag = False Then
For j = 2 To 22
Wijzigen.Controls("TextBox" & j).Value = ""
Next j
End If
Else
ClearFormW
End If
End With
End Sub
 
Laatst bewerkt:
Heb je wel een userform dat Wijzigen heet?
Plaats een voorbeeld document.

Zet ook code die je hier plaatst in codetags.
Heb je echt alles zo strak onder elkaar staan zonder inspringpunten?
 
Je hebt ID als Integer gedeclareerd, en dat moet het binnen het getalbereik -32768 <> 32768 liggen
 
Laatst bewerkt:
Maak daar 32767 van ;)
 
Oke weer wat geleerd, ik heb hem nu als Long gezet en dat gaat goed. Thanks
 
Een 0 telt ook mee, vandaar.
 
Je doet er veel verstandiger aan in plaats van Textbox1 een combobox (Style=2) te gebruiken.
Die vul je zó:

Code:
Private Sub Userform_initialize()
  Combobox1.List =Blad3.cells(1).currentregion.value
End Sub

Als je een 'nummer' hebt geselecteerd:
Code:
Private Sub Combobox1_change()
  If combobox1.listindex>-1 then
    for j=10 to 21
      Me("Textbox" & j)=Combobox.column(j)
    next 
  end if
End Sub

Meer heb je niet nodig en er is ook geen enkele interaktie met het werkblad nodig. Alles gebeurt in het werkgeheugen.

Deze aanpak tref je ook aan in https://www.snb-vba.eu/VBA_Userform_in_database.html

NB Op de startpagina staat een wel erg storende taalfout: het voltooid deelwoord van ontwikkelen is ontwikkeld met een d aan het eind.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan