Anzeige
Archiv - Navigation
832to836
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
832to836
832to836
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formular öffnen bei klick

Formular öffnen bei klick
27.12.2006 15:53:50
Thomas
Hallo,
mit folgender Bedingung öffnet sich im Tabellenblatt "Tabelle1" das Formular "frmSchreiben"

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column > 3 And Selection.Rows.Count < 2 Then
frmSchreiben.Show
End If
End Sub

Problem:
Zur Zeit genügt es, wenn der User mit den "Pfeil-Tasten" der Tastatur durch das Tabellenblatt geht und
auf eine entsprechende Zelle kommt, wo die Bedingung erfüllt ist, dass sich das Formular "frmSchreiben" öffnet.
Jetzt möchte ich das Öffnen dieses Formulares "frmSchreiben" nur noch ermöglichen, wenn der User einmal mit
der linken Maustaste auf die Zelle klickt und wenn dann meine obige Bedingung zutrifft, sich entsprechend
das Formular "frmSchreiben" öffnet.
Für Hilfe vielen Dank!
Gruß,
Thomas

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formular öffnen bei klick
27.12.2006 16:40:09
Oberschlumpf
Hi Thomas
Du schreibst: "Auf die Zelle klickt". Welche Zelle genau meinst du denn?
In deinem Code reicht es aus, wenn man in Spalte 3 eine beliebige Zelle anklickt.
Versuch es mal so:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Instr(1, Target.Address, ":") > 0 Or Instr(1, Target.Address, ",") > 0 Then Exit Sub
If Target.Column > 3 Then
frmSchreiben.Show
End If
End Sub

In diesem Bsp wird zuerst geprüft, ob NUR 1 Zelle angeklickt wurd. Werden mehrere Zellen ausgewählt, wird mit Exit Sub die Sub gleich wieder verlassen.
Und im 2. Schritt wird nur noch geprüft, ob die angeklickte Zelle in Spalte 3 ist.
Konnte ich helfen?
Ciao
Thorsten
Anzeige
AW: Formular öffnen bei klick
28.12.2006 09:13:54
Oberschlumpf
ich meinte mit dem 2. Schritt, dass da geprüft wird, ob die geklickte Zelle in einer Spalte größer Spalte 3 ist.
AW: Formular öffnen bei klick
28.12.2006 11:56:07
Thomas
Hi Thorsten,
danke für deine Hilfe!
Hab jetzt mal in meiner Datei Deinen Code eingefügt.
Dadurch verhindere ich jetzt zwar das Öffnen des Formulares, wenn ich mit den "Pfeil"-Tasten durch das Tabellenblatt gehe, jedoch bei klick mit der linken Maustaste auf eine Zelle, welche die Bedingung: Target.Column > 3 And Selection.Rows.Count erfüllt, öffnet sich das Formular nicht.
Viele Grüße,
Thomas
AW: Formular öffnen bei klick
28.12.2006 11:56:25
Thomas
Hi Thorsten,
danke für deine Hilfe!
Hab jetzt mal in meiner Datei Deinen Code eingefügt.
Dadurch verhindere ich jetzt zwar das Öffnen des Formulares, wenn ich mit den "Pfeil"-Tasten durch das Tabellenblatt gehe, jedoch bei klick mit der linken Maustaste auf eine Zelle, welche die Bedingung: Target.Column > 3 And Selection.Rows.Count erfüllt, öffnet sich das Formular nicht.
Viele Grüße,
Thomas
Anzeige
AW: Formular öffnen bei klick
29.12.2006 00:02:17
Gerd
Hi,
du hast nicht das richtige Ereignis verwendet: Selection_Change
mfg Gerd
AW: Formular öffnen bei klick
29.12.2006 12:09:56
Thomas
Hallo Gerd,
der Code steht unter folgendem Ereignis:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Ist das falsch?
Gruß,
Thomas
AW: Formular öffnen bei klick
29.12.2006 16:58:07
Gerd
Hi,
der gesamte Code, der dort steht, wäre hilfreich.
mfg Gerd
AW: Formular öffnen bei klick
29.12.2006 17:44:30
Thomas
Hallo Gerd,
anbei der Code:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim z As Long
If InStr(1, Target.Address, ":") > 0 Or InStr(1, Target.Address, ",") > 0 Then Exit Sub
If Target.Column > 6 And Selection.Rows.Count < 2  Then
Select Case ActiveCell.Offset(0, -6).Value
Case "A": z = 1
Case "B": z = 2
Case "C": z = 3
Case Else
Exit Sub
End Select
frmSchreiben.Show
End Sub

Gruß,
Thomas
Anzeige
AW: Formular öffnen bei klick
29.12.2006 17:50:36
Gerd
Hi,
sorry, verstehe den Sinn des Ganzen nicht.
mfg Gerd
AW: Formular öffnen bei klick
29.12.2006 18:31:21
Thomas
Hallo Gerd,
folgenden Hintergrund verfolgt der Code:
ich prüfe ab, wenn der User auf eine Zelle geht (dies eben auch, wenn er die "Pfeil"-Tasten benutzt), ob 6 Spalten nach links der Value "A", "B" oder "C" enthalten ist.
Stimmt der Value überein, öffnet sich mein Formular frmSchreiben.
Mein Problem ist eben nur, dass die Prüfroutine (6 Spalten nach links) immer läuft und ich die Prüfung nur zulassen möchte, wenn ein User mit der linken Maustaste auf eine Zelle klickt.
Gruß,
Thomas
AW: Formular öffnen bei klick
29.12.2006 22:37:05
Gerd
Hi,
bei Selection_Change gibt es keine Unterscheidung zwischen Pfeiltasten und Mausklick,
insofern ist dein Anliegen nicht machbar.
mfg Gerd
Anzeige
AW: Formular öffnen bei klick
30.12.2006 09:29:24
Thomas
Hallo Gerd,
danke für deine Antwort!
Hab ich da überhaupt keine Chance im Code abzufragen, ob ein User den Select_Change mit der linken Maustaste bzw. mit den Pfeiltasten gemacht hat?
Wenn nein, gibt mir Excel/VBA eine Möglichkeit ein Ereignis zu benutzen, welches nur auf die linke Maustaste reagiert?
Gruß,
Thomas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige