Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Textfeld auslesen

Textfeld auslesen
29.08.2008 08:04:00
kutzmutz
Hallo liebe Experten,
wieder einmal benötige euch eure Hilfe!
Ich habe im Tabellenkopf meiner Tabelle ein Eingabe(=Text)feld. Wie kann ich dieses Feld auslesen, sprich wie kann ich den darin befindlichen Wert in eine Variable speichern?
Ich habe einige Dinge zu dem Thema im Internet gefunden, aber keiner dieser Einzeiler funktioniert bei mir...!
Vielen Dank im Voraus und beste Grüße,
Pascal
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textfeld auslesen
29.08.2008 08:21:17
Matthias
Hallo
hab ich Dich richtig verstanden?
Textbox aus Steuerelement-Toolbox

Option Explicit
'in einem Modul
Public TxTbx As String

'in der Tabelle Private Sub TextBox1_Change() TxTbx = Me.TextBox1.Text End Sub
Sub Variablenabfrage() MsgBox "in der Variable TxTbx steht " & TxTbx End Sub


Gruß Matthias

Anzeige
AW: Textfeld auslesen
29.08.2008 08:33:45
kutzmutz
Ja haste richtig verstanden.
Allerdings bekomme ich den Fehler: "Unzulässige Verwendung des Schlüsselwortes Me"
AW: Textfeld auslesen
29.08.2008 08:36:07
kutzmutz
Ähm, sorry, ich hab nochmal nachgesehen: ich verwende das ActiveX-Steuerelement
dann lass (Me.) weg
29.08.2008 08:42:10
Matthias
Hallo
nur

Private Sub TextBox1_Change()
TxTbx = TextBox1.Text
End Sub


Gruß Matthias

Anzeige
AW: dann lass (Me.) weg
29.08.2008 09:13:00
kutzmutz
Jetzt kommt die Fehlermeldung:
Variable nicht definiert und beim compilieren wird dann "Textbox1" markiert
AW: dann lass (Me.) weg
29.08.2008 09:27:00
kutzmutz
Habs gelöst...
Sorry für die Mühen und Danke für die Hilfe :-D
;
Anzeige
Anzeige

Infobox / Tutorial

Textfeld in Excel auslesen mit VBA


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und gehe zu dem Arbeitsblatt, auf dem sich dein Textfeld befindet.

  2. Füge ein ActiveX-Textfeld hinzu:

    • Gehe auf die Registerkarte „Entwicklertools“.
    • Klicke auf „Einfügen“ und wähle das ActiveX-Textfeld aus.
  3. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  4. Füge den folgenden Code in das entsprechende Arbeitsblatt ein:

    Option Explicit
    ' In einem Modul
    Public TxTbx As String
    
    ' In der Tabelle
    Private Sub TextBox1_Change()
       TxTbx = TextBox1.Text
    End Sub
    
    Sub Variablenabfrage()
       MsgBox "In der Variable TxTbx steht: " & TxTbx
    End Sub
  5. Speichere deine Arbeit und teste den Code:

    • Gib etwas in das Textfeld ein und führe die Subroutine Variablenabfrage aus, um den gespeicherten Wert anzuzeigen.

Häufige Fehler und Lösungen

  • Fehler: "Unzulässige Verwendung des Schlüsselwortes Me"

    • Lösung: Entferne Me. vor TextBox1, wenn du ein ActiveX-Steuerelement verwendest.
  • Fehler: "Variable nicht definiert"

    • Lösung: Stelle sicher, dass der Name des Textfeldes korrekt ist. Überprüfe den Namen des Textfeldes im Eigenschaftenfenster.

Alternative Methoden

Du kannst auch andere Methoden verwenden, um ein Textfeld auszulesen. Eine Möglichkeit ist die Verwendung von Formularsteuerelementen anstelle von ActiveX-Steuerelementen. Hier ist ein Beispiel, wie du ein Textfeld in einem Formularsteuerelement ansprechen kannst:

Sub FormularTextfeldAuslesen()
    Dim txtValue As String
    txtValue = ActiveSheet.Shapes("TextBox1").TextFrame.Characters.Text
    MsgBox "Der Inhalt des Textfeldes ist: " & txtValue
End Sub

Praktische Beispiele

Angenommen, du hast ein ActiveX-Textfeld mit dem Namen TextBox1 auf deinem Arbeitsblatt. Der folgende Code liest den Inhalt des Textfeldes aus und zeigt ihn in einer Meldungsbox an:

Private Sub CommandButton1_Click()
    MsgBox "In der TextBox steht: " & TextBox1.Text
End Sub

Hierbei wird davon ausgegangen, dass du auch einen CommandButton hinzugefügt hast, um die Aktion auszulösen.


Tipps für Profis

  • Achte darauf, dass du die richtigen Steuerelemente verwendest. ActiveX-Steuerelemente bieten mehr Funktionalität, während Formularsteuerelemente einfacher sind.
  • Nutze die Option Explicit-Direktive am Anfang deiner Module, um sicherzustellen, dass alle Variablen deklariert sind, was dir hilft, Fehler zu vermeiden.
  • Experimentiere mit der TextBox-Eigenschaft, um die Benutzeroberfläche zu verbessern, indem du z.B. Platzhaltertexte hinzufügst.

FAQ: Häufige Fragen

1. Wie kann ich den Inhalt eines Textfeldes in eine Zelle speichern?
Du kannst den Inhalt des Textfeldes direkt in eine Zelle speichern, indem du folgendes hinzufügst:

Range("A1").Value = TextBox1.Text

2. Gibt es Unterschiede zwischen ActiveX- und Formularsteuerelementen?
Ja, ActiveX-Steuerelemente bieten mehr Anpassungsmöglichkeiten und Ereignisse, während Formularsteuerelemente einfacher zu handhaben sind und weniger Ressourcen benötigen.

3. Wie kann ich ein Textfeld in Word mit VBA ansprechen?
Die Syntax für das Ansprechen eines Textfeldes in Word unterscheidet sich von Excel. Du kannst den VBA-Code verwenden, der mit Word-Objekten arbeitet, um auf Textfelder in Dokumenten zuzugreifen.

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