Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
960to964
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
960to964
960to964
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Daten aus Pivot automatisch in einzelne Blätter

Daten aus Pivot automatisch in einzelne Blätter
23.03.2008 12:37:00
Rupert
Hallo Forum,
Ist vielleicht wieder mal ungewöhnlich meine Anfrage, jedoch ist mein Schatzerl an mich herangetreten und zwar mit einem Problem.
Sie hat eine Pivot-Tabelle, jetzt ist es ja bei Pivot, so wenn ich auf den wert im Datenfeld (Spalte D) doppelt klicke, öffnet sich ein neues fenster mit den detail daten, dies würde ich jetzt gerne vom ersten bis zum letzten datenfeld per VBA erstellen, wobei der tabellenblatname aus der zelle c2 übernommen werden sollte.
Der nächste schritt wäre dann das pro tabellenblatt eine neue Datei erstellt werde soll mit dem namen des Tabellenblattes.
Ich weiss es klingt kompliziert, jedoch hoffe ich das mir jeman helfen kann.
danke vorab
rupert

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

Betreff
Datum
Anwender
Anzeige
AW: Daten aus Pivot automatisch in einzelne Blätter
23.03.2008 19:11:47
Herby
Hallo Rupert,
anbei ein kleines Beispiel für das Auslesen
der Detaildaten aus der Pivottabelle:

Die Datei https://www.herber.de/bbs/user/50959.xls wurde aus Datenschutzgründen gelöscht


die neuen Tabellenblätter können ebenfalls per Makro
umbenannt werden. Wie sollen sie denn bezeichnet werden ?
Viele Grüße
Herby

AW: Daten aus Pivot automatisch in einzelne Blätter
24.03.2008 20:23:21
Rupert
Hallo Herby,
Die neuen Tabellenblätter sollten nach dem Inhalt des Datenfeldes c2 benannt werden
Danke vorab für die hilfe
LG
Rupert

Anzeige
AW: Daten aus Pivot automatisch in einzelne Blätter
24.03.2008 23:02:58
Herby
Hallo Rupert,
da ich deine Tabellen nicht kenne, weis ich nicht was bei dir im Datenfeld c2 steht.
Ich habe daher das kleine Beispiel erweitert und es werden alle Tabellenblätter mit
den Detaildaten als eigene Datei gespeichert. Die Bezeichnung der Dateien ist
der Inhalt der Zelle B2. Dort steht der jeweilige "Kundenname".
Falls bei dir andere Felder/Bezeichnungen als Dateinamen in Frage kommen,
ist halt die richtige Zelle auszulesen.
https://www.herber.de/bbs/user/50979.xls
Viele Grüße
Herby

Anzeige
AW: Daten aus Pivot automatisch in einzelne Blätter
25.03.2008 08:50:35
Rupert
Hallo Herby,
Danke für deine Hilfe, hab jetzt gestern noch den code fertiggestellt, der mir die daten auf ein jeweils eigenes Tabellenblatt aufruft, dieses Tabellenblatt mit dem Name der in zelle c2 steht versieht, das tabellenblatt kopiert und dann diese neue Tabelle unter eben diesen Namen speichert.
ich hänge den script hier unten rein, vielleicht hast du noch verbesserungsvorschläge, aber im grossen und ganzen läuft er.

Sub Blätter_erstellen()
Set datname = ActiveWorkbook
strverz = ActiveWorkbook.Path & "\"
Dim strDateiname As String
With ActiveSheet.PivotTables("PivotTable1").PivotFields("ANummer")
.PivotItems("(Leer)").Visible = False
End With
Dim PT As PivotTable
Dim Zelle As Range
Set PT = Worksheets("PIVOT").PivotTables(1)
Application.ScreenUpdating = False
PT.RowFields(1).DataRange.Select
For Each Zelle In Selection
Zelle.Offset(0, 2).ShowDetail = True
Range("D:F,J:K,M:N").Select
Selection.Delete Shift:=xlToLeft
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftFooter = "&F"
.CenterFooter = "Seite &P von Seiten &N"
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = False
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveSheet.Name = Range("c2")
ActiveSheet.Copy
strDateiname = Range("c2").Value & ".XLS"
ActiveWorkbook.SaveAs strverz & strDateiname
ActiveWorkbook.Close
datname.Activate
Next
Application.ScreenUpdating = True
End Sub


nochmals danke für deine hilfe, war ech super
LG
Rupert

Anzeige
AW: Daten aus Pivot automatisch in einzelne Blätter
25.03.2008 16:18:00
Herby
Hallo Rupert
wenns läuft, dann ist das Makro doch O.K.
Ich habs mir mal angeschaut und ein paar Kleinigkeiten geändert, wie
z.B. für alle Variablen eine Deklaration vorgenommen und die anderen Deklarationen
an den Anfang gestellt, die with-Schleife für den Druck noch zusammengefasst und
das wars auch schon.
Warum hast du eigentlich die Pagesetup - Routine noch eingefügt ?
Viele Grüße
Herby

Sub Blätter_erstellen()
Dim strDateiname As String
Dim datname As Workbook
Dim strVerz As String
Dim PT As PivotTable
Dim Zelle As Range
strVerz = ActiveWorkbook.Path & "\"
Set datname = ActiveWorkbook
Set PT = Worksheets("PIVOT").PivotTables(1)
Application.ScreenUpdating = False
With PT
.PivotFields("ANummer").PivotItems("(Leer)").Visible = False
.RowFields(1).DataRange.Select
End With
For Each Zelle In Selection
Zelle.Offset(0, 2).ShowDetail = True
Range("D:F,J:K,M:N").Select
Selection.Delete Shift:=xlToLeft
With ActiveSheet.PageSetup
.PrintArea = ""
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
.LeftFooter = "&F"
.CenterFooter = "Seite &P von Seiten &N"
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = False
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveSheet.Name = Range("c2")
ActiveSheet.Copy
strDateiname = Range("c2").Value & ".XLS"
ActiveWorkbook.SaveAs strVerz & strDateiname
ActiveWorkbook.Close
datname.Activate
Next
Set datname = Nothing
Set PT = Nothing
Application.ScreenUpdating = True
End Sub


Anzeige
AW: Daten aus Pivot automatisch in einzelne Blätter
26.03.2008 09:02:00
Rupert
Hallo Herby,
Eigentlich habe ich die page-setup eingefügt wegen
Titlerows, Left Footer, Center Footer, Fit to page wide und wegen dem Landscape.
Aber ich bin ja schon stolz drauf das es funktioniert und dank deiner Hilfe bin ich auch rasch weitergekommen. Das spart meinem Schatz einen Ganzen Tag Arbeit, da sie das normalerweise händisch machen musste.
Nochmals grossen dank
LG
Rupert

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige