Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
508to512
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
508to512
508to512
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeile bedingt ausblenden

Zeile bedingt ausblenden
28.10.2004 13:01:00
Henri
Hallo,
ich bekomme be meinem Code ledier immer die FM "Die Hidden Eingenschaft des Range Objectes kann nicht festgelegt werden". Kann es ev. damit zusammenhängen dass ich per VBA alle Zellen mit Formeln autmatisch schütze? Wenn nein/ja was mache ich falsch?
Danke
Henri
...
If Month(Sheets("Februar").Cells(33, 2)) = 3 Then
Sheets("Februar").Rows("33:33").EntireRow.Hidden = True
Else
Sheets("Februar").Rows("33:33").EntireRow.Hidden = False
End If
...

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

Betreff
Datum
Anwender
Anzeige
AW: Zeile bedingt ausblenden
Bert
Sheets("Februar").Rows("33:33").Hidden = Month(Sheets("Februar").Cells(33, 2)) = 3
Schütz das Blatt mit der Option UserInterfaceOnly, dann können Makroaktionen dennoch ausgeführt werden.
Bert
AW: Zeile bedingt ausblenden
28.10.2004 13:18:38
Henri
Hallo Bert,
im Moment steht bei mir in jedem Tabellenblatt:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range
For Each rng In Target.Cells
If rng.HasFormula Then
ActiveSheet.Protect
Exit Sub
Else
ActiveSheet.Unprotect
End If
Next rng
End Sub

1. wie tausche ich das jetzt gegen UserInterfaceOnly und
2. sind bei UserInterfaceOnly auch die Zellen mit den Formeln schreibgeschützt?
Henri
Anzeige
AW: Zeile bedingt ausblenden
Bert
ActiveSheet.Protect UserInterFaceOnly:=True
Klar, der Schutz wirkt bei manuellen Eingaben, Makros können dennoch ausgeführt werden.
Bert
AW: Zeile bedingt ausblenden
28.10.2004 13:39:14
Henri
Hallo Bert,
ich habe das jetzt folgendermassen verändert:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range
For Each rng In Target.Cells
If rng.HasFormula Then
ActiveSheet.Protect UserInterFaceOnly:=True
Exit Sub
Else
ActiveSheet.Protect UserInterFaceOnly:=False
End If
Next rng
End Sub

Dazu habe ich noch in den Bereichen wo geschrieben werden darf den Zellschutz entfernt.
Leider funktioniert das Ausblenden immer noch nicht und es kommt der gleiche Fehler. So sieht mein ganzes Makro aus:

Private Sub CommandButton1_Click()
Sheets("Grundeinstellungen").Range("A" & lBox) = frmEingabe.TextBox1.Value
frmEinstellungen.Controls("Label" & lBox) = frmEingabe.TextBox1.Value
Sheets("Februar").Rows("33:33").Hidden = Month(Sheets("Februar").Cells(33, 2)) = 3
frmEingabe.TextBox1.Value = ""
frmEingabe.Hide
End Sub

Soll also wenn ich in der UserForm 2004 eingebe die letzte Zeile des Monats Februar ausblenden und wenn ich 2005 eingebe wieder einblenden.
Henri
Anzeige
AW: Zeile bedingt ausblenden
Bert
UserInterFaceOnly muss immer True sein, damit die Makroaktionen ausgeführt werden können.
Du hast da wohl einen Denkfehler.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Unprotect
Dim rng As Range
For Each rng In Target.Cells
If rng.HasFormula Then
rng.Locked = true
Else
rng.Locked = False
End If
Next rng
ActiveSheet.Protect UserInterFaceOnly:=True
End Sub

Bert
AW: Zeile bedingt ausblenden
28.10.2004 13:52:33
Henri
Danke sehr Bert, das hat mir sehr geholfen.
Henri

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige