Microsoft Excel

Herbers Excel/VBA-Archiv

Doppelklick Fehler abfangen

Betrifft: Doppelklick Fehler abfangen von: Heinz H
Geschrieben am: 21.01.2021 15:31:49

Hallo Excelgemeinde


Mein Problem: Wenn ich auf C1 einen Doppelklick mache, funktioniert das Makro.

Aber wenn ich eine andere Zelle Doppelklicke kommt immer der Debugfehler das die Aktion nicht ausgeführt werden kann.


Könnte man den Fehler abfangen? Das das Makro abbricht ?


Danke

Sg, Heinz

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)

If Target.Address = "$C$1" Then Range("A1:I28").Copy
    Range("A1:I28").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False,  _
Transpose:=False

End Sub

Betrifft: AW: Doppelklick Fehler abfangen
von: Hajo_Zi
Geschrieben am: 21.01.2021 15:34:50

Hallo Heinz,

es kann nichts eingefügt werden, da nichts kopiertr wurde.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
If Target.Address = "$C$1" Then 
    Range("A1:I28").Copy
    Range("A1:I28").PasteSpecial Paste:=xlPasteValues
End if
End Sub
GrußformelHomepage

Betrifft: AW: Doppelklick Fehler abfangen
von: Daniel
Geschrieben am: 21.01.2021 15:45:53

Hi

Wenn du nach Then den Code in der selben Zeile weiter schreibst, dann gehört nur diese Zeile zum IF-Block.
Alles danach wird dann wieder immer ausgeführt.
Dh. das .Copy wird nur bei Klick auf C1 ausgeführt, das pasteSpecial jedoch immer, bei jeder Zelle.
Der Fehler kommt, wenn du versucht einzufügen, ohne dass vorher was kopiert wurde.

Willst du einen IF-Block mit mehren Codezeilen, so musst du die von Hajo gezeigt, nach dem Then eine neue Zeile beginnen und den Block mit End If abschließen.

Gruß Daniel

Betrifft: AW: Doppelklick Fehler abfangen
von: Werner
Geschrieben am: 21.01.2021 15:52:56

Hallo,

wieso überhaupt copy und paste?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
If Target.Address = "$C$1" Then
    Cancel = True
    Range("A1:I28").Value = Range("A1:I28").Value
End If
End Sub
Gruß Werner

Betrifft: AW: Danke an Hajo, Daniel u. Werner
von: Heinz H
Geschrieben am: 21.01.2021 16:09:11

Hallo,

@ Werner
Der Code funktioniert super.Danke

@ Hajo und Daniel
Danke auch an euch für die Fachliche Auskunft.

Sg, Heinz

Betrifft: Gerne u. Danke für die Rückmeldung. o.w.T.
von: Werner
Geschrieben am: 21.01.2021 16:22:22