Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
976to980
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Pivottabelle mit automatisch ausgelesenen Bereich

Pivottabelle mit automatisch ausgelesenen Bereich
19.05.2008 09:11:13
Elmar
Hallo,
ich habe einen Datenbereich, welcher stets aus gleich vielen Spalten besteht (allerdings unterschiedlich viele Zeilen besitzt). Diese möchte ich als Pivottabelle darstellen. Die Spaltenbezeichner bleiben stets die gleichen. Hierfür habe ich mir ein Makro aufgezeichnet um mir die Arbeit zu erleichtern. Der Code sieht wie folgt aus.

Sub MF_Pivot2()
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"TD!R1C1:R907C19").CreatePivotTable TableDestination:="", TableName:= _
"PivotTable1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveWorkbook.ShowPivotTableFieldList = True
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields("TP_ID"), "Anzahl von TP_ID", xlCount
With ActiveSheet.PivotTables("PivotTable1").PivotFields("MF_Ziel")
.Orientation = xlColumnField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields("MF_Start")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields("SperrigTyp")
.Orientation = xlPageField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields("SGS_rel")
.Orientation = xlPageField
.Position = 2
End With
ActiveSheet.PivotTables("PivotTable1").PivotFields("SGS_rel").CurrentPage = "0"
ActiveSheet.PivotTables("PivotTable1").PivotFields("SperrigTyp").CurrentPage = _
"U"
ActiveWorkbook.ShowPivotTableFieldList = False
Application.CommandBars("PivotTable").Visible = False
End Sub


Das Problem liegt nun darin, dass ich den Bereich nicht anpassen kann bzw. ich mit der "UsedRange.Rows.Count" Funktion nicht richtig umgehen kann.
Zudem sollte das neue Tabellenblatt den Namen MF-Matrix besitzen.
Es wäre klasse, wenn mir jemand helfen könnte.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pivottabelle mit automatisch ausgelesenen Bereich
19.05.2008 11:15:00
Elmar
hat sich erledigt ,
mit ein paar Änderungen konnte ich es mit "UsedRange.Rows.Count" doch schaffen :)

AW: Alternativ-Idee Dynamische Namen
19.05.2008 12:51:00
Daniel
Hi
wenn sich immer nur Anzahl der Zeilen in der Datentabelle ändert, dann könntest du auch folgendermassen vorgehen:
- du legst einen Dynamischen Namen an, der seinen Zellbereich immer auf die akuelle Dateigrösse anpasst
- in der Definition zur Pivot-Tabelle gibst du dann keinen festen Zellbereich, sondern diesen Namen an
Vorteil wäre, daß du kein Makro benötigst, daß die Pivot-Tabelle immer wieder neu anlegt, sondern nur die Pivottabelle aktualisieren musst.
die Formel für eine Dynamische Namensdefinition könnte so aussehen:

= Bereich.Verscheiben(Tabelle1!$A$1;0;0;Anzahl2(Tabelle1!$A:$A);Anzahl2(Tabelle1!$1:$1))


dieser Name würde seinen Zellbereich jetzt immer sowohl in Zeilen- als auch in Spaltenanzahl automatisch anpassen.
Gruß, Daniel

Anzeige

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige