Ich arbeite auf einem Windows XP Professional mit Office 2000
Mein Problem sieht folgendermassen aus:
Eine UserForm die zur Dateneingabe dient, beinhaltet eine Textbox, die mit einer speziellen Nummer im Format xxxxx.xx.xx.xx ausgefüllt werden soll (die Nummer ist immer genau in diesem Format - nur nummerische Eingabe). Ich konnte bisher die Dateneingabe auf Zahlen zwischen 0 und 9 sowie einem Punkt (.) beschränken - der Code dazu:
Private Sub PSPAlt_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57
Case 46
Case Else
KeyAscii = 0
End Select
End Sub
Wie kann ich beim verlassen der Textbox noch überprüfen, ob das oben genannte Format eingehalten ist? Es soll eine MsgBox erscheinen, die auf eine falsche Eingabe hinweist und dann automatisch die Box leert.
Die noch genialere Lösung wäre, wenn nur nummerische Eingabe möglich wäre, die dann automatisch in das geforderte Format übertragen würde!
Ich würde 4 Boxen vorsehen, die jeweils nur Zahlen zulassen. Die Punkte als Label dazwischen gemalt und bei der Übergabe alles zusammengesetzt. Dann kannst du auch die Anzahl der Zeichen der einzelnen Boxen „vorab“ prüfen, wenn immer alle vollständig gefüllt sein sollen.
Herzlichen Dank für deinen Code. Ich habe den soeben ausprobiert!
Allerdings kommt bei dem untenstehenden Code (siehe Fett markierte Stelle) eine Fehlermeldung: Diese sagt: Fehler bei Kompilieren - Projekt oder Bibliothek nicht gefunden.
Hast du eine Idee?
Allerdings kommt bei dem untenstehenden Code (siehe Fett
markierte Stelle) eine Fehlermeldung: Diese sagt: Fehler bei
Kompilieren - Projekt oder Bibliothek nicht gefunden.
Hast du eine Idee?
Hi Andre,
probiers mal so:
TextBox1.Text = VBA.Mid…
wenns dann klappt, fehlt dir ein Verweis.
Gruß
Reinhard
Sorry, dass ich mich erst jetzt melde - dafür komme ich mit
einer positiven Rückmeldung! Es hat geklappt mit dem
VBA-Zusatz!
Hi André,
falls du mir mal in St.gallen vor die Füße latschst kostet dich das ne OBRA (falls falsch geschrieben, ich meine diese Riesenwurst*gg), Senf zahl ich selbst :-9
Alsoooo, wenn es mit Mid nicht klappt und VBA.Mid klappt fehlt ein Verweis. Warum fragste mich nicht welcher? Den bindest du einmalig über Extras–Verweise ein und du brauchst dann immer nur Mid zuschreiben und nicht VBA.Mid.
Aber solange du nicht fragst, sage ich dir nicht welcher Verweis fehlt *grins*
Was auch hauptsächlich daran liegt, dass ichs nicht auswendig weiß.
Hilfreich wäre dafür, du schaust bei dir unter Extras–Verweise (Im Editor) und postest hier welche du hast. Dnn schaue ich welche ich habe und kann dir sagen welcher bei dir fehlen könnte.
Und da ich nur so 10 Verweise habe kriegen wir das schnell raus.
Gruß
Reinhard
falls du mir mal in St.gallen vor die Füße latschst kostet
dich das ne OBRA (falls falsch geschrieben, ich meine diese
Riesenwurst*gg), Senf zahl ich selbst :-9
St. Gallen ist nicht die Region, wo ich mich oft aufhalte. Aber falls sich dort unsere Wege kreuzen, geht das klar mit der Wurst!
Alsoooo, wenn es mit Mid nicht klappt und VBA.Mid klappt fehlt
ein Verweis.
Ich dachte es funktioniert doch - da habe ich mir gar nicht weitere Gedanken gemacht, dass es mit einem kleinen Ausflug in die Verweise noch einfacher gehen könnte…
Meine Verweise sind die folgenden:
Visual Basic for Applications
Microsoft Excel 9.0 Object Library
Microsoft Office 9.0 Object Library
Microsoft Active X Data Objects 2.5 Library
Microsoft DAO 3.6 Objects Library
Meine Verweise sind die folgenden:
Visual Basic for Applications
Microsoft Excel 9.0 Object Library
Microsoft Office 9.0 Object Library
Microsoft Active X Data Objects 2.5 Library
Microsoft DAO 3.6 Objects Library
Hallo André,
ich habe gesetzt:
Visual Basic For Applications
Microsoft Excel 9.0 Object Library
OLE Automation
Microsoft Office 9.0 Object Library
Microsoft Forms 2.0 Object Library
Da ich beim Umschalten von Editor zu w-w-w immer schon die namen vergesse habe ich mir ein makro geschrieben, dass die nasmen auflistet:
Sub verweise()
Dim n As Integer
With ThisWorkbook.VBProject.References
For n = 1 To .Count
Cells(n, 1) = .Item(n).Description
Next
End With
End Sub
Leider kann ich zum Austesten nicht einfach bestimmte Verweise abschalten, da kommt die Meldung dass sie benutzt werden, nehme an durch meine Personl.xls.
Gruß
Reinhard
Endlich bin ich dazu gekommen, deine Antwort zu studieren. Ich habe nun OLE Automation auch noch aktiviert. Ich schaue mal, ob sich damit der Zusatz VBA erübrigt.
Ich wünsche dir eine gute Woche.
Gruss und Danke
André