Экспортный лист как BMP - PullRequest
0 голосов
/ 28 января 2020

Я получаю макрос ниже в моем документе Excel. Я сталкиваюсь с ошибкой при экспорте.

Ошибка: объект не поддерживает это свойство или метод

Sub pic_gen()
    Sheets("Email").Range("Print_Area").CopyPicture Appearance:=xlScreen, Format:=xlBitmap
    Sheets("foremail").Select
    ActiveSheet.Paste
    Selection.Export ThisWorkbook.Path & "\sChartName.bmp"
End Sub

1 Ответ

0 голосов
/ 28 января 2020

.Export - это метод, который относится к классу Chart или ChartObject. Вы получаете сообщение об ошибке, потому что вы пытаетесь использовать метод .Export для Selection объекта типа Range. Сначала вы должны создать диаграмму, затем вы сможете ее экспортировать.

Это может работать:

Sub RangeToPicture()
  Dim chtObj As ChartObject
  Dim rngPrint As Range
  Set rngPrint = Sheets("Email").Range("Print_Area")
  rngPrint.CopyPicture xlScreen, xlBitmap
  Set chtObj = ActiveSheet.ChartObjects.Add(1, 1, rngPrint.Width, rngPrint.Height)
  chtObj.Activate
  ActiveChart.Paste
  ActiveChart.Export ThisWorkbook.Path & "\sChartName.bmp"
  chtObj.Delete
End Sub
...