Anzeige
Archiv - Navigation
1076to1080
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
Focus auf UserForm
30.05.2009 20:12:10
Martin
Hallo,
mit der Tastenkombination "Strg+F" (Application.OnKey "^f", "Suche_Starten") wird ein UserForm gestartet mit der Eigenschaft "ShowModal=False".
Mein Problem: Wenn ich im Tabellenblatt arbeite während das Userform geöffnet ist und erneut die Tastenkombination "Strg+F" betätige, wird das UserForm neu geladen.
Frage: Kann ich auch einfach den Focus auf das UserForm zurücksetzen, wenn es schon geladen ist? Mit "If UserForm1.Visible = True" kann ich ja abfragen, ob das UserForm schon geöffnet ist. Mir fehlt quasi nur der Befehl, um den Focus von der Tabelle zum UserForm zu setzen.
Für Vorschläge wäre ich sehr dankbar!
Viele Grüße
Martin

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

Betreff
Datum
Anwender
Anzeige
AW: Focus auf UserForm
30.05.2009 21:05:01
Nepumuk
Hallo Martin,
einfach so:
Public Sub test()
    AppActivate UserForm1.Caption, True
End Sub

Gruß
Nepumuk
Super, das klappt! Ich frage aber weiter...
30.05.2009 21:21:35
Martin
Hallo Nepumuk,
vielen Dank für Deine hilfreiche Antwort. Ich muss gleich eine Folgefrage stellen: Kann ich dabei den Focus auch direkt auf ein UserForm-Element setzen. In meinem Fall würde ich den Focus gerne auf ComboBox1 der UserForm setzen.
Viele Grüße
Martin
Anzeige
AW: Super, das klappt! Ich frage aber weiter...
30.05.2009 21:23:52
Raist10
Das klappt i.d.R. so:
UserForm1.ComboBox1.SetFocus
Gruß
Rainer
Das klappt leider nicht...
30.05.2009 21:33:25
Martin
Hallo Rainer,
auf die Idee bin ich natürlich auch schon gekommen, aber leider will das nicht funktionieren (Meine UserForm hat den Namen "Suchmaske"):

Sub Suche_Starten()
If ActiveWorkbook.Name = ThisWorkbook.Name Then
If Suchmaske.Visible = True Then
AppActivate Suchmaske.Caption, True
Suchmaske.ComboBox1.SetFocus
Else: Suchmaske.Show
End If
Else
Application.CommandBars.FindControl(ID:=1849).Execute
End If
End Sub


Viele Grüße
Martin

AW: Das klappt leider nicht...
30.05.2009 22:17:09
Josef
Hallo Martin,
.SetFocus ist manchmal ein wenug störrisch, gib vor der ComboBox1 einem anderen Steuerelement den Focus, dann klappt's
z. B.:
Sub showfrm()
  With UserForm1
    If .Visible Then
      AppActivate .Caption, True
      .TextBox1.SetFocus
      .ComboBox1.SetFocus
    End If
  End With
  
End Sub

Gruß Sepp

Anzeige
Guter Trick, nun ist alles bestens...
30.05.2009 22:40:52
Martin
Hallo Sepp,
vielen Dank für diesen Trick. Darauf wäre ich garantiert nicht gekommen, nun klappt es bestens!
Viele Grüße
Martin
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige