Я пытаюсь экспортировать все диаграммы в моем файле Excel как изображение PNG. Диаграммы не встраиваются в рабочие таблицы, а вместо этого перемещаются как новый лист при создании.
Не знаком с VBA или офисными макросами, я пытался связать воедино что-то на основе примеров кода, которые я нашел в сети, но безуспешно.
Вот что я попробовал, это может работать с диаграммами, встроенными в рабочие таблицы, но не с автономными диаграммами:
Private Sub ExportChartsButton_Click()
Dim outFldr As String
Dim ws As Worksheet
Dim co As ChartObject
outFldr = GetFolder(ActiveWorkbook.Path)
For Each ws In ActiveWorkbook.Worksheets
For Each co In ws.ChartObjects
co.Export outFldr & "\" & ws.Name & ".png", "PNG"
Next
Next
End Sub
Когда кнопка нажата, кажется, ничего не происходит.
Если я заменю внутренний цикл на MsgBox co.ChartObjects.Count
, я получу всплывающее окно 0
для каждого из моих рабочих листов, не относящихся к диаграмме, поэтому я, очевидно, не выполняю итерацию по нужным объектам (следовательно, нет диаграмм, поэтому ничего не происходит).
Итак, как мне перебирать диаграммы, которые не встроены в таблицы?