Ich möchte mit Application.OnKey den Klick auf einen Buchstaben der Tastaur auswerten.
Was in einer Tabelle ohne Probleme funktioniert.
Nun möchte ich es aber in einer geladenen UserForm umsetzen.
Excel/Vba verweigert mir allerdings seinen Dienst.
Beim Laden eines Formulares werden in Frame1 75 Labels beschrieben
Klickt man also auf einen Buchstaben wird der Code ausgeführt und die Einträge die mit "C" beginnen farbig angezeigt
Für dieses Bsp:
Private Sub LabelC_Click()
Dim Ctrl As Control
For Each Ctrl In Me.Frame1.Controls
Ctrl.BackStyle = 0
If Left(Ctrl.Caption, 1) = LabelC.Tag Then
Ctrl.BackStyle = 1
End If
Next
End Sub
Nun möchte ich bei Klick auf "c" der Tastatur, das dieser Code ausgeführt wird.Ich habe den Code auch schon in ein Modul ausgelagert und Me durch Userform1 sauber referenziert.
Das habe ich im Workbook_Open als auch im Userform_Activate versucht
Application.OnKey "c", "machs"
Sub machs()
Dim Ctrl As Control
For Each Ctrl In UserForm1.Frame1.Controls
Ctrl.BackStyle = 0
If Left(Ctrl.Caption, 1) = LabelH.Tag Then
Ctrl.BackStyle = 1
End If
Next
End Sub
Trotzdem verweigert mir VBA hier seinen Dienst.Ist es nicht möglich in einem geladenen Formular OnKey zu benutzen, oder was läuft da falsch?
Danke fürs Lesen
Gruß Matthias