Невозможно скопировать Excel Map Chart с помощью VBA

Я пытаюсь автоматизировать создание презентации PowerPoint в MS Excel 2016 с использованием VBA. Я хочу скопировать карту, основанную на сводной таблице, и получаю сообщение "Ошибка времени выполнения" 445: объект не поддерживает это действие ".

Я использую Excel 2016. Я пытаюсь скопировать диаграмму карты, основанную на сводной таблице, и не могу получить диаграмму для "копирования". Я пытался записать макрос, но когда я запускаю записанный код, он выдает ту же ошибку. Я включил упрощенную версию кода ниже, которая все еще производит ошибку для меня. Когда я применяю этот код к другим графикам (столбцам или линиям) в том же листе, ошибок нет.

Sub X() Dim wb As Workbook Dim wsa As Worksheet Dim ch As ChartObject

Set wb = ThisWorkbook
Set wsa = Sheets("World Map")

For Each ch In wsa.ChartObjects
    myleft = ch.Left
    myright = ch.Top
    ch.Copy
Next ch

End Sub

'ch.Copy' выдает ошибку. Я ожидал, что смогу успешно скопировать это и добавить код, чтобы вставить его в powerpoint.

0
источник поделиться
1 ответ

Вы пытались использовать "ch.CopyPicture" вместо "ch.Copy"? Это сработало для меня.

Sub X()

Dim wb As Workbook
Dim wsa As Worksheet
Dim ch As ChartObject

Set wb = ThisWorkbook
Set wsa = Sheets("World Map")

For Each ch In wsa.ChartObjects
    myleft = ch.Left
    myright = ch.Top
    ch.CopyPicture
Next ch

End Sub

+1
источник

Посмотрите другие вопросы по меткам или Задайте вопрос