Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1904to1908
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

Bereich "sperren", Code vorhanden

Bereich "sperren", Code vorhanden
20.11.2022 22:18:55
Gula
Hallo,
ich habe einen Code im Netz gefunden, welcher einen bestimmten Bereich in der Tabelle "sperrt" bzw. das Anklicken nicht zulässt.
So wie der Code ist, passiert das ja nur bei Reihe 3 und 5 in der ersten Spalte.
Wie müsste der Code aussehen, dass diese Sperre von A1:ABS5 geht?
Dankeschön

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 Then
If Target.Row = 3 Or Target.Row = 5 Then
Beep
Cells(Target.Row, Target.Column).Offset(0, 1).Select
End If
End If
End Sub

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereich "sperren", Code vorhanden
20.11.2022 22:33:31
Uduuh
Hallo,
dafür brauchst du keinen Code.
1. alle Zellen markieren, Zellen formatieren, Schutz, Haken bei 'geschützt' raus.
2. A1:ABS5 markieren, Zellen formatieren, Schutz, Haken bei 'geschützt' rein.
3. Überprüfen, Blatt schützen, Haken bei 'Auswahl geschützter Zellen' raus.
Gruß aus'm Pott
Udo
AW: Bereich "sperren", Code vorhanden
20.11.2022 22:45:55
Gula
Hallo Udo und danke für deine Nachricht. Deine Methode ist mir geläufig und habe ich auch so bei anderen Tabellen angewendet. Allerdings auf der Tabelle, wo der Code zum Einsatz kommen soll, kann ich keinen Blattschutz einschalten, da sonst ein Makro dort nicht mehr funktioniert, daher die Variante mit dem Code.
Grüße
Anzeige
AW: Bereich "sperren", Code vorhanden
21.11.2022 13:06:27
Oberschlumpf
Hi,
"...kann ich keinen Blattschutz einschalten, da sonst ein Makro dort nicht mehr funktioniert,..."
Wenn dein Makro mit...

Sheets("Blattname").Unprotect passwort
...beginnt, und mit...

Sheets("Blattname").Protect passwort
...endet...
Dann würde auch dein Makro mit einer Tabelle mit aktiviertem Blattschutz funktionieren.
Anstelle von "Blattname" und passwort natürlich die richtigen Werte eintragen.
Ciao
Thorsten
AW: Bereich "sperren", Code vorhanden
21.11.2022 13:26:48
Gula
Hallo Thorsten,
danke für die Info. Das ganze würde so auch funktionieren, wenn nicht in dieser Liste jemand arbeiten würde, der Zellen markiert und per drag&drop umher schiebt. Durch das schieben, werden die Zellen, wo er ausgewählt hatte, von der Formatierung wieder zurück gesetzt unter anderem haben diese Zellen dann auch wieder einen Schutz drinnen und lassen sich dann nicht mehr anwählen.
Anzeige
noch offen...
21.11.2022 13:28:46
Oberschlumpf
na gut, war ne Idee...
weiter viel Erfolg!
AW: Bereich "sperren", Code vorhanden
20.11.2022 23:56:24
PeTeR
Hallo Gula,
evtl.so:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set isec = Application.Intersect(Target, Range("A1:ABS5"))
If isec Is Nothing Then
Else
Beep
Range("A6").Select
End If
End Sub
Vile Efolg
PeTeR
AW: Bereich "sperren", Code vorhanden
21.11.2022 07:43:55
GerdL
Moin Gula

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:ABS5")) Is Nothing Then
Beep
Cells(6, 1).Select
End If
End Sub
Alternativ im Workbook_Open den Blattschutz per Code mit dem Argument UserInterfaceOnly = True setzen u. wie von Uduuh vorgeschlagen vorgehen.
Anzeige
AW: Bereich "sperren", Code vorhanden
21.11.2022 12:57:59
Gula
Gerdl und Peter, danke für den Code. Funktioniert soweit. Danke.
Wie müsste ich den Code anpassen, dass er, wenn man auf einen gesperrten Bereich klickt nicht zu A1 springt, sondern einfach die zuletzt ausgewählte Zelle?
Grüße
AW: Bereich "sperren", Code vorhanden
21.11.2022 12:58:52
Gula
Hab bei der Nachricht vom gerdl geantwortet ;)
AW: Bereich "sperren", Code vorhanden
21.11.2022 14:15:10
GerdL
Das geht bedingt, Gula.

 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static OldSel As Range
If Intersect(Target, Range("A1:ABS5")) Is Nothing Then
Set OldSel = Target
Else
Beep
If OldSel Is Nothing Then Set OldSel = Range("A6")
OldSel.Select
End If
End Sub
Gruß Gerd
Anzeige
AW: Bereich "sperren", Code vorhanden
23.11.2022 12:51:39
Gula
Danke, passt perfekt

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige