Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Makro kopieren
#1
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


Angehängte Dateien
.xlsm   Makro kopieren.xlsm (Größe: 20,88 KB / Downloads: 6)
Antworten Top
#2
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.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#3
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
Antworten Top
#4
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.
Antworten Top
#5
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.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste