Zelleninhalte als Tabellenname definieren - Teil 2
28.07.2014 14:21:01
D_Gonzalez
ich habe hier im Forum vorher schonmal eine Frage zu einem Makro gestellt. Da diese Makro jedoch mehrere Dinge tut und ich nur eine Frage zu einer Aufgabe habe, hier nochmal die gleich Frage etwas verdichtet:
Ich habe eine Excel-Datei mit den Tabellenblättern "Daten", "Werte" und mehreren Tabellenblätter mit Zahlenbezeichnungen, nehmen wir für das Beispiel "111", "222", "333" und "444" an. In diesen vier letzgenannten Tabellenblättern gibt es einen Datenbereich zwischen ("A12:D12") über mehrere Zeilen hinweg. Also einmal beispielsweise ("A12:D14") (Ab Zeile 15 ist die Tabelle leer), ein anderes Mal ("A12:D17") (ab Zeile 18 ist die Tabelle leer) usw..
In Tabellenblatt "Werte" soll in Spalte A eine Auswahl aus 3 der 4 Tabellenblätter mit Zahlenbezeichnung gewählt werden, indem die Bezeichungen dieser Tabellenblätter eingetragen werden (Beispiel: A1 = "111", A2 = "222" und A3 = "444").
Mein Makro sieht folgendermaßen aus:
Sub Makro_Test()
Dim i As Integer
Dim j As Integer
For i = 1 To 3
j = Cells(i, 1).Name
Worksheets(j).Select
Range("A12:D12").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Worksheets("Werte").Range("A1000").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
Next i
End Sub
Im ersten Durchlauf der Schleife sollte j den Wert "111" einnehmen, dann sollte im Tabellenblatt "111" der definierte Wertebereich kopiert werden usw.Im zweiten Durchlauf sollte j dann "222" sein und mithilfe des Makros der definierte Wertebereich aus Tabellenblatt "222" kopiert werden usw.
Ich habe offensichtlich Probleme mit der Definition von j. Integer könnte falsch sein, Dim As Worksheet funktioniert aber leider auch nicht.
j = Cells(i, 1).Name ist wahrscheinlich ganz falsch, ich weiss aber nicht, wie es eigentlich sein sollte.
Ich hoffe hier kann mir jemand weiterhelfen, mein Latein ist am Ende.
Vielen Dank und vielen Grüße
D_Gonzalez