Я пытаюсь скопировать / вставить несколько диаграмм между листами в одной книге Excel. Я делаю это примерно 50-60 раз каждый раз, когда нажимается кнопка, и большую часть времени все, кроме 1 или 2 из этих диаграмм, копируются без проблем (иногда даже все). Однако это иногда вызывает ошибку (1004, Сбой метода копирования класса диаграммы). Все, что нужно сделать пользователю, это нажать отладку и запустить снова, и он будет работать нормально, поэтому я не пытаюсь сделать что-то, на что не способен Excel.
With wsOrigin.ChartObjects("chartName").Chart
' add data and format the sheet
'transfer to CompCarBuild as photo
.CopyPicture
End With
' paste to the sheet and specify the destination range
ws.Paste ws.Range("A1")
' rename the plot
Set sh = ws.Shapes(ws.Shapes.Count)
sh.Name = "lineplot" & i
Есть ли лучший способ копирования / вставки между листами? Мне не нужно вставлять диаграммы в виде картинок, но .copy не работает лучше, чем .copypicture. Иногда в строке вставки также возникает ошибка, но это встречается гораздо реже.