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

Zellen ein/ausblenden

Zellen ein/ausblenden
30.03.2021 08:51:33
Lorenzo
Hallo Zusammen
Ich habe ein Formular erstellt bei dem mittels VBA Code bei der Auswahl eines Produktes (D20) mittels Dropdown einzelne Spalten EIn/- Ausgeblendet werden.
Nun wollte ich noch einen Blattschutz einbauen bei dem nur bestimmt Zellen ausgefüllt werden können.
Mit Format -> Schutz -> Häcken Gesperrt entfernen ,; Überprüfen -> Blatt schützen.
Sobald der Blattschutz aktiv ist und ich ein Produkt auswähle bei dem einzelne Spalten eingeblendet werden , bekomme ich eine Fehlermeldung:
'Laufzeitfehler '1004' Die Hidden-Eigenschaft des Range-Objektes kann nicht festgelegt werden.
Der VBA Code:

Private Sub Worksheet_Calculate()       'Umschlag SW einblenden'
If Range("D20").Value = "Broschüre SW" Or Range("D20").Value = "Broschüre Color" Or Range("D20") _
_
_
.Value = "Broschüre Umschlag Color Inhalt SW" Then
Rows("32:40").Hidden = False
Else
Rows("32:40").Hidden = True
End If                                  'Ordner Einblenden'
If Range("D20").Value = "Ordner Inhalt SW" Or Range("D20").Value = "Ordner Inhalt Color" Then
Rows("41:49").Hidden = False
Else
Rows("41:49").Hidden = True
End If                                  'Falz&Flyer Einblenden'
If Range("D20").Value = "Falz SW" Or Range("D20").Value = "Falz Color" Or Range("D20").Value = " _
_
_
Flyer Color" Or Range("D20").Value = "Flyer SW" Then
Rows("24:31").Hidden = False
Else
Rows("24:31").Hidden = True
End If
End Sub

Vielen Dank im Voraus für die Hilfe!

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen ein/ausblenden
30.03.2021 09:04:18
Rudi
Hallo,
hebe den BS im Code auf und setz ihn wieder.
Gruß
Rudi

AW: Zellen ein/ausblenden
30.03.2021 09:14:07
ralf_b
Hier mal ein Vorschlag für deinen Code. Läßt sich später besser pflegen und verstehen.
Sub einblenden()
Rows("24:49").Hidden = True
Select Case CStr(Range("D20").Value)
Case "Broschüre SW", "Broschüre Color", "Broschüre Umschlag Color Inhalt SW"
Rows("32:40").Hidden = False
Case "Ordner Inhalt SW", "Ordner Inhalt Color"
Rows("41:49").Hidden = False
Case "Falz SW", "Falz Color", "Flyer Color", "Flyer SW"
Rows("24:31").Hidden = False
End Select
End Sub


Anzeige
AW: Zellen ein/ausblenden
30.03.2021 09:45:39
Lorenzo
Guten Tag
Vielen Dank für ihren besseren Code. Leider funktioniert es mit diesem nicht mehr.
Ich lade mal die Excel Datei hoch.
https://www.herber.de/bbs/user/145203.xlsx

AW: Zellen ein/ausblenden
30.03.2021 10:02:21
Rudi
Geht einwandfrei. Dir fehlt nur der Aufruf.
Ins Modul des Blatts:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$20" Then Call einblenden
End Sub

Gruß
Rudi

AW: Zellen ein/ausblenden
30.03.2021 12:15:38
Lorenzo
Jetzt mit '' Option Excplicit" Funktioniert es.
Vielen Dank!
Wenn ich dann allerdings bei allen Hellbauen Felder den Zellschutz das Häcken ''gesperrt" deaktivierte und den Blattschutz aktiviere. Und im Dropdown Menü (Zelle D20) das Produkt wechseln will kommt wieder der Fehler:
Die Hidden-Eigenschaft des RangeObjekts kann nicht festgelegt werden
Woran könnte das liegen?

AW: Zellen ein/ausblenden
30.03.2021 12:20:37
ralf_b
vielleicht nimmst du den Blattschutz einfach zu Beginn der Sub raus und setzt ihn abschließend wieder. Der Schutz wirkt auf alle Zeilen.

AW: Zellen ein/ausblenden
30.03.2021 13:58:14
Lorenzo
Super Vielen Dank, so jetzt klappt es.

Private Sub Worksheet_Calculate()
Call BlattschutzAus
Rows("24:49").Hidden = True
Select Case CStr(Range("D20").Value)
Case "Broschüre SW", "Broschüre Color", "Broschüre Umschlag Color Inhalt SW"
Rows("32:40").Hidden = False
Case "Ordner Inhalt SW", "Ordner Inhalt Color"
Rows("41:49").Hidden = False
Case "Falz SW", "Falz Color", "Flyer Color", "Flyer SW"
Rows("24:31").Hidden = False
End Select
Call Blattschutz
End Sub
Sub BlattschutzAus()
Sheets("Tabelle1").Unprotect
End Sub
Sub Blattschutz()
ActiveSheet.Protect , UserInterfaceOnly:=True, DrawingObjects:=True, _
Contents:=True, Scenarios:=True
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige