Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
736to740
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
736to740
736to740
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler im VBA Code

Fehler im VBA Code
03.03.2006 07:35:53
Josef
Hallo!
Bei untenstehendem Code wird, wenn ich in die Textbox11 eine 1 oder eine 9 eingebe, die Zahl als 001 oder 009 angezeigt.
Ich kann jedoch keine 10 z.B. eingeben.
Möchte ich eine 10 eingeben so erhalte ich als Ergebnis eine 001.
Es sollte jedoch der Wert 010 eingetragen werden.
Gäbe es z.b. einen Wert von 102 dann soll auch 102 eingetragen werden.
Wo habe ich hier bitte im Code den Fehler?
Danke
Josef

Private Sub TextBox11_Change()
TextBox11 = Format(Application.WorksheetFunction.Substitute(TextBox11, "0", ""), "000")
If IsNumeric(TextBox11.Text) Then
TextBox12.Text = Format(Val(TextBox11.Text) * 2, "000")
Else
TextBox12.Text = ""
End If
End Sub

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler im VBA Code
03.03.2006 08:02:36
Worti
Hallo Josef,
mit Application.WorksheetFunction.Substitute(TextBox1, "0", "") haust du dir deine Nullen aus der Textbox, also ergibt sich bei 10 zunächst 1 und über die Format-Anweisung dann 001, bei 102 entsprechend 12 und nach Format-Befehl 012.
Gruß Worti
AW: Fehler im VBA Code
03.03.2006 08:07:51
Josef
Hallo Worti!
Danke für Deine Antwort.
Heißt praktisch, dass ich die WorksheetFunction.Substitute nicht nehmen kann. Bei welcher würde es denn dann bitte funktionieren, oder gibt es für dieses Problem keine Lösung?
Danke
Josef
AW: Fehler im VBA Code
03.03.2006 08:13:36
Worti
Hallo Josef,
was willst du denn erreichen?
Worti
AW: Fehler im VBA Code
03.03.2006 08:25:21
Josef
Hallo Worti!
Eine lösung habe ich bereits gefunden. Und zwar bis inkl. der Eingabe von 99.
In den Eigenschaften der TextBox nahm ich die 3 aus MaxLength heraus.
Den Fehler den ich jetzt noch habe ist der, was ist wenn ich jetzt eine dreistellige Zahl eingeben müßte? Also 100 oder 110 oder 120?
Da erhalte ich den Eintrag 001 oder 011 oder 012.
Eingetragen sollte aber 100 oder 110 oder 120 werden.
Josef
Anzeige
AW: Fehler im VBA Code
03.03.2006 08:36:20
Worti
Hallo Josef,
ich nehme an, du willst führende Nullen eliminieren. Das macht aber schon der FormatBefehl. Laß also Substitute weg und schreibe einfach
TextBox11 = Format(TextBox11, "000"), das sollte reichen.
Gruß Worti
AW: Fehler im VBA Code
03.03.2006 08:11:40
WernerB.
Hallo Josef,
versuche es doch mal so:

Private Sub TextBox11_Change()
TextBox11 = Format(Application.WorksheetFunction.Substitute(TextBox11, "0", ""), "000")
If IsNumeric(TextBox11.Text) Then
TextBox12.Text = Format(Val(TextBox11.Text) * 2, "000")
Else
TextBox12.Text = ""
End If
End Sub

Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Anzeige
AW: Fehler im VBA Code
03.03.2006 08:17:28
Josef
Hallo Werner!
Danke für Deine Antwort.
Wenn ich nicht irre, war dies der gleiche Code, bei dem ich diesen Fehler bekomme.(:
Josef
AW: Fehler im VBA Code
03.03.2006 08:31:34
WernerB.
Hallo Josef,
da hast Du natürlich recht, da ist mir ein böser Übertragungsfehler passiert.
Hier der (hoffentlich) richtige Code:

Private Sub TextBox11_Change()
TextBox11 = Format(Application.WorksheetFunction.Substitute(TextBox11, "", "0"), "000")
If IsNumeric(TextBox11.Text) Then
TextBox12.Text = Format(Val(TextBox11.Text) * 2, "000")
Else
TextBox12.Text = ""
End If
End Sub

Gruß
WernerB.
Anzeige
AW: Fehler im VBA Code
03.03.2006 08:36:00
Josef
Hallo Werner!
Besten Dank für Deine Lösung.
Wenn man in den Eigenschaften unter MaxLength die 3 entfernt, funktioniert jetzt alles bestens.
Danke auch an Worti
Josef

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige