Beste allen. Ik ben bezig om een GUI te maken van een formulier die ik al heb. Voor zo ver stelt het weinig voor en werkt dit gedeeltelijk.
Alle gegevens worden goed in de textboxen van het formulier gezet. Tot zover gaat het goed.
Waar ik vast loop is bij het wegschrijven van gegevens en om precies te zijn van percentages vanuit textbox10 naar een cel op een werkblad. Die cel heeft al de indeling 0,00%.
Na het laden staat er in textbox10 bijvoorbeeld 10,00%.
Ga ik nu gegevens aanpassen en ik laat het % teken achter de waarde in textbox10 staan dan krijg ik bij het wegschrijven een foutmelding: Typen komen niet overeen. Haal ik het % weg dan loopt de code door en worden er gegevens gewijzigd.
Ik mag kennelijk geen % teken gebruiken.
Deze foutmelding volgt als ik textbox10 leeg laat of als er een waarde in staat als bijvoorbeeld 10,00%.
Het laden van gegevens gaat via code:
Het wegschrijven gaat middels de coderegel:
Kennelijk werkt de boel bij percentages even anders. Wat ik ook doe ik krijg niet wat ik wil krijgen.
Alle gegevens worden goed in de textboxen van het formulier gezet. Tot zover gaat het goed.
Waar ik vast loop is bij het wegschrijven van gegevens en om precies te zijn van percentages vanuit textbox10 naar een cel op een werkblad. Die cel heeft al de indeling 0,00%.
Na het laden staat er in textbox10 bijvoorbeeld 10,00%.
Ga ik nu gegevens aanpassen en ik laat het % teken achter de waarde in textbox10 staan dan krijg ik bij het wegschrijven een foutmelding: Typen komen niet overeen. Haal ik het % weg dan loopt de code door en worden er gegevens gewijzigd.
Ik mag kennelijk geen % teken gebruiken.
Deze foutmelding volgt als ik textbox10 leeg laat of als er een waarde in staat als bijvoorbeeld 10,00%.
Het laden van gegevens gaat via code:
Code:
Private Sub CommandButton1_Click()
If ComboBox1 = vbNullString Or TextBox1 = vbNullString Or TextBox1.Text = A Then GoTo Invoer
On Error GoTo Product
kolnr = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
it = WorksheetFunction.Match(TextBox1, Sheets("Materiaallijst").Columns(6), 0)
TextBox2 = "Rij " & it
For i = 3 To 12
Me("textbox" & i) = Cells(it, kolnr(i - 2))
Next
TextBox9 = Format(TextBox9, "€ 0.00")
TextBox10 = Format(TextBox10, "0.00%")
TextBox11 = Format(TextBox11, "€ 0.00")
TextBox12 = Format(TextBox12, "€ 0.00")
Application.ActiveWindow.ScrollRow = it
Exit Sub
Het wegschrijven gaat middels de coderegel:
Code:
Private Sub CommandButton3_Click()
'On Error Resume Next
With Sheets("Materiaallijst")
Cells(it, 1).Resize(, 10) = Array(TextBox3, TextBox4, TextBox5, TextBox6, TextBox7, TextBox8, CDbl(TextBox9),
CDbl(TextBox10) / 100, CDbl(TextBox11), CDbl(TextBox12))
End With
MsgBox ("Gegevens zijn aangepast"), vbOKOnly, ""
End Sub
Kennelijk werkt de boel bij percentages even anders. Wat ik ook doe ik krijg niet wat ik wil krijgen.
Laatst bewerkt: