Мой код ниже. Макрос должен переместить все диаграммы с активного листа на новый. Это работает хорошо, если я вручную нажимаю на график с помощью мыши перед запуском макроса. Однако, если я этого не сделаю, я получаю ошибку "указанное измерение недопустимо для текущего типа диаграммы" . Любая идея, почему?
Редактировать: эта строка вызывает ошибку:
objChart.Chart.Location xlLocationAsObject, strNewSheet
-
Sub MoveThoseCharts()
'moves each chart on the currently active sheet to a new sheet named "final charts"
Dim strNewSheet As String
Dim objTargetWorksheet As Worksheet
Dim objWorksheet As Worksheet
Dim objChart As Object
Set objWorksheet = ActiveSheet
'Create a new sheet
strNewSheet = "Final Charts"
ActiveWorkbook.Worksheets.Add(Before:=Application.Worksheets(1)).Name = strNewSheet
Set objTargetWorksheet = Application.Worksheets(strNewSheet)
'move each chart
For Each objChart In objWorksheet.ChartObjects
objChart.Chart.Location xlLocationAsObject, strNewSheet
Next objChart
objTargetWorksheet.Activate
End Sub