Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1592to1596
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
Inhaltsverzeichnis

Falsche $-Einheit in Pivotchart - nur manchmal

Falsche $-Einheit in Pivotchart - nur manchmal
07.12.2017 10:20:25
Andreas
Hallo Zusammen,
ich habe ein nerviges Problem.
Monatlich werden mit einem Makro in einer Pivot Tabelle die 6 Unternehmensbereiche mit einem Filter durchgeschaltet und das jeweilige Pivot Chart exportiert als *jpg. Dabei kommt es willkürlich dazu dass ein Teil der Diagramme mit der Einheit $ statt € angezeigt werden (auch vor Export sichtbar). Die Tabelle ist schon in € formatiert, nachträglich habe ich das dann nochmal im Code hinterlegt und Besserung erhofft.
Das abstruse ist: wenn ich den Code langsam durchtippe werden alle Charts korrekt erzeugt. Wenn ich es schnell tippe oder laufen lasse kommt es zu den $.
Wer weiß hier Rat? Kann ich den Code langsamer abarbeiten lassen oder kleine Wartezeiten hinzufügen?
Schon mal Danke im Voraus
Sub bereichsbudgetcharts()
'
' bereichsbudgetchart Makro
'
'
'speichert die montalich aktualisierten Diagramme für die Bereiche aus dem Entwicklungsbericht an fixem Pfad
'als .jpg oder .pfd zur weiteren Verarbeitung
'Arbeitsplatzumfang wählen
Sheets("Charts").Select
ActiveSheet.Range("Di20").End(xlUp).Offset(1, 0).Activate
letztezeile = ActiveCell.Row - 1
'Monat/Periode für Monatschart setzen
periode_akt = Range("DN4").Value
zielzeileplan = periode_akt * 2 + 55
zielzeileist = periode_akt * 2 + 56
Sheets("Chart_class_division_month").SetSourceData Source:=Sheets("Charts").Range("DM56:DS56,DM" & zielzeileplan & ":DS" & zielzeileist)
'Range("DM56:DS56,DM59:DS60")
For i = 2 To letztezeile
'Bereich auswählen und Pivot aktualisieren
Sheets("Charts").Select
bereich = Cells(i, 113).Value
If bereich = "" Then GoTo sprung
ActiveSheet.PivotTables("PivotTable_class_trend_division").PivotFields("Bereich").CurrentPage = bereich
ActiveSheet.PivotTables("PivotTable_class_trend_division").PivotFields("Summe von Kosten").NumberFormat = "#,##0 €"
ActiveSheet.PivotTables("PivotTable_class_division_month").PivotFields("Bereich").CurrentPage = bereich
ActiveSheet.PivotTables("PivotTable_class_division_month").PivotFields("Summe von Kosten").NumberFormat = "#,##0 €"
'Diagramme speichern als pdf
'Sheets("Chart_class_trend_division").Select
'ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"W:\Dokumente\Berichtswesen Uhlmann\1. Uhlmann Laupheim\1.00 Allgemein\1.00.11 Entwicklungsberichte\Entwicklungsprojekte\Aktuell\Charts\chart_" & bereich & "_class_trend_division.pdf" _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
'Diagramme speichern als jpg
Sheets("Chart_class_trend_division").Select
ActiveChart.Export Filename:= _
"W:\Dokumente\Berichtswesen Uhlmann\1. Uhlmann Laupheim\1.00 Allgemein\1.00.11 Entwicklungsberichte\Entwicklungsprojekte\Aktuell\Charts\chart_" & bereich & "_class_trend_division.jpg"
Sheets("Chart_class_division_month").Select
ActiveChart.Export Filename:= _
"W:\Dokumente\Berichtswesen Uhlmann\1. Uhlmann Laupheim\1.00 Allgemein\1.00.11 Entwicklungsberichte\Entwicklungsprojekte\Aktuell\Charts\chart_" & bereich & "_class_division_month.jpg"
sprung:
Next
Exit Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Falsche $-Einheit in Pivotchart - nur manchmal
08.12.2017 11:18:56
fcs
Hallo Andreas,
leider hat es Microsoft auch nach über 20 Jahren immer noch nicht geschafft, dass internationale Formate für Datum und Zahlen(Währung) unter VBA stets korrekt verarbeitet werden - Pivotberichte und Diagramme können hier besonders übel betroffen sein.
Da bei deinen Diagrammen und Pivotberichten die Währung wohl immer € ist solltest du die entsprechenden Zahlenformate für die Felder im Pivotbericht und an den Diagrammelementen manuell vorgeben und nicht per Makro anpassen.
In deinem Makro solltest du vor For-Next-Schleife noch die Pivotberichte aktualisieren, so dass in den Auswertungen auh sicher die neuesten Zahlen aus der Quelle verwendet werden.
    ActiveSheet.PivotTables("PivotTable_class_trend_division").RefreshTable
ActiveSheet.PivotTables("PivotTable_class_division_month").RefreshTable
For i = 2 To letztezeile
Evtl. hilft es, wenn du vor ddem Export der Diagramme eine komplette Neuberechnung von Excel durchführen läßt.
Application.Calculate

Gruß
Franz
Anzeige

141 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige