Clever-Excel-Forum

Normale Version: Wenn in Tabelle 1 Dann Zeile in Tabelle 2 ausblenden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

Ich habe in meiner Tabelle 1 verschiedene Artikel aufgelistet und kann vor diesen Artikel in einer extra Zelle die Menge des benötigten Artikels manuell einstellen (wodurch weitere Gewichtsberechnungen ausgeführt werden).  Um einen besseren optischen Überblick in der Artikelauswertung zu behalten, sollen alle Zeilen, in denen als Menge "0" steht, ausgeblendet werden. Für eine einzige Zeile konnte ich das Makro bereits rausfinden, das sieht das ja wie folgt aus:

Private Sub Worksheet_Change(ByVal Target As Range)

Sub Bison()

If Range("B6") = "0" Then
Rows("6").EntireRow.Hidden = True
End If

End Sub

Nun möchte ich aber die Zeilen in einer zweiten, identischen Tabelle2 ausblenden, und zwar möglichst automatisch, wenn das geht, und auch so dass sie wieder eingeblendet wird, falls ich in Tabelle1 die Menge auf etwas anderes als "0" stelle. Wie kann ich das machen?

Zudem haben manche Zeilen als Bedingung eine "0" in mehreren Zellen. Wenn auch nur in einer davon etwas Anderes als "0" steht, soll die Zeile nicht ausgeblendet werden (genau so über die 2 Tabellen verteilt). Was muss ich hierfür abändern?

Vielen Dank und Grüsse,
GtK
Hallo,

mal abgesehen vom schlechten Listenaufbau, wozu zwei Mal die gleiche Liste?
Hallöchen,

mit diesem Code

If Range("B6") = "0" Then
Rows("6").EntireRow.Hidden = True
End If

wirst Du im Anschluss aber nicht so einfach die 0 aus B6 durch eine andere Zahl ersetzen können ..

Ansonsten, wenn DU in der anderen Tabelle auch die Zeile 6 ausblenden willst, wäre das mit einer zusätzlichen Zeile machbar:
...
Rows("6").EntireRow.Hidden = True
Sheets("Tabelle2").Rows("6").EntireRow.Hidden = True
...
Hallo,
Vielen Dank für die Antwort.

Da habe ich mich wohl missverständlich ausgedrückt. In der ersten Tabelle soll die Zeile 6 eigentlich stehen bleiben, nur in der zweiten Tabelle soll sie ausgeblendet werden. Dadurch sollen in der Tabelle 2 alle nicht vorhandenen Artikel nicht mehr erscheinen.

Wenn ich jetzt einfach die zusätzliche Befehlszeile einfüge, werden die Zeilen 6 in beiden Tabellen ausgeblendet. Wenn ich versuche, in der IF-Befehlszeile das Sheet anzugeben (also Tabelle 1) und für die zweite Zeile das Sheet mit der Tabelle 2 stehen lasse, so lässt mich das Programm das aber nicht machen.

Durch die Ausblendung der Zeile 6 nur in Tabelle 2 könnte ich in der Tabelle 1 die Zahl in B6 auch ändern. Aber das klang jetzt so, als ob ich die Ausblendung dadurch nicht rückgängig machen kann?


Danke und beste Grüsse,
GtK
Hallöchen,

wenn Du nur in Tabelle 2 ausblenden willst, dann änderst Du es nicht in der If-Zeile, sondern nimmst die Blattangabe wie in der Zeile die ich neu dazu geschrieben habe.

Du kannst das aber auch gleich zusammenfügen zu

Sheets("Tabelle2").Rows("6").EntireRow.Hidden = Range("B6") = "0"
Dein Tabellenaufbau ist echt schwierig.. was genau soll die Tabelle darstellen und warum ist der Aufbau wie er ist?

Das Makro funktioniert soweit aber durch den unglücklichen "formatlastigen" Aufbau, ist die Auswertung meines Erachtens eher fehleranfällig... du solltes dir den Aufbau noch einmal ansehen und nochmal überdenken! 

des weiteren verstehe ich die Verwendung der Checkboxen nicht...