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

VBA_Doppelklick und Aktion danach

VBA_Doppelklick und Aktion danach
14.10.2016 19:17:30
Wolfgang
Hallo liebe Forumsteilnehmer und VBA-Profis,
mit einem kleinen Problem komme ich nicht mehr zurecht und im Internet findet man leider keine passende Lösung, da ich ein "DAM" ("Dümmster Anzunehmender Makrolaie") bin.
In meinem Makro wollte ich, dass wenn in der Spalte A bei der entsprechenden "lfdNr." doppelangeklickt wird, dann in der gleichen Zeile in der Spalte "K" nun das Wort 'storniert' stehen soll. Als kleine "Hürde", die Spalten D-M sind schreibgeschützt.
Mit dem Doppelklick habe ich es zwar hinbekommen, aber "nur" in der Spalte A. Das Problem ist, wenn ich "nur" in der Spalte A doppelklicken kann, dann sollte das Eergebnis (storniert) in der Spalte K gleiche Zeile stehen und natürlich auch bei nochmaligen Doppelklick das storniert wieder gelöscht sein und die Zelle bleibt leer, leider geht das nicht und der Schreibschutz macht es auch nicht leichter ;-)
Eine kurze Beispieldatei (ohne Schreibschutz) ist hier: https://www.herber.de/bbs/user/108796.xlsm
es grüßt
Wolfgang

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA_Doppelklick und Aktion danach
14.10.2016 19:26:49
Hajo_Zi
Hallo Wolfgang,
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 Then
ActiveSheet.Unprotect "123"
If Cells(Target.Row, 11) = "" Then
Cells(Target.Row, 11) = " - storniert"
Else
Cells(Target.Row, 11).ClearContents
End If
ActiveSheet.Protect "123"
Cancel = True
End If
End Sub

AW: VBA_Doppelklick und Aktion danach
14.10.2016 19:30:00
Wolfgang
Hallo,
huch ...
... das geht aber hier schnell!
Vielen Dank.
es grüßt
Wolfgang
Danke für die Rückmeldung oT
14.10.2016 19:35:12
Hajo_Zi
AW: VBA_Doppelklick und Aktion danach
14.10.2016 19:28:49
Daniel
Hi
die Lösung für dein erstes Problem hast du eigentlich schon in deinem Code stehen: OFFSET
wenn der Code bei Doppelklick in Spalte A die Zelle in Spalte K verändern soll, kannst du diese mit TARGET.OFFSET(0, 10) ansprechen:
If Target.Offset(0, 10).Value = "" Then
Target.Offset(0, 10).Value = "Storniert"
Else
Target.Offset(0, 10).ClearContents
End if
was den Blattschutz angeht, den musst du dann im Code vorher aufheben und hinterher wieder aktivieren.
dazu gibt es die Befehle:
ActiveSheet.Unprotect "Passwort"
ActiveSheet.Protect "Passwort"

die Einstellungen des Schutzes bleiben dabei erhalten.
gruß Daniel
Anzeige
DANKE AW: VBA_Doppelklick und Aktion danach
14.10.2016 19:33:42
Wolfgang
Hallo Daniel,
der Passwortschutz ist rein nur "Makulatur" und mit den beiden Befehlen
ActiveSheet.Unprotect
ActiveSheet.Protect
klar.
In VBA bin ich eben nur der "Makroeditor-abrufen-Fachmann" ;-)
ABER trotzdem DANKE!
Wolfgang
AW: VBA_Doppelklick und Aktion danach
14.10.2016 19:31:21
Martin
Hallo Wolfgang,
das haben dir gleich drei Forenmitglieder gleichzeitig helfen wollen. Hier noch mein Lösungdsvorschlag. Wie du siehst führen mehrere Wege nach Rom ;-)
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column  1 Then Exit Sub
ActiveSheet.Unprotect "Passwortname"
Target.Offset(0, 10) = IIf(IsEmpty(Target.Offset(0, 10)), " - storniert -", "")
ActiveSheet.Protect "Passwortname"
End Sub
LG Martin
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige