Wie sagte schon der Chemie-Lehrer in "Die Feuerzangenbowle"? "Ich stehe vor einem Rätsel!"
Ich habe in einem Makro folgenden Code:
Sub new_month()
Application.ScreenUpdating = False
Const Standard As String = "L:\Finanz\monthend\2008\|\[SAP wages.xls]SAP wages'!C3:N5000"
Dim Neuer_Bezug As String Dim Nmonth As String Dim Pmonth As Byte
Nmonth = InputBox("Welcher Monat?")
If Nmonth = "" Then
MsgBox ("falsche Eingabe, Makro wird abgebrochen") Exit Sub
End If
Nmonth = Format(Nmonth, "00")
Workbooks.OpenText Filename:="L:\Finanz\monthend\2008\" & Nmonth & "\SAP wages.xls", ...
ActiveWindow.Visible = False
Neuer_Bezug = "='" & Replace(Standard, "|", Nmonth, , 1)
With Sheets("SAP wages").Range("A1:L5000")
.ClearContents
.FormulaArray = Neuer_Bezug
End With
'Pmonth = Format(Nmonth, "0")
Pmonth = Nmonth
Sheets("aktueller Monat (56)").PivotTables("PivotTable6").PivotFields(" Period").CurrentPage = _
Nmonth
Sheets("aktueller Monat (58)").PivotTables("PivotTable6").PivotFields(" Period").CurrentPage = _
Nmonth
Sheets("Vormonat (beide)").PivotTables("PivotTable6").PivotFields("Text").CurrentPage = _
"4-4-5 salaries P" & Nmonth - 1 & "/2008"
Application.ScreenUpdating = True
End Sub
Prinzipiell macht das Makro alles richtig. Allerdings ist hinterher meine Pivottabelle "verbogen". In dem entsprechenden Feld für die Monate steht aktuell z. Bsp. der Monat 7 zweimal, einmal davon kommen richtige Werte, einmal nicht. Wenn ich bei den falschen Daten per Doppelklick die Dateils aufrufe, sehe ich dass bei Monat die "5" steht, in der Pivottabelle werden sie aber mit "7" angezeigt!!!
Meine Vermutung wäre, dass die Zeile
Sheets("aktueller Monat (56)").PivotTables("PivotTable6").PivotFields(" Period").CurrentPage = Nmonth
dafür verantwortlich ist. Ich hatte diese per Rekorder aufgezeichnet und dann nur den dort festen Wert durch die Variable ersetzt.
Ich würde ja die Tabelle mal hochladen, aber erstens ist sie ziemlich groß und die Daten sind sensibel. Ohne weiteres läßt sie sich auch nicht abspecken.
Aber falls anhand meiner Ausführungen hier keiner eine Lösung weiß, würde ich mir auch die entsprechende Mühe machen.
Hoffe, ich konnte mich verständlich machen.
Gruß
David