Excel2016-64bit. Уже не первый раз сталкиваюсь с подобной проблемой, но не помню как она решается. При автоматическом запуске макроса (он может быть запущен с листа кнопкой "Gen Charts") почему-то не вставляется рисунок в область диаграммы(
Diagram.Paste 5-я строка снизу в процедуре "Save_Chart2"). Но если сделать на этой команде точку останова, то все происходит без проблем. Подскажите хотя-бы в какую сторону копать.
Код |
---|
Sub main()
Dim SheetAd1 As Worksheet
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set SheetAd1 = ThisWorkbook.Sheets.Add
Call Save_Chart2("exampleChart", SheetAd1)
Call Save_Chart2("exampleChart2", SheetAd1)
SheetAd1.Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox "Ready!!!"
End Sub
Sub Save_Chart2(ByVal NameFile As String, ByRef Sh1 As Worksheet)
Dim pic As Object
ThisWorkbook.Sheets("Charts").Activate
ActiveSheet.Shapes.Range(Array("Select_area")).Select
Selection.Copy
Sh1.Activate
Set pic = ActiveSheet.Pictures.Paste
pic.Copy
Set Diagram = Sh1.Shapes.AddChart().Chart
Diagram.ChartArea.Height = pic.Height
Diagram.ChartArea.Width = pic.Width
Diagram.Paste
Diagram.Export Filename:=ThisWorkbook.Path & "\" & NameFile & ".gif", FilterName:="GIF"
pic.Delete
Diagram.Parent.Delete
End Sub
|