Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

array zusammenbauen

Forumthread: array zusammenbauen

array zusammenbauen
02.06.2005 14:55:28
arne
Hallo Forum,
ich habe eine Array Frage kombiniert mit einer Schleife. Und zwar habe ich folgendes:
With ActiveWorkbook.
.PivotCaches.Add(SourceType:=xlConsolidation, SourceData:= _
Array(Array("TN1!R1C1:R14C39", "TN1"), Array("TN2!R1C1:R14C39", "TN2"), _
Array("TN3!R1C1:R14C39", "TN3"), Array("TN4!R1C1:R14C39", "TN4"), Array( _
"TN5!R1C1:R14C39", "TN5"), Array("TN6!R1C1:R14C39", "Element6"))). _
CreatePivotTable TableDestination:="", TableName:="Daten", _
DefaultVersion:=xlPivotTableVersion10
End With
Dummerweise weiss ich nicht wieviele Tabellenblätter ich vorher habe und wie sie
heissen. Ich bräuchte also eine Schleife die mir das array zusammenbaut. Geht das? :)
Schönen Danke
arne
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: array zusammenbauen
02.06.2005 15:32:00
MichaV
Hi,
das geht.
Liegen die Dateien alle in einem Verzeichnis oder sind sie irgendwo aufgelistet? Woher soll das Makro wissen, welche Blätter alle ins Array gehören?
Gruss- Micha
AW: array zusammenbauen
02.06.2005 15:37:48
arne
Hallo Micha,
die sind alle in einer Arbeitsmappe. Das heisst irgendwie folgendermaßen:
Option Explicit
'Wichtig damit die Array Zählung bei 1 startet und nicht wie sonst bei 0
Option Base 1

Sub test()
'Gruppiert Sheets für die weitere Bearbeitung
Dim i, n
Dim z As String
Dim tbArr() As Variant
n = 1
z = 1
ReDim tbArr(Worksheets.Count)
For i = 1 To Worksheets.Count
tbArr(n) = Worksheets(i).Name & "!R1C1:R14C39"
n = n + 1
Next i
End Sub

nur wie ich sie dann in das nächste array reinbekomme ist mir ein rätsel :)
arne
Anzeige
AW: array zusammenbauen
02.06.2005 15:51:53
MichaV
Hi,
nur mal als Vorschlag, ich kanns ja nicht testen..

Dim i, n
Dim z As String
Dim tbArr() As Variant
Dim innerArr() As Variant
n = 1
z = 1
ReDim tbArr(1 To Worksheets.Count)
ReDim innerArr(1 To 2)
For i = 1 To Worksheets.Count
innerArr(1) = Worksheets(i).Name & "!R1C1:R14C39"
innerArr(2) = Worksheets(i).Name
tbArr(n) = innerArr
n = n + 1
Next i

Und dann schreibst Du SourceData:=tbArr
Gruss- Micha
Anzeige
AW: array zusammenbauen
02.06.2005 16:56:42
arne
:))))
so gehts! danke !!!!!!
arne
Fein! Danke für die Rückmeldung owT
02.06.2005 17:24:33
MichaV
AW: array zusammenbauen
02.06.2005 15:40:19
arne
genauer erklärt:
ich habe verschiende Tabellenblätter in einer Arbeitsmappe.
Alle vorhandenen Blätter sollen zusammengezogen werden in einer Pivot.
Ich weiss nur nicht wieviele Tabellenblätter ich habe und wie sie heissen.
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige