Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Prüfen, ob textbox.value ein String oder ein Integ

Forumthread: Prüfen, ob textbox.value ein String oder ein Integ

Prüfen, ob textbox.value ein String oder ein Integ
26.08.2002 14:10:03
Ronald
Gibt es eine Funktion, die mir einen Rückgabewert liefert der anzeigt, ob der Wert einer Variant-Variable ein String ist?
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Prüfen, ob textbox.value ein String oder ein Integ
26.08.2002 14:18:52
ANdreas
HAllo Ronald,

hier mal ein Beispielmakro, welches die Lösung verdeutlicht:

Viel Spaß,
Andreas

Re: Prüfen, ob textbox.value ein String oder ein Integ
26.08.2002 14:20:39
Axel
Hallo,

vielleicht kommst Du mit der IsNumeric()-Funktion schon weiter.

Allerdings werden hier auch Zahlen mit Nachkommastellen erkannt (deswegen auch IsNumeric() und nicht IsInteger())

Gruß
Axel


Anzeige
Anzeige

Infobox / Tutorial

Prüfen, ob textbox.value ein String oder ein Integer ist


Schritt-für-Schritt-Anleitung

Um zu überprüfen, ob der Wert einer textbox.value ein String oder ein Integer ist, kannst Du ein einfaches VBA-Makro verwenden. Hier ist ein Beispiel, wie Du dies umsetzen kannst:

  1. Öffne den VBA-Editor in Excel (Alt + F11).
  2. Füge ein neues Modul hinzu (Rechtsklick auf "VBAProject" > Einfügen > Modul).
  3. Kopiere und füge den folgenden Code in das Modul ein:
Function CheckValue(value As Variant) As String
    If IsNumeric(value) Then
        If Int(value) = value Then
            CheckValue = "Integer"
        Else
            CheckValue = "Numeric (mit Nachkommastellen)"
        End If
    ElseIf VarType(value) = vbString Then
        CheckValue = "String"
    Else
        CheckValue = "Unbekannter Typ"
    End If
End Function
  1. Speichere das Modul und schließe den Editor.

Jetzt kannst Du die Funktion CheckValue aufrufen, um den Typ des Wertes in einer Textbox zu überprüfen:

Dim result As String
result = CheckValue(Me.TextBox1.Value)
MsgBox "Der Wert ist: " & result

Häufige Fehler und Lösungen

  • Fehler: "Typ nicht definiert"

    • Lösung: Stelle sicher, dass Du den richtigen Datentyp in der Funktion verwendest. Variant ist eine gute Wahl, um unterschiedliche Typen zu akzeptieren.
  • Fehler: Die Funktion gibt immer "Unbekannter Typ" zurück

    • Lösung: Überprüfe, ob das textbox.value tatsächlich einen Wert enthält. Möglicherweise ist die TextBox leer oder der Wert wurde nicht korrekt übergeben.

Alternative Methoden

Eine andere Möglichkeit, um zu prüfen, ob textbox.value ein Integer oder ein String ist, ist die Verwendung der IsInteger-Funktion. Diese Funktion kann wie folgt genutzt werden:

If IsNumeric(Me.TextBox1.Value) Then
    If IsInteger(Me.TextBox1.Value) Then
        MsgBox "Der Wert ist ein Integer."
    Else
        MsgBox "Der Wert ist kein Integer, sondern eine Zahl mit Nachkommastellen."
    End If
Else
    MsgBox "Der Wert ist ein String."
End If

Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du die oben genannten Methoden in Deiner Excel-Anwendung verwenden kannst:

  1. Überprüfung des Wertes bei Schaltflächenklick:
Private Sub CommandButton1_Click()
    Dim result As String
    result = CheckValue(Me.TextBox1.Value)
    MsgBox "Der Wert in der Textbox ist: " & result
End Sub
  1. Direkte Verwendung in einer Bedingung:
If IsNumeric(Me.TextBox1.Value) And IsInteger(Me.TextBox1.Value) Then
    MsgBox "Der Wert ist ein Integer."
ElseIf VarType(Me.TextBox1.Value) = vbString Then
    MsgBox "Der Wert ist ein String."
End If

Tipps für Profis

  • Nutze die Option Explicit-Anweisung am Anfang jedes Moduls. Sie zwingt Dich dazu, alle Variablen zu deklarieren, was Fehler reduziert.
  • Verwende Debug.Print, um Werte während der Entwicklung im Direktfenster auszugeben. Das hilft Dir, den Fluss Deines Codes zu verstehen.
  • Berücksichtige die Verwendung von Trim für textbox.value, um sicherzustellen, dass führende oder nachfolgende Leerzeichen nicht die Auswertung beeinflussen.

FAQ: Häufige Fragen

1. Was ist der Unterschied zwischen IsNumeric und IsInteger in VBA?
IsNumeric prüft, ob ein Wert eine Zahl ist, einschließlich Zahlen mit Nachkommastellen. IsInteger prüft spezifisch, ob der Wert ein Integer ist.

2. Funktioniert dieser Code in allen Excel-Versionen?
Ja, die genannten Funktionen und der VBA-Code sind in allen gängigen Excel-Versionen verfügbar. Achte darauf, dass Du den VBA-Editor korrekt öffnest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige