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

Userform bei Klicken in eine Zelle

Userform bei Klicken in eine Zelle
24.10.2020 13:49:57
HannesStein
Hallo
Mein Problem betrifft den Aufruf der Userform. Sobald der Anwender etwas in Zelle B3 schreiben will, also in die Zelle hinein klickt, soll er automatisch in die Textbox schreiben. Wie kann der Aufruf der Userform aussehen?
Ausgangssituation: ich habe eine Userform mit einer Textbox und einem OK-Button. Mit "OK" soll in die aktive Zelle was eingetragen werden, abhängig davon, was der Anwender in die Textbox schreibt. Was und wie ist hier nebensächlich. Es ist jedenfalls umfassender als in dieser Beispieldatei: https://www.herber.de/bbs/user/141054.xlsm. Mir geht es um einen geeigneten Aufruf der Userform. Einen Klick in die Zelle-Event habe ich nicht gefunden.
Gruss, Hannes

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform bei Klicken in eine Zelle
24.10.2020 13:58:36
Regina
Hi, das könnte man wohl über den Selection_Change-Event lösen.
Gruß Regina
AW: Userform bei Klicken in eine Zelle
24.10.2020 15:09:13
HannesStein
Hallo
das ging aber schnell. Danke für Eure Antworten.
Leider, Selection_Change rührt sich nicht, wenn man in die Zelle hineinklickt, wenn diese bereits die aktive Zelle ist, wird aber aktiviert, wenn man die Selection auf diese Zelle setzt. Ich wollte aber einen Aufruf für das "Hineinklicken", also wenn dann der Cursor in der Zelle blinkt. Vielleicht gibt es dafür einen treffenderen Ausdruck.
Dem kommt der BeforeDoubleClick-Event am nächsten. Den kannte ich bereits, nur wollte es mit einem Klick. Danke, volti Karl-Heinz. Doppelklick ist auch gut.
Dazu noch Zusatzfrage zu Karl-Heinz' Makro: Welche Bedeutung hat in diesem Zusammenhang "Cancel = True"? Das ist immer wieder in Codes zu sehen. Nur, den Hintergrund dazu konnte ich noch nicht entdecken.
Und noch eine Zusatzfrage, wenn hier schon die Stars des Forums so nett zusammensitzen:
Gibt es ein Event, das auf laufende Eingabe in eine Zelle reagiert? So wie ein Sub TextBox1_Change() in einer Userform? Das reagiert nämlich auf jede Buchstabeneingabe in der Textbox. Und sowas wäre auch für Zellen in einem Worksheet praktisch.
Gruss, Hannes
Anzeige
AW: Userform bei Klicken in eine Zelle
24.10.2020 15:12:51
Nepumuk
Hallo Hannes,
der Doppelklick in eine Zelle aktiviert den Editiermodus. Das wird durch Cancel unterdrückt.
Gibt es ein Event, das auf laufende Eingabe in eine Zelle reagiert?
Nein.
Gruß
Nepumuk
AW: Userform bei Klicken in eine Zelle
24.10.2020 18:34:04
HannesStein
"Der Editiermodus wird durch Cancel unterdrückt."
Aah, ooh. Achso deshalb. Jetzt wird mir einiges klar. Dies und viel mehr.
Und schade, dass es den nicht gibt. Gut zu wissen.
Danke Nepumuk, und vielen Dank auch den anderen. Ihr habt mir sehr geholfen.
Gruss, Hannes
AW: Userform bei Klicken in eine Zelle
24.10.2020 13:59:32
Hajo_Zi
Hallo Hannes,
http://hajo-excel.de/gepackt/vba/userform_bei_zelle.zip
Falls Link nicht ausgeführt wird:
1. Link kopieren
2. rechte Maustaste neues Fenter.
3. Umschaltstaste drücken und Klick auf den Link

Anzeige
AW: Userform bei Klicken in eine Zelle
24.10.2020 14:04:15
Nepumuk
Hallo Hannes,
Rechtsklick auf den Tabellenreiter - Code anzeigen:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Address = "$B$3" Then Call UserForm2.Show
End Sub

Gruß
Nepumuk
Anzeige
AW: Userform bei Klicken in eine Zelle
24.10.2020 14:04:16
volti
Hallo Hannes,
hierfür kannst Du eines der beiden Events nutzen. Der Code gehört dann in das Tabellenklassenmodul.
Das Selection-Change-Event ruft die UF bei jeder Aktivierung auf, das Doppelclick-Event nur nach Doppelclick.

Code:
[Cc]
 
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Address = "$B$3" Then UserForm2.Show Cancel = True End If End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "$B$3" Then UserForm2.Show End Sub
 
______
Gruß 😊
Karl-Heinz

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige