Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro zum Ausblenden von Zeilen

Makro zum Ausblenden von Zeilen
26.07.2018 14:18:00
Zeilen
Hallo Zusammen,
ich habe bereits folgendes Makro in einem Arbeitsblatt zum Ausblenden von Zeilen, wenn der Wert von D6_
0 annimmt:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) = "D6" Then
Rows("48:51").Hidden = Target = 0
End If
End Sub

Jetzt bräuchte ich nochmal ein Makro in demselben Tabellenblatt mit folgender Funktion:
wenn D8 nicht gleich 2 ist, dann soll die Zeile 50 ausgeblendet werden, ansonsten eingeblendet.
Ich bekomme es leider nicht hin das beide Funktionen erfüllt werden. Über eure Hilfe würde ich mich sehr freuen :)
Danke!
Gruß Fabian
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro zum Ausblenden von Zeilen
26.07.2018 14:38:17
Zeilen
Hallo Fabian,
wird D8 auch manuell geändert? Soll die Prüfung, ob D8=2 ist, auch bei Änderung von D6 erfolgen?
Gruß Matthias
AW: Makro zum Ausblenden von Zeilen
26.07.2018 14:50:48
Zeilen
Hallo Matthias,
Der Wert für D8 wird über eine Dropdown-Liste vom Nutzer ausgewählt und kann 0,1 oder 2 annehmen. Wenn 0 oder 1 hinterlegt ist dann soll die Ausblendung erfolgen.
Diese Prüfung soll unabhängig von der ersten Funktion durchgeführt werden, d.h. die Zeile kann bereits durch das erste Makro ausgeblendet werden oder durch die Bedingung des zweiten Makros.
Danke!
Anzeige
AW: Makro zum Ausblenden von Zeilen
26.07.2018 15:05:58
Zeilen
Hallo Fabian,
ok, also teste mal Armins Code.
Grundsätzlich wäre noch zu sagen, dass man in manchen Tabellen (bzw. immer, falls kein Schutz aktiv ist) mehrere Zellen auswählen kann und in diese gleichzeitig Inhalt reinschreiben kann (Strg+Enter).
Hier könnte der Code
If Target.Address = "$D$6" And Target.Value = 0 Then

auf einen Fehler laufen, oder die Auswahl nicht erkannst werden (wenn du D5:D6 markiert ist Target.Address="$D$5:$D$6" und es tut sich nix, trotzdem ist ja D6 verändert worden).
Um dies zu vermeiden, kannst du folgendes machen:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim r0 As Range
Set r0 = Me.Range("D6")
If Not Intersect(Target, r0) Is Nothing Then
Me.Rows("48:51").Hidden = (r0.Value = 0)
End If
Set r0 = Me.Range("D8")
If Not Intersect(Target, r0) Is Nothing Then
Me.Rows("50").Hidden = (r0.Value  2)
End If
End Sub

Hier wird der zu überwachenden Zelle eine Bereichsvariable zugewiesen (r0), anschließend wird geprüft, ob die Schnittmenge (Intersect) der Variablen Target (Systemvariable, enthält den veränderten Bereich) und r0 "nicht Nichts" (also etwas) ist. Erst dann erfolgt das Aus-/Einblenden der Zeilen.
Gruß Matthias
Anzeige
AW: Makro zum Ausblenden von Zeilen
27.07.2018 07:55:30
Zeilen
Hallo Matthias, vielen Dank für den Hinweis, ich werde das Makro auf jedenfall mit einbauen!
Ein Schönes Wochende!
Gruß Fabian
AW: Makro zum Ausblenden von Zeilen
26.07.2018 14:40:28
Zeilen
Hallo Fabian,
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$6" And Target.Value = 0 Then
Rows("48:51").Hidden = True
ElseIf Target.Address = "$D$6" And Target.Value > 0 Then
Rows("48:51").Hidden = False
End If
If Target.Address = "$D$8" And Target.Value = 2 Then
Rows(50).Hidden = True
Else
Rows(50).Hidden = False
End If
End Sub
Gruß Armin
Anzeige
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige