Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("B5,H5,E5,P5,S5,V5,B7,H7,E7,P7,S7,V7,B9,H9,E9,P9,S9,V9,B11,H11,E11,P11,S11,V11,B13,H13,E13,P13,S13,V13,B15,H15,E15,P15,S15,V15,B17,H17,E17,P17,S17,V17,B19,H19,E19,P19,S19,V19,B21,H21,E21,P21,S21,V21,B23,H23,E23,P23,S23,V23,M4:M23,AA4:AA23")) Is Nothing Then Exit Sub
If Len(Target.Cells(1)) = 0 Then Target.Cells(1) = "X" Else Target.Cells(1) = vbNullString End If
Cancel = True
End Sub
Hallo, habe eine Sub, die in gewissen Zellen ein x erzeugt. Das klappt soweit. Aber nur bis zu einer maximalen Anzahl an Zellen. Sobald ich jetzt eine Zelle mehr einfüge, kommt ein Laufzeitfehler 1004. Habe aber leider noch fast doppelt so viele Zellen, die er ansprechen muss.
Moin! Die Spalten stehen ja fest (leider ohne Algorithmus, den man zugrundelegen könnte) Spaltennummern: 2, 5, 8, 16, 19, 22 Ab Zeile 5 geht es dann in 2er-Schritten weiter, also die ungeraden Zeilen. Dies könntest Du in einer geschachtelten Select-Case-Abfrage kürzen.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Zunächst mal :18: für Bosko und Elex! @Barthi: Warum gibt es überhaupt die "zerpflückten" Bereiche?
Anders herum: Wäre es nicht sinnvoller, bei allen Zellen, bei denen das x geswitcht werden soll, unter Schutz geperrt zu entfernen. Und dann einfach so:
PrivateSub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel AsBoolean)
If Target.Locked ThenExitSub
Target = IIf(Len(Target.Cells), "", "X")
Cancel = TrueEndSub
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Ich habe das mal für Deine Bereiche aus #1 umgesetzt. Nur in den grünen Zellen führt der Doppelklick zum switchen. Der Code ist tatsächlich ausschließlich der kurze aus meiner letzten Antwort.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
03.10.2017, 13:52 (Dieser Beitrag wurde zuletzt bearbeitet: 03.10.2017, 13:53 von RPP63.)
Ich werde aber mal das mühsame "Entsperren" durch ein Makro durchführen lassen. Damit es sich auch lohnt, mal bis Zeile 123 Werde den Algorithmus von Edgar nehmen. … to be continued …
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)