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

Forumthread: Problem mit Cursor in Textbox

Problem mit Cursor in Textbox
01.09.2018 10:21:39
Manfred
Ich bin natürlich absoluter Hobby-Programmierer. In dieser Userform möchte ich einen _ Barcodscanner einbinden. Geht auch sehr gut, aber nur einmal. Es springt in die Button-SUB, schreibt es in die Listbox, aber der Cursor geht nicht mehr auf mein Textfeld, dies brauche ich aber für einen weiteren Scann. Drücke ich aber den Button, geht der Cursor in das Textfeld. Eigentlich nicht vorstellbar warum es beim "drück" auf den Button so ist, aber springe ich in die SUB geht es nicht. Liebe Grüße Manfred Schröder

Private Sub CommandButton1_Click()
'Hier schreibe ich einfach etwas in die Zelle
ZN = 2
Do While Trim(CStr(Tabelle1.Cells(ZN, 1).Value))  ""
ZN = ZN + 1
Loop
Tabelle1.Cells(ZN, 1) = "Button gedrückt"
letztezeile = Worksheets("Tabelle1").Cells(400, 1).End(xlUp).Row 'Ab Excel 2007
With ListBox1
.ColumnCount = 1
.ColumnWidths = "2cm"
.ColumnHeads = True
ListBox1.RowSource = "Tabelle1!A2:b" & letztezeile
End With
TextBox1 = ""
TextBox1.SetFocus
End Sub

------------------------------------------------------------------------------------------------ _
------

Private Sub TextBox1_Change()
'Dieser Wert ist der Wert wo mir der Barcodscanner einscannt
If TextBox1 = "4006770110112" Then
Call CommandButton1_Click
End If
End Sub

------------------------------------------------------------------------------------------------------
'Startroutine, wird ausgeführt bevor die Eingabemaske angezeigt wird

Private Sub UserForm_Initialize()
TextBox1.SetFocus
End Sub

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit Cursor in Textbox
01.09.2018 10:32:22
Sepp
Hallo Manfred,
setze in den Eigenschaften des Buttons 'TakeFocusOnClick' auf 'False'.
 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Problem mit Cursor in Textbox
01.09.2018 11:33:09
Manfred
Hallo Sepp
mit Dank für die schnelle Antwort
leider hat sich absolut nichts geändert
Ich bin am verzweifeln
AW: Problem mit Cursor in Textbox
01.09.2018 21:23:49
Werner
Hallo Manfred,
Versuch mal folgendes:
Setz eine weitere Textbox auf deine Userform. Dann zuerst den Focus auf diese Textbox und dann auf die Textbox auf der du eigentlich den Focus haben möchtest.
TextBox1 = ""
TextBox2.SetFocus
TextBox1.SetFocus
Ich hatte schon Fälle bei denen ich auch das Problem hatte den Focus auf eine Textbox zu bekommen und teilweise hat das so funktioniert. Ich kann dir allerdings nicht sagen wieso das Problem aufgetreten ist und es sich in manchen Fällen so lösen ließ. Einen Versuch ist es wert.
Wenn es funktioniert kannst du ja diese Dummy-Textbox hinter deiner Schaltfläche verstecken.
Gruß Werner
Anzeige
AW: Problem mit Cursor in Textbox
02.09.2018 09:06:36
Manfred
Hallo Werner
SUPER, funktioniert, wenn es auch nicht nachvollziehbar ist warum
1000 Dank
Gerne u. Danke für die Rückmeldung. o.w.T.
02.09.2018 10:43:31
Werner
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Cursor-Probleme in Excel UserForms beheben


Schritt-für-Schritt-Anleitung

  1. UserForm vorbereiten: Stelle sicher, dass die UserForm mit der TextBox und dem Button korrekt eingerichtet ist. In diesem Beispiel verwenden wir die TextBox1 für den Barcode-Scanner und CommandButton1 für die Eingabe.

  2. Button-Klick Ereignis: Implementiere das CommandButton1_Click-Ereignis, um den eingegebenen Barcode zu verarbeiten. Achte darauf, dass der Fokus auf die TextBox gesetzt wird.

    Private Sub CommandButton1_Click()
       ZN = 2
       Do While Trim(CStr(Tabelle1.Cells(ZN, 1).Value)) <> ""
           ZN = ZN + 1
       Loop
       Tabelle1.Cells(ZN, 1) = "Button gedrückt"
       letztezeile = Worksheets("Tabelle1").Cells(400, 1).End(xlUp).Row 'Ab Excel 2007
       With ListBox1
           .ColumnCount = 1
           .ColumnWidths = "2cm"
           .ColumnHeads = True
           .RowSource = "Tabelle1!A2:b" & letztezeile
       End With
       TextBox1 = ""
       TextBox1.SetFocus
    End Sub
  3. Barcode-Eingabe: Füge das TextBox1_Change-Ereignis hinzu, um den Barcode zu verarbeiten, wenn er eingegeben wird.

    Private Sub TextBox1_Change()
       If TextBox1 = "4006770110112" Then
           Call CommandButton1_Click
       End If
    End Sub
  4. UserForm initialisieren: Setze den Fokus auf die TextBox, wenn die UserForm geladen wird.

    Private Sub UserForm_Initialize()
       TextBox1.SetFocus
    End Sub

Häufige Fehler und Lösungen

  • Cursor geht nicht mehr: Wenn der Cursor in der TextBox nicht mehr sichtbar ist, überprüfe die Eigenschaften des Buttons. Setze TakeFocusOnClick auf False.

  • Excel Cursor wird nicht angezeigt: Manchmal kann das Problem gelöst werden, indem eine zusätzliche Dummy-Textbox hinzugefügt wird. Setze zuerst den Fokus auf diese und dann auf TextBox1.

    TextBox2.SetFocus
    TextBox1.SetFocus

Alternative Methoden

Eine alternative Methode zur Behebung des Problems könnte die Verwendung eines Timer-Events sein, um den Fokus regelmäßig auf die TextBox zu setzen. Dies könnte helfen, wenn der Fokus beim Scannen verloren geht.

Private Sub UserForm_Activate()
    Application.OnTime Now + TimeValue("00:00:01"), "SetFocusToTextBox"
End Sub

Sub SetFocusToTextBox()
    TextBox1.SetFocus
End Sub

Praktische Beispiele

  • Barcode-Scanner Integration: Wenn du einen Barcode-Scanner verwendest, stelle sicher, dass die Eingaben sofort in die TextBox übernommen werden. Verwende den oben beschriebenen Code, um den Barcode zu verarbeiten.

  • Fehlerbehebung bei Cursor-Problemen: Wenn der Cursor nicht mehr sichtbar ist, teste die Dummy-Textbox-Lösung oder überprüfe die Eigenschaften der Schaltflächen.


Tipps für Profis

  • Arbeite an der Benutzerfreundlichkeit deiner UserForms, indem du klare Anweisungen für den Benutzer gibst, wie er die Barcode-Eingabe durchführen soll.

  • Teste deine Formulare gründlich, insbesondere nach Änderungen an den Eigenschaften von Steuerelementen, um sicherzustellen, dass der Excel Cursor immer sichtbar bleibt.


FAQ: Häufige Fragen

1. Warum wird der Cursor in meiner TextBox nicht angezeigt?
Das Problem kann an den Eigenschaften des Buttons liegen. Setze TakeFocusOnClick auf False, um zu verhindern, dass der Fokus auf den Button springt.

2. Wie kann ich sicherstellen, dass der Cursor immer in der TextBox bleibt?
Eine Methode ist, einen Timer zu verwenden oder eine Dummy-Textbox hinzuzufügen, um den Fokus zu steuern. Teste verschiedene Ansätze, um die beste Lösung für deine Anwendung zu finden.

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