Excel - Makros - Spalten / zeilen ausblenden

Nico Schütz

Newbie
Registriert
Juni 2014
Beiträge
3
Hallo Zusammen,
ich habe nun einen halben Tag Recherche und erste Gehversuche mit Makros hinter mir. Die Grundlegende Idee habe ich verstanden, bekomme aber trotz unzähliger Versuche mein problem nicht in den Griff.

Ich verfolge dieses Ziel:
Ich habe eine Tabelle, die viele Inhalte beinhaltet, so dass ICH sie alle auf einen Blick im Überblick habe. Jedoch sollen lediglich Teile der Inhalte an unterschiedliche Personengruppen (Käufer / Planer / Notar / Baustelle)als PDF kommuniziert werden.
Hierfür ist es notwendig sowohl ganze Spalten als auch ganze Zeilen auszublenden.

Im Endeffekt soll es auf diese Art vier Layouts geben, die ich gerne über je ein Makro steuern möchte.

In den Spalten 1-4 habe ich in jeder Zeile Schaltflächen, die den Zellen Wahr / Falsch zuweisen:
Spalte 1 = Layout BB
Spalte 2 = Layout PR
Spalte 3 = Layout APL
Spalte 4 = Layout RB

Ich möchte also in je einem Makro jede Zeile eine dieser Splate (z.B. Spalte A (Layout BB) durchsuchen. Wenn der gefundene Wert = Falsch ist, soll die gesamte Zeile ausgeblendet werden.

Des weiteren soll das Makro ohne weiteres Auslesen irgendwelcher Parameter festgelegte Spalten ausblenden - also z.B. blendet Layout BB die Spalte K-M aus und die Spalten R-X


Kann mir das BITTE BITTE jemand weiter helfen???



Ich hoffe ich schaffe es dann zumindest, die Makros auf die anderen layouts anzupassen!?

Und dann noch eine - wahrscheinlich ziemlich elementare Frage: Wenn ich das "Steuerelement Kontrollkästchen" einer Zelle zugewiesen habe, wie kann ich das kopieren - am besten immmer ganze Spalten - so dass sich das Kästchen auf die neue Zelle auswirkt? Bisher hängen dann alle kopierten zellen "zusammen" - sprich ich setze ein Häkchen und alle Kästchen werden aktiviert...?, so dass ich jeder Zelle einzeln den Bezug zuweisen muss....
 
Warum so kompliziert?

Makrorekorder einschalten.
Alles markieren.
Alle Zeilen einblenden.
Unerwünschte Zeilen für Gruppe 1 ausblenden.
Makrorekorder ausschalten.

Das machst du für alle vier Gruppen. Die Makros könnte man sich dann auf Knöpfe legen oder mit einem Dropdown verbinden usw. Problem sind allerdings die Seitenvorschau und -umbrüche. Die muss man natürlich für die komplette Tabelle anlegen.

Besser wäre es da aus meiner Sicht einfach 4 weitere Tabellenblätter anzulegen und die gewünschten Daten dort per Verweis hin zu kopieren.

Bzgl. deiner letzten Frage: Steuerelemente besitzen keine Verbindung zu Zellen, die "schweben" sozusagen darüber. Excel ist also nicht so intelligent, deine Verweise selbst richtig zu variieren.
Mit VBA kannst du aber per Zählschleife neue Steuerelemente generieren und dann auch gleich richtige Verweise mitgeben.
 
Hallo CHaos.Gentle,
vielen Dank für den Tip und den wichtigen hinweis mit der formatierung der utnerscheidlichen Tabellen - das hatte ich bisher nicht bedacht... du erkennst also mein umfängliches Excel-Wissen!?

Wenn ich das jetzt richtig verstehe, müßte ja aber auch das neue Tabellenblatt folgende zwei infos aus dem ersten (Master) auslesen:
- Spalte A müßte geprüft werden, ob das gesetzte Häkchen ein Wahr oder Falsch ist
- Wenn Wahr, dann Die Inhalte der Zeile kopieren
- Jedoch nicht alles kopieren, sondern lediglich die Spalten K-N und Spalten T-V

Wie zum Henker mache ich das denn???

Hilfst du mir nochmal auf die Sprünge???

Danke
Gruß
Nico
Ergänzung ()

Nochmal Hallo CHaos.Gentle!

Also ich steh mit dem Spaß jetzt echt voll auf dem Schlauch und bekomme es einfach nich gerissen.

Mit dem Steuerelementen wäre es natürlich überasu praktisch, wenn ich zum EInfügen weitere INhalte einfach eine ganze Spalte kopieren und einfügen kann inköusive der Kontrollkästchen!
Ahhhhh - aber wie bekomme ich das hin???? ich bin am Suchen und probieren udn Hirn qualmen lassen, aber ich glaube ich bleibe doch bessser bei CAD anwendungen, die sind schon programmiert....

Bitte lass Gnade walten und hilf mir!!!!


Vielen Dank!
 
Wenn der gefundene Wert = Falsch ist, soll die gesamte Zeile ausgeblendet werden.
Meine beliebte Gegenfrage: Und wie blendet sich da wieder ein wenn sich die Gegebenheiten ändern?

Ich sehe da, trotz Makros, kein echtes Licht am Horizont.
Streng genommen ist das was du treibst eine jeweils aktualisierte Datenbankabfrage… Wobei das Teilwort ‹frage› den Finger in die Wunde legt: Welche Frage stellst du und wie oft? Dauerhaftes Ausblenden (ob mit oder mit ohne Makro) ist nicht wirklich genial für Ordnungsfragen; das macht man quasi global einmalig auf Dauer oder fürs bearbeiten just in diesem Moment.

Persönlich halte ich vom Ausblenden eh nicht viel, allenfalls für eine Übergangzeit (vgl. oben) lohnt so was. Zurück zum Schlagwort Datenbank - statt der Ausblendelogik wäre eine ›Einblendelogik‹ sinnvoller: aus einem auf einem (oder Notfalls mehreren) Datenblatt gesammeltem Datenbestand (wurde dir ja schon angeraten) zeigst du auf Anzeigeblättern (i.a.R. besser als mehrere ‹Zonen› auf einem einzigen Blatt) nur das an was gewollt ist. Das kann alles u.U. sogar allein mit Formelakrobatik organisiert werden, ohne Makro.


Ach ja; die Kontrollkästchen… Nun denn - sie taugen für dies und das, aber sie sind starres Element des Blattes, räumlich nicht an Zeilen/Spalten gekoppelt und deswegen gegen Zeilenlöschen oder -einfügen immun. Das Stichwort «Linked Cell» als Eigenschaft so eines Kontrollkästchens sagt dir was? Das wäre auch der Grund warum es mit dem Vermehren nicht so klappt; und nur als anderes ›Spielding‹ gegenüber eines schnöden X in einer Zelle um einen Zustand zu deklarieren sind sie vergeudet. (Wäre das Intention gewesen klappte auch die Vermehrung.)

CN8
 
Hallo cumulonimbus8,
vielen Dnak für deine Hinweise und Anregungen.
Wenn ich das jetzt richtig verstehe, kann es doch aber mit eirner Kombination der Anregungen von dir und von CHaos.Gentle zusammen klappen.

- Ich schmeisse in Tabellenblatt 1 die Kontrollkästchen raus und setze in den ersten vier Spalten jeweils in den relevanten zeilen ein X ein um in den Spalten A-D für die Layouts 1-4 die Information zu haben, welche zeilen übernommen werden sollen
- Dann lege ich die anderen vier Tabellenblätter an und lese von hier di erste aus
- Tabelle zwei liest Spalte a aus und wenn da ein X auftaucht, wird die ganze Zeile übernommen - dazu werden aber nur bestimmte Spalten mitkopiert
- Tabelle drei liest Spalte c aus und wenn da ein X steht, wird dort die ganze Zeile übernommen - dazu werden aber nur bestimmte Spalten mitkopiert

FRAGE: Wie sage ich der Zelle in dem neuen Tabellen Blatt: Lies in Tabelle1 Spalte A Zeilen 1-2000 aus, wenn dort ein X steht, kopiere aus dieser zeile die Spalten d-K und U-V

Dann müßte es doch eigentlich auch funktionieren in Tabelle 1 neue zeilen einzufügen und diese werden entsprechend der Bedingungen in die anderen Blätter übernommen - oder übersehe ich wieder etwas?

Wer ist so nett und gibt mir diese Formel!

Vielen Dank im Voraus!

Gruß
Nico
 
Moin Nico,

grundsätzlich wäre es wesentlich hilfreicher, wenn du eine (abgespeckte und anonymisierte) Tabelle hier einstellen würdest. Ich bin mir nämlich keineswegs sicher, dass der SVERWEIS() eine befriedigende Lösung bringt.

Andererseits könnten wir an dr Mustertabelle erkennen, ob sich das Ganze mit einer PivotTabelle lösen lässt. Manchmal ist das eine gute Lösung.

Und last but not least: Makro ist machbar und sinnvoll, wenn an der eigentlichen Ursprungstabelle kaum noch Änderungen vorgenommen werden. Dann würde ich in der Tat mehrere neue Blätter erzeugen, die dann nur noch die relevanten Inhalte enthalten.
 
Zurück
Oben