Я написал некоторый код VBA для вставки встроенного изображения во встроенную диаграмму на лист Excel. Процедура пытается сделать это, копируя изображение, добавляя встроенную диаграмму, устанавливая размеры к измерениям изображения, а затем вставляя изображение.
Дело в том, что он работает без ошибок, когда я прохожу через него с F8 («Отладка» → «Шаг в»). Код выглядит достаточно простым, и я экспериментировал с размещением последовательности «Копировать / Вставить», и, похоже, ничто не помогло завершить этот последний шаг Вставить при запуске макроса.
Sub EP()
Sheet9.Shapes("Picture 2").Copy
Dim xcht As Chart: Set xcht = Sheet9.Shapes.AddChart.Chart
With xcht
.ChartArea.ClearContents
.ChartArea.Width = Sheet9.Shapes("Picture 2").Width
.ChartArea.Height = Sheet9.Shapes("Picture 2").Height
.Paste
End With
End Sub
Он отлично работает с F8 ; изображение вставлено в график. Просто не во время работы - я запускал с зеленой кнопкой воспроизведения в редакторе VBA, запускал его через диалоговое окно макросов и запускал через кнопку на листе. Без изменений в результатах.
Что не так? Как я могу заставить эту подпрограмму работать правильно нормальным вызовом? Любая помощь приветствуется.