Clever-Excel-Forum

Normale Version: Makro kopieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen

Hier wiedermal eine Frage.
Ich habe mit dem Makro-Rekorder eine Funktion erstellt, um mit einem Button eine Spalte ein oder auszublenden.
Dies funktioniert soweit alles super. Nun stellt sich meine Frage, ob es eine Möglichkeit gibt, dieses Makro runterzukopieren, so dass sich die Zellenbezüge auch intelligent anpassen.
Sprich: Wenn man in A1 die Zahl 1 schreibt und in A2 die Zahl 2, beide markiert und runterzieht geht es numerisch weiter mit 3,4,5...
Oder man kopiert eine Formel nach unten und der Zellenbezug passt sich automatisch an.

Hat jemand eine Idee wie das bei einem Makro mit vielen Spalten funktioniert?

Besten Dank und Gruss

Pascal
Hallo Pascal,


A) Diese Beispiel:
wofür möchtest du dieses Makro kopieren? Es blendet doch immer die gleiche Spalte aus oder ein.
Setze die Button oberhalb der Liste und fixiere diese Zeilen.
Aus meiner Sicht  wäre es besser auf die Makros ganz zu verzichten und die Spalte über "Daten">"Gliederung">"Gruppieren" einmalig zu gruppieren und dann das Gruppierungssymbol oberhalb des Tabellenbereiches zu nutzen.


B) Generell
Normalerweise sind Makros eben nicht dafür da sie für jedeZelle (oder Zeile; Spalte; Blatt; Datei ...)  zu kopieren.
Die Information auf welche Objekte das Makro angewandt werden soll bekommt es über Parameter oder ander Datenstrukturen.
Hallo Helmut

Geht darum, dass ich eine riesen Liste habe mit Informationen jedoch nicht alle benötige. Jetzt kommt es jedoch auf die Person draufan, welche das Dokument verwendet, welche Spalten ihm wichtig sind. Dafür kann ich mit dem Button die Spalten ein und ausblenden.

Wenn ich den Button in die oberste Zeile setze, und die Spalte ausblenden möchte, blendet es mir den Button auch aus, daher finde ich funktioniert dies nicht optimal.

Gibt es den die Möglichkeit um einen Text runterzukopieren und dieser alphabetisch angepasst wird? Sprich der Text heisst "TEST_A1", nun möchte ich dass ich den Text nach unten kopieren kann und da steht "TEST_B1". Hast du dafür eine Lösung? Weil dann könnte ich das Makro im Excel anpassen und anschliessend zurück ins Visual Basic kopieren. Ausser du hast noch eine einfachere Methode.

Wie meinst du das mit den Parametern? Oder was wäre deiner Meinung nach eine Alternative? Gruppieren habe ich ausprobiert, gefällt mir jedoch optisch nicht so.

Gruss
Pascal
Dim Zelle As String
Zelle = Cells(1, 1).Value
    Columns(Zelle & ":" & Zelle).EntireColumn.Hidden = False

Einfache Lösung das die spalte ausgeblendet wird wo in Zelle A1 steht.
Hallo Pascal ,

A) zu:
Zitat:Wenn ich den Button in die oberste Zeile setze, und die Spalte ausblenden möchte, blendet es mir den Button auch aus, daher finde ich funktioniert dies nicht optimal.

In den einzelnen Zeilen hast du es doch auch geschafft die Button neben den auszublendenden Spalten zu postionieren. Warum geht das oberhalb der Liste nicht?

B) zu:
Zitat:Gruppieren habe ich ausprobiert, gefällt mir jedoch optisch nicht so.

Gruppieren ist der Excel-Standard für das hierarchische Ausblenden von Zeilen und Spalten.
Was bei ener "riesen Liste" an tausenden von Button (die alle das selbe machen) optisch ansprechender als ein Kästchen mit "+" oder "-" (auch Windws-Standard zB. im Browser) ist, kann ich nicht nachvollziehen.