Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
588to592
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
588to592
588to592
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Doppeklick auf Zellen oder Bereiche beschränken.

Doppeklick auf Zellen oder Bereiche beschränken.
22.03.2005 16:18:35
Horst
Hallo liebe VBA-Gemeinde,
mit Application.Doppelklick = "Name" kann man den Doppelklick einer anderen Funktion zuordnen (statt der direkten Zellbearbeitung).
Nun meine Frage:
Kann man das auch auf eine bestimmte Zelle oder Bereich beschränken ?
Schwierige Frage, oooderrrr ? Falls nicht, gibt es einen "Workaround" ?
Gruß,
Horst

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Doppeklick auf Zellen oder Bereiche beschränken.
22.03.2005 16:53:07
ransi
hallo horst
schau mal ob du hiermit was anfangen kannst.
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(ActiveCell, Range("a1:b10")) Is Nothing Then Exit Sub
Cancel = True
Call makro
End Sub

Public Sub makro()
MsgBox "Ich bin ein Makro"
End Sub
der code muss in ein tabellenblatt. Nicht in ein modul.
ransi
AW: Doppeklick auf Zellen oder Bereiche beschränke
22.03.2005 17:50:47
Horst
Hallo Ransi, (cc. Boris)
schön, dass Du mir wieder antwortest.
Was meinst Du mit: "der code muss in ein tabellenblatt. Nicht in ein modul."
In meiner ersten selbst ausgetüftelten Version hatte ich den ersten Teil des Codes:
"Application.OnDoubleClick = "Get_Chart" ... usw " als Event-Trigger in "Tabelle1"
und das aufzurufende Sub in "Modul1". Das hat funktioniert, allerdings für alle Zellen.
Wenn ich jetzt Dein:
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(ActiveCell, Range("a1:b10")) Is Nothing Then Exit Sub
Cancel = True
Call Get_Chart
End Sub

in "Tabell1" lege, und meine Call-Prozedur in "Modul1" belasse, dann reagiert VBA nicht.
Ähnlich geht es mir mit dem Vorschlag von Dir, Boris. Deinen Code habe ich allerdings in "Klassenmodul1" kopiert und meine Call-Prozedur wieder in "Modul1".
Beide Varianten erzeugen keine Reaktion beim Doppelklick auf eine Zelle in dem angegebenen Bereich, statt dessen wird die Zellbearbeitung aktiviert.
Was kann ich falsch gemacht haben ?
Horst
Anzeige
AW: Doppeklick auf Zellen oder Bereiche beschränke
22.03.2005 18:01:18
Boris
Hi Horst,
Ähnlich geht es mir mit dem Vorschlag von Dir, Boris. Deinen Code habe ich allerdings in "Klassenmodul1" kopiert und meine Call-Prozedur wieder in "Modul1".
Letzteres (Modul1) ist korrekt, das "Klassenmodul1" wiederum nicht.
Links im Projektexplorer findest du deine Arbeitsmappe - und zudem die Namen der vorhandenen Tabellenblätter.
Doppelklick auf DAS Tabellenblatt, in dem der Code laufen soll. Und diese Tabellenblätter nennt man eben auch "Klassenmodule".
Grüße Boris
AW: Doppeklick auf Zellen oder Bereiche beschränke
22.03.2005 18:22:36
Horst
Hallo Ihr Beiden,
das kommt davon, wenn man keine Ahnung hat ! Jetzt habe ich eine Version für Sonntags und eine für die Woche (hihi). Beide laufen perfekt.
Vielen Dank für Eure prompte Hilfe (bis zur nächsten Hürde).
Gruß,
Horst
Anzeige
AW: Doppeklick auf Zellen oder Bereiche beschränken.
22.03.2005 17:00:26
Boris
Hi Horst,
im Klassenmodul der entsprechenden Tabelle:
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim str As String
str = "A1,C1:C10,E5,F1:G5" 'Bereiche, für die sonst_was aufgerufen werden soll
Cancel = Not Intersect(Target, Range(str)) Is Nothing
If Cancel Then Call sonst_was 'sonst_was ist irgendeine Sub
End Sub

Grüße Boris

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige