Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1640to1644
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

SetFocus funktioniert nicht

SetFocus funktioniert nicht
07.09.2018 10:50:01
Joerg
Guten Tag,
ich habe folgendes Phänomen:
Ich nutze eine VBA Makro um ein Messprogramm abzuarbeiten. Kopfdaten werden auf einem ersten Userform eingegeben. Ich verwende dann in der Abfolge For-Next Schleifen um die jeweiligen Messpunkte abzufragen, der Code liegt auf dieser ersten Userform. Jeder Messpunkt wird abgefragt und die ausführende Person muss den Wert messen und per Fusstaster/ Knopfdruck den Wert übertragen. Zwischen Excel und dem Messgerät hängt noch ein Schnittstellen- Programm, welches den Wert zur Verfügung stellt. Zur Erfassung des Wertes springe ich in eine zweite Userform, welche anzeigt wass ich messen muss und diese UF bekommt den Messwert. Über ein Change Ereignis beendet sich diese Userform der Wert wird verarbeitet und es geht in der Schleife weiter. 2te UF öffnet sich wieder usw....
Dies funktioniert alles soweit.
Jetzt habe ich ein neues Messmittel und möchte die Werte ohne Schnittstellen Programm in eine Textbox einlesen. Das geht auch grundsätzlich. Der Wert wird in eine aktive Zelle oder ein aktives Textfeld eingefügt.
Aber: Ich benötige den Fokus in dem Textfeld. Dazu habe ich in der Schleife bevor das 2te Userform aufgerufen wird ein setfocus drin. Das geht auch beim ersten Aufruf.
Beim zweiten Durchlauf der Schleife geht das aber nicht mehr. Der Fokus wird nicht gesetzt.
Setze ich hier einen Haltepunkt im Code vor dem Aufruf der 2ten UF dann geht es immer. Ich habe eine Wartezeit eingefügt, das bringt aber nichts.
Woran kann das liegen?
Vielen Dank schonmal für die Unterstützung.
Gruß Joerg
Code:
For Bohrung = 1 To 2
For Winkel = 0 To 45 Step 45
For Messpunkt = 200 To 1000 Step 200
ZielSpaltenBerechnung '>> Werte werden in dem Tabellenblatt gespeichert
Textfeldstring_Definition ' >> Werte werden auf der ersten UF angezeigt
UF2.lab_Eingabe.Caption = "B" & Bohrung & "," & Winkel & "," & Messpunkt
UF2.Controls(TexfeldstringMesskanal).Value = ""
UF2.Controls(TexfeldstringMesskanal).SetFocus
UF2.Show
__________
Code Userform2:
<pre>Private Sub txt_Kanal1_change()
If Len(txt_Kanal1.Text) = 8 Then
WertTxtString = txt_Kanal1.Value
...
...
End If
End Sub</pre>
____________
zurück zu UF1 > Wert wird berechnet, etc.
...
...
Diagramm_aktualisieren
Next Messpunkt
Next Winkel
Next Bohrung

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

Betreff
Datum
Anwender
Anzeige
AW: SetFocus funktioniert nicht
07.09.2018 10:54:49
Frank
Hallo Joerg!
Kann es sein, dass du erst die UF2 öffnen musst und dann den Focus setzen kannst?
UF2.Show
UF2.Controls(TexfeldstringMesskanal).SetFocus
Konnte ich helfen?
Gruß Frank H.
AW: SetFocus funktioniert nicht
07.09.2018 11:06:40
Joerg
Hallo Frank,
vielen Dank für die schnelle Antwort.
Nach dem ich UF2 öffne, muss ich erst dieses "abarbeiten", bevor es mit dem Code auf UF1 weitergeht.
Ich habe auch ein "Sub UserForm_Activate" mit der Setfocus Anweisung. Aber auch das bringt keine Lösung.
Ich leere auch das Textfeld vorher, das klappt prima.
Folgendes ist noch auffällig: Wenn ich beim ersten Mal auf das UF2 komme, ist der Fensterrahmen ausgegraut (inaktiv) das Textfeld hat den Fokus und der Wert kann eingegeben werden. Komme ich beim zweiten Durchlauf ist das Fenster blau (aktiv) und selbst wenn ich in das Textfeld mit der Maus klicke bleibt es blau...
Anzeige
AW: SetFocus funktioniert nicht
07.09.2018 11:15:15
Joerg
.
AW: SetFocus funktioniert nicht
10.09.2018 08:52:05
EtoPHG
Hallo,
Wenn es beim ersten Aufruf funktioniert, beim 2ten aber nicht, dann würde ich
In der (nicht funktionierenden) Userform, beim Verlassen dieser, ein Unload Me anstelle eines Me.Hide verwenden.
Gruess Hansueli

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige