Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1116to1120
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
Inhaltsverzeichnis

Frage an die Profis

Frage an die Profis
Dirk
Schönen Guten Abend,
ich habe eine Abfrage mit einer Textbox versehen, welche eine Meldung ausgibt, sobald kein Komma oder Zahl eingegeben wird:

Function My_IsNumeric(Txt As String) As Boolean
If (Txt  "") And (Not IsNumeric(Txt) Or InStr(Txt, ".")  0) Then
My_IsNumeric = False
Else
My_IsNumeric = True
End If
End Function
Private Sub TextBox2_Change()
Dim Txt As String
Txt = TextBox2.Text
If My_IsNumeric(Txt) Then
Exit Sub
Else
Beep
MsgBox "Bitte eine gültige Zahl eingeben (Komma, kein Punkt)!", vbCritical
TextBox2.Text = ""
End If
End Sub
Jetzt würde ich diese aber gerne mit Einheit angeben wie folgt:
Private Sub TextBox3_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Dim k As Integer
k = TextBox2.Text
k = Replace(k, " [N/kg]", "")
k = s & " [N/kg]"
TextBox2 = k
End Sub
Jetzt weiss ich nicht genau, wie ich die Ausnahme [N/kg] in die Abfrage oben hineinwurschteln muss?
Schöne Grüße,
Dirk

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Frage an die Profis
19.11.2009 20:13:24
Dirk
Die PrivateFunction KeyUp ist natürlich TextBox2!
AW: Frage an die Profis
19.11.2009 21:42:27
Josef
Hallo Dirk,
ich mach das so, keine Meldung, sondern nur Zahlen und Komma zulassen und der Zusatz wird beim Verlassen der TB angehängt.
Private Sub TextBox3_Enter()
  TextBox3 = Replace(TextBox3, " [N/kg]", "")
End Sub

Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  TextBox3 = Replace(TextBox3, " [N/kg]", "") & " [N/kg]"
End Sub

Private Sub TextBox3_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
  Select Case KeyAscii
    Case 44, 46 'Komma und Punkt(wird auch zu Komma)
      If InStr(1, TextBox3, Chr(44)) = 0 Then
        KeyAscii = 44
      Else
        KeyAscii = 0
      End If
    Case 48 To 57 'Zahlen
    Case Else
      KeyAscii = 0
  End Select
End Sub


Gruß Sepp

Anzeige
AW: Frage an die Profis
21.11.2009 11:43:37
Dirk
Hallo Sepp,
vielen lieben Dank!
Grüße, Dirk
Wer sucht im Archiv nach "Profis"?
20.11.2009 00:47:44
Jörg-HH
Hallo Dirk,
das Archiv ist 'ne tolle Sache und kann eine Menge Fragen im Forum ersparen. Geht aber nur, wenn die Betreffs entsprechend benannt werden...
Einfach "Userform" o.ä. im Betreff ist aber auch schon ungeeignet. Davon gibt es zig Beiträge - wer will die alle einzeln öffnen, um zu gucken, ob vielleicht die eigene Frage damit beantwortet wird...? Ein Betreff "dreieckige Userform erstellen" wäre da schon sinnvoller.
Wenn dein Betreff zB. Begriffe wie Textbox, Einheit oder so enthielte, könnte deine Frage ein Treffer bei einer Suche sein, und spätere Generationen von Fragern hätten auch was von Sepps Antwort. So aber wird deine Frage im Nirwana des Archivs verschwinden und die Antwort wird niemandem mehr nützen.
Schönen Abend - Jörg
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige