Clever-Excel-Forum

Normale Version: Variable in Makro
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Guten Morgen,

mein Problem ist folgendes: Ich habe eine Arbeitsmappe mit 31 Tabellen. Das erste Arbeitsblatt ("Belegung") stellt eine Übersicht für die folgenden Arbeitsblätter ("1" - "30") dar und man kann auch die einzelnen Arbeitsblätter von dort aus über kleine Button ansteuern. Ich möchte nun den Inhalt eines Arbeitsblattes (1-30) in ein anderes Arbeitsblatt (1-30) kopieren. Die Arbeitsblätter 1 -30 sind völlig identisch aufgebaut. Kann ich nun auf dem ersten Blatt (Belegung) in zwei Zellen jeweils die Blattnummern eingeben und das Makro 'liest' sich von dort die Blattnummern aus und kopiert dann das eine Blatt in das andere oder muss ich tatsächlich insgesamt 60 Kopiermakros dafür anlegen? Mit dem Anlegen einer solchen Variable in VBA bin ich überfordert... :s 

Vielen Dank für eure Hilfe!
Hallo VaterBaum,
das ginge schon. Wenn in Belegung!F4 die Nummer des Quellblattes und in Belegung!G4 die des Zeilblattes stehen, wird mit
Sub BlattKopieren()
    Application.DisplayAlerts = False 'Überschreib-Warnung übergehen
    Sheets(Sheets("Belegung").Range("F4")).Cells.Copy Destination:=Sheets(Sheets("Belegung").Range("G4")).Range("A1")
    Application.DisplayAlerts = True 'Überschreib-Warnung wieder aktivieren
End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 14 - mit VBAHTML 12.6.0

der gesamte Inhalt von Blatt zu Blatt übertragen (und dabei der alte Inhalt im Zielblatt ohne Warnung gelöscht!).
Wolltest Du das so?
Gruß der AlteDresdner
Moin!
Gibt es einen Grund für den Mappenaufbau und die damit verbundenen Redundanzen?
Identisch aufgebaute Tabellen erschweren nur die Auswertung und blähen die Datei auf.
Für so etwas gibt es Auto/Spezialfilter, Pivottabellen, Auswertung per Dashboard uswusf

Gruß Ralf
Nochmal Ich:
Nachdem ich Deinen Post richtig gelesen habe, ist die eine Zeile zu ändern in
    Sheets(Sheets("Belegung").Range("F4").Text).Cells.Copy Destination:=Sheets(Sheets("Belegung").Range("G4").Text).Range("A1")
. Sonst kopiert er das n-te Blatt und nicht Blatt "n".
Gruß der AlteDresdner
Vielen Dank für die Antworten und die Mühe

Bei dem ersten Code bekomme ich die Meldung "Typen unverträglich",
beim zweiten Code stürzt Excel ab, hab allerdings in die Syntax auch tatsächlich nur 'Text' 
reingeschrieben  Sleepy 

@ralf: ja ich brauch die 30 identischen Blätter für 30 verschiedene Leute...

Gruß Steffen
Hi Steffen!
Zitat:@ralf: ja ich brauch die 30 identischen Blätter für 30 verschiedene Leute...
Dies ist ein denkbar schlechtes Argument!
"Mein" Excel hat 2^20 Zeilen und 2^14 Spalten pro Tabellenblatt.
Da lässt sich einiges unterbringen.
Z.B. eine zusätzliche Spalte mit der Personalnummer.

Ein Forum sollte in erster Linie nicht dazu dienen, konkret auf die Fragestellung angepasste Lösungen zu geben, sondern Alternativen aufzuzeigen.
Dazu wäre aber eine (anonymisierte) Beispieldatei notwenig.

Gruß Ralf
(10.11.2016, 16:02)VaterBaum schrieb: [ -> ]Bei dem ersten Code bekomme ich die Meldung "Typen unverträglich",
Hallo Steffen, das Makro setzt voraus, dass in Zelle F4 (Quellblatt) eine Zahl zwischen 1 und 30 und in G4 (Zielblatt) ebenso steht.
Wenn die Zahlen woanders stehen, müsstest Du den Code anpassen.
Beispieltabelle wäre hilfreich...
Gruß der AlteDresdner
Lieber alter Dresdner
Vielen Dank für die Antwort und die Mühe, leider ist es mir nicht gestattet, die Datei 
Online zu stellen, zudem kann ich derzeit auch nur über mein Tablet online sein.
Die Datei ist jedoch genauso, wie ich sie Eingangs beschrieben habe. 
Für deinen Code nochmals Herzlichen Dank, ich glaub, der geht ganz sicher in die Richtung,
Wie er sein müsste, leider hängt er sich immer auf. Vielleicht gibt es auch keine Lösung
Für das Problem. Dank nochmal! 
Der Steffen
Hi Steffen!
Schon mal über meine berechtigten Zweifel nachgedacht?
Eine Beispieldatei darf im Übrigen durchaus anonymisiert werden.
Kostet zwar etwas Mühe, aber Du möchtest ja schließlich etwas von der Community.

Gruß Ralf
(11.11.2016, 16:46)VaterBaum schrieb: [ -> ]Wie er sein müsste, leider hängt er sich immer auf. Vielleicht gibt es auch keine Lösung

Hallo Steffen,
was heißt 'er hängt sich auf'? Gibt es in den Blättern gesperrte Zellen, Bezüge zu anderen Dateien, Grafiken, ...
Anbei die bei mir gehende Lösung.
Gruß der AlteDresdner
Seiten: 1 2