Ich habe eine Arbeitsmappe mit mehreren Diagrammblättern. Ich möchte ein Blatt erstellen, auf dem alle Diagramme auf einmal leicht gefunden werden können. So kann ich sie schnell kopieren und in Powerpoint-Präsentationen einfügen.VBA: Organisieren von Diagrammobjekten in Arbeitsblatt
Mein Code kann die Größe jedes Diagrammblattes kopieren, einfügen und ändern. Das Problem kommt, wenn ich versuche, sie auf dem Blatt zu organisieren.
Die Sache ist, dass der Code sie alle in einer einzigen Zeile fügt. Wenn ich zum Beispiel eine große Anzahl von Diagrammen habe, könnte das Finden eines bestimmten Charakters zu viel Zeit in Anspruch nehmen.
Ich möchte alle Diagramme in etwas dieser Art organisieren, eine bestimmte Anzahl von Diagrammen für jede Zeile (sagen wir zum Beispiel, 2 Diagramme pro Zeile).
Ich versuchte, die .left
Eigenschaft für Diagramme zu verwenden, aber es richtet alle Diagramme der gleichen Spalte (und bitte beachten Sie, dass dies nicht meine Absicht ist).
Ich habe auch versucht, eine Variable für die Zeilen einzuführen, aber ich habe Probleme bei der Kontrolle, wenn die Variable für die nächste Zeile "springen" soll, um das Diagramm einzufügen.
Irgendwelche Ideen, wenn dies machbar ist?
Sub PasteCharts()
Dim wb As Workbook
Dim ws As Worksheet
Dim Cht As Chart
Dim Cht_ob As ChartObject
Set wb = ActiveWorkbook
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
'k is the column number for the address where the chart is to be pasted
k = -1
For Each Cht In wb.Charts
k = k + 1
Cht.Activate
ActiveChart.ChartArea.Select
ActiveChart.ChartArea.Copy
Sheets("Gráficos").Select
Cells(2, (k * 10) + 1).Select
ActiveSheet.Paste
Next Cht
'Changes the size of each chart pasted in the specific sheet
For Each Cht_ob In Sheets("Gráficos").ChartObjects
With Cht_ob
.Height = 453.5433070866
.Width = 453.5433070866
End With
Next Cht_ob
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
MsgBox ("All Charts were pasted successfully")
End Sub
wo sind al l Ihre ursprünglichen Diagramme? in mehreren Arbeitsblättern in Ihrer Arbeitsmappe? in einem einzigen Blatt? oder als Kartenblätter platziert? –
Die ursprünglichen Diagramme werden als Diagrammblätter in derselben Arbeitsmappe platziert. – MBBertolucci
Haben Sie eine der folgenden Lösungen ausprobiert? irgendeine Anregung ? –