Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Pivot Tabelle erstellen,wo es in einem Bereich 2 Felder gibt

Frage Entwicklung VB for Applications

Mitglied: user1234

user1234 (Level 1) - Jetzt verbinden

14.06.2010, aktualisiert 17:01 Uhr, 4720 Aufrufe

Mit VBA möchte ich eine Pivot-Tabelle erstellen.

Also habe ich ein Makro aufgezeichnet, während ich wie gewünscht meine Pivot-Tabelle erstellt habe. Dieses Makro funktioniert an sich auch.

Nur bei einem Bereich möchte ich mehr als 2 Felder haben. Dies habe ich auch bei der Aufnahme des Makros gemacht, nur wenn ich dann das Makro abspiele, erstellt er nur ein Feld je Bereich.

IST:

Berichtsfilter:
"leer"
Spaltenbeschriftungen:
Absender
Zeilenbeschriftungen:
Satz
Werte:
Anzahl von Fehler1-Code

SOLL:

Berichtsfilter:
"leer"
Spaltenbeschriftungen:
Absender
Zeilenbeschriftungen:
Satz
Fehler1-Code
Werte:
Anzahl von Fehler1-Code


Hier ist mein Code:
01.
Sub test() 
02.
03.
' test Makro 
04.
05.
 
06.
07.
    Cells.Select 
08.
    Sheets.Add 
09.
    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ 
10.
        "Tabelle1!R1C1:R65536C39", Version:=xlPivotTableVersion10).CreatePivotTable _ 
11.
        TableDestination:="Tabelle4!R3C1", TableName:="PivotTable1", _ 
12.
        DefaultVersion:=xlPivotTableVersion10 
13.
    Sheets("Tabelle4").Select 
14.
    Cells(3, 1).Select 
15.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Absender") 
16.
        .Orientation = xlRowField 
17.
        .Position = 1 
18.
    End With 
19.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Satz") 
20.
        .Orientation = xlRowField 
21.
        .Position = 2 
22.
    End With 
23.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Fehler1-" & Chr(10) & "Code") 
24.
        .Orientation = xlRowField 
25.
        .Position = 3 
26.
    End With 
27.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Absender") 
28.
        .Orientation = xlColumnField 
29.
        .Position = 1 
30.
    End With 
31.
    ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _ 
32.
        "PivotTable1").PivotFields("Fehler1-" & Chr(10) & "Code"), "Anzahl von Fehler1-" & Chr(10) & "Code", _ 
33.
        xlCount 
34.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Absender") 
35.
        .PivotItems("(blank)").Visible = False 
36.
    End With 
37.
End Sub 

PS: In dem Quell-Tabellenblatt ist Fehler1-Code mit einem Zeilenumbruch eingetragen (falls dies eine Rolle spielt). Dies ist nicht änderbar.

Auf Ratschläge würde ich mich sehr freuen.


Gelöst!
Hier die Lösung:
01.
Sub test() 
02.
03.
' test Makro 
04.
05.
 
06.
07.
    Cells.Select 
08.
    Sheets.Add 
09.
    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ 
10.
        "Tabelle1!R1C1:R65536C39", Version:=xlPivotTableVersion10).CreatePivotTable _ 
11.
        TableDestination:="Tabelle4!R3C1", TableName:="PivotTable1", _ 
12.
        DefaultVersion:=xlPivotTableVersion10 
13.
    Sheets("Tabelle4").Select 
14.
    Cells(3, 1).Select 
15.
 
16.
    ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _ 
17.
        "PivotTable1").PivotFields("Fehler1-" & Chr(10) & "Code"), "Anzahl von Fehler1-" & Chr(10) & "Code", _ 
18.
        xlCount 
19.
 
20.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Absender") 
21.
        .Orientation = xlRowField 
22.
        .Position = 1 
23.
    End With 
24.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Satz") 
25.
        .Orientation = xlRowField 
26.
        .Position = 2 
27.
    End With 
28.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Fehler1-" & Chr(10) & "Code") 
29.
        .Orientation = xlRowField 
30.
        .Position = 3 
31.
    End With 
32.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Absender") 
33.
        .Orientation = xlColumnField 
34.
        .Position = 1 
35.
    End With 
36.
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Absender") 
37.
        .PivotItems("(blank)").Visible = False 
38.
    End With 
39.
End Sub 
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Microsoft Office
Pivot Tabelle schützen ohne Datenabschnitt (1)

Frage von lupi1989 zum Thema Microsoft Office ...

SAN, NAS, DAS
NAS4free - RSync-Auftrag erstellen (1)

Frage von StillerLeser09 zum Thema SAN, NAS, DAS ...

VB for Applications
gelöst Ausgewählten Bereich eines Excel Dokumentes per email verschicken (7)

Frage von Edd1ng zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (32)

Frage von Maik82 zum Thema Linux Netzwerk ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...

Hardware
gelöst PCI-Express-Adapterfrage (14)

Frage von DerWoWusste zum Thema Hardware ...