Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

mehrere Range abfragen

Forumthread: mehrere Range abfragen

mehrere Range abfragen
03.08.2021 11:16:23
Andre
Hallo liebe Forumler,
ich möchte in einem Tabellenblatt einzelne Bereiche mit einem Password sperren siehe folgender code. Leider bekomme ich eine Fehlermeldung zu viele Argumente was mache ich falsch?

Private Sub Worksheet_Change(ByVal Target As Range)
Dim objCell As Range
If Not Intersect(Target, Range("D6:M26", "Q6:R26", "V6:V26")) Is Nothing Then
Me.Protect Password:="abc", userinterfaceonly:=True
For Each objCell In Target
If Not Intersect(objCell, Range("D6:M26", "Q6:R26", "V6:V26")) Is Nothing Then _
objCell.Locked = objCell.Text  ""
'Next
'Dim objCell As Range
If Not Intersect(Target, Range("N6:P26", "S6:U26")) Is Nothing Then
Me.Protect Password:="def", userinterfaceonly:=True
For Each objCell In Target
If Not Intersect(objCell, Range("N6:P26", "S6:U26")) Is Nothing Then _
objCell.Locked = objCell.Text  ""
Next
End If
End Sub
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mehrere Range abfragen
03.08.2021 11:34:32
ChrisL
Hi Andre

Range("D6:M26,Q6:R26,V6:V26")
oder

Union(Range("D6:M26"), Range("Q6:R26"), Range("V6:V26"))
cu
Chris
AW: mehrere Range abfragen
03.08.2021 14:36:33
Andre
Hallo Chris,
an welcher stelle soll ich das einfügen, habe es probiert wo If not intersect(Target, Range.... steht. Aber bekomme immer eine Fehlermeldung angezeigt

Private Sub Worksheet_Change(ByVal Target As Range)
Dim objCell As Range
If Not Intersect(Target, Range("D6:M26, Q6:R26,V6:V26")) Is Nothing Then
Me.Protect Password:="abc", userinterfaceonly:=True
For Each objCell In Target
If Not Intersect(objCell, Range("D6:M26,Q6:R26,V6:V26")) Is Nothing Then _
objCell.Locked = objCell.Text  ""
Next
'Dim objCell As Range
'  If Not Intersect(Target, Range("N6:P26, S6:U26")) Is Nothing Then
'   Me.Protect Password:="def", userinterfaceonly:=True
' For Each objCell In Target
'    If Not Intersect(objCell, Range("N6:P26, S6:U26")) Is Nothing Then _
'        objCell.Locked = objCell.Text  ""
End Sub

Anzeige
AW: mehrere Range abfragen
03.08.2021 15:10:53
ChrisL
Hi
Nur die Schreibweise angeschaut:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim objCell As Range
If Not Intersect(Target, Range("D6:M26,Q6:R26,V6:V26")) Is Nothing Then
Me.Protect Password:="abc", userinterfaceonly:=True
For Each objCell In Target
If Not Intersect(objCell, Range("D6:M26,Q6:R26,V6:V26")) Is Nothing Then _
objCell.Locked = objCell.Text  ""
Next
End If
If Not Intersect(Target, Range("N6:P26,S6:U26")) Is Nothing Then
Me.Protect Password:="def", userinterfaceonly:=True
For Each objCell In Target
If Not Intersect(objCell, Range("N6:P26,S6:U26")) Is Nothing Then _
objCell.Locked = objCell.Text  ""
Next
End If
End Sub
Dass es pro Tabellenblatt nur ein einziges Passwort gibt, hat Rudi bereits erwähnt und bei genauerer Betrachtung erschliesst sich mir die Sinnhaftigkeit vom Code ganz generell nicht.
cu
Chris
Anzeige
AW: mehrere Range abfragen
03.08.2021 11:45:12
Rudi
Hallo,
2 unterschiedliche Passwörter kannst du nur über 'Bearbeiten von Bereichen zulassen' vergeben. Mach das von Hand und fertig ist. Da brauchst du keinen Code.
Gruß
Rudi
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18