Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Pivotcache.Sourcedata

Pivotcache.Sourcedata
David
Hallo zusammen,
komischerweise wird mein Beitrag https://www.herber.de/forum/archiv/1124to1128/t1127052.htm weder bei "Offfene Fragen" noch bei "Forum-Liste" angezeigt, k. A. ob das hier an meinem Rechner liegt oder andere Gründe hat.
Ich fände es ganz toll, wenn einer der VBA-Experten sich nochmal das Problem anschauen könnte.
Danke und Gruß
David

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

Betreff
Benutzer
Anzeige
AW: Pivotcache.Sourcedata
11.01.2010 16:09:26
fcs
Hallo David,
nach ein paar Tagen wandern alle älteren Beiträge ins Archiv, deswegen ist dein Beitrag "verschwunden".
zu deinem Problem:
Wenn die Quelldatei der Pivottabelle geöffnet ist, dann darf in der Pivot-Quelle kein Pfad mit angegeben werden.
Zusätzlich sollte sichergestellt sein, dass Quelldatei und Datei mit Pivottabellen geöffnet sind.
Gruß
Franz
Sub Pivot_Quelle()
Dim i As Byte, Zeilen As Double, Spalten As Double
Dim wbSource As Workbook, wks As Worksheet, oPVCache As PivotCache
Dim sDateiSource As String, sSheetSource As String, sDateiPivot As String
sDateiSource = "Materialabweichung komplett.xls"
sSheetSource = "SAPBW_DOWNLOAD"
sDateiPivot = "Verluste.xls"
If checkWorkbook(sWorkbookName:=sDateiPivot) = True Then
If checkWorkbook(sWorkbookName:=sDateiSource) = True Then
Set wbSource = Workbooks(sDateiSource)
Set wks = wbSource.Worksheets(sSheetSource)
Zeilen = wks.UsedRange.Rows.Count
Spalten = wks.UsedRange.Columns.Count
With Workbooks(sDateiPivot)
For i = 1 To .PivotCaches().Count
Set oPVCache = .PivotCaches(i)
With wks
oPVCache.SourceData = "'[" & wbSource.Name & "]" & .Name & "'!" _
& .Range(.Cells(1, 1), .Cells(Zeilen, Spalten)).Address(ReferenceStyle:=xlR1C1)
End With
Next
End With
Else
MsgBox "Bitte vorm Makro-Start Datei """ & sDateiSource & """ öffnen!", _
vbInformation + vbOKOnly, "Aktualisierung Pivot-Sorce-Data"
End If
Else
MsgBox "Bitte vorm Makro-Start Datei """ & sDateiPivot & """ öffnen!", _
vbInformation + vbOKOnly, "Aktualisierung Pivot-Source-Data"
End If
Set wbSource = Nothing: Set wks = Nothing: Set oPVCache = Nothing
End Sub
Function checkWorkbook(sWorkbookName As String)
'Prüft ob workbook geöffnet ist
Dim wb As Workbook
For Each wb In Workbooks
If LCase(wb.Name) = LCase(sWorkbookName) Then checkWorkbook = True
Next
End Function

Anzeige
AW: Pivotcache.Sourcedata
12.01.2010 07:20:09
David
Hallo fcs,
das mit dem Archiv war mir bekannt, ich wußte nur nicht, dass dies so schnell passiert, denn der Beitrag war gerade einmal 5 Tage alt.
Deinen Code muß ich noch ausgiebig testen. Dass die Pivotdatei geöffnet ist, ist logisch, da der Code in DIESER Datei steht. Die Prüfung auf die Quelldatei ist m. E. auch nicht unbedingt notwendig, da in einem vorherigen Makro die Datei mit geöffnet wird. Aber man weiß ja nie, und ich werde deinen Hinweis und deine Hilfe trotzdem überdenken.
Auf jeden Fall wäre ich auf diese Ursache nie gekommen, zumal bei der Ausgabe des aktuellen Pivotcaches per MsgBox ja der Pfad auch mit angezeigt wird!
Nun ja, VBA hat halt seine Tücken.
Danke und Gruß, falls ich's innerhalb der "Archivierungsfrist" schaffe, zu testen, schreibe ich nochmal ein Feedback.
David
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige