将 sheet 导出为 BMP

Export sheet as BMP

我在 Excel 文档中得到以下宏。我在导出时遇到错误。

Error: Object doesnt support this property or method

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

.Export是属于ChartChartObjectclass的方法。您收到错误消息,因为您尝试对类型为 RangeSelection 对象使用 .Export 方法。您应该先创建一个图表,然后才能将其导出。

这可能有效:

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