Sub SaveChartAsBMPAndInsertToWord()
    ' 打开 Excel 文件
    Dim wbExcel As Workbook
    Set wbExcel = Workbooks.Open('C:\path\to\your\excel\file.xlsx')
    
    ' 选择工作表中的折线图
    Dim ws As Worksheet
    Set ws = wbExcel.Worksheets('Sheet1')
    Dim chartObj As ChartObject
    Set chartObj = ws.ChartObjects(1)
    
    ' 将折线图保存为 BMP 图片文件
    Dim picPath As String
    picPath = 'C:\path\to\your\image.bmp'
    chartObj.Chart.CopyPicture
    With CreateObject('Shell.Application')
        .Namespace(picPath).InvokeAsFile = True
    End With
    
    ' 打开 Word 文档并插入 BMP 图片
    Dim wordApp As Object
    Set wordApp = CreateObject('Word.Application')
    wordApp.Visible = True
    Dim wordDoc As Object
    Set wordDoc = wordApp.Documents.Add
    wordDoc.Content.Paste
    wordDoc.SaveAs 'C:\path\to\your\document.docx'
    wordDoc.Close
    wordApp.Quit
    
    ' 关闭 Excel 文件
    wbExcel.Close False
End Sub

这段VBA宏代码可以帮助你实现以下功能:

  1. 打开Excel文件: 代码会打开指定路径下的Excel文件。
  2. 选择图表: 选择第一个工作表('Sheet1')中的第一个图表对象。
  3. 保存为BMP图片: 将选择的图表保存为BMP格式的图片文件,并存储到指定的路径。
  4. 打开Word文档: 创建一个新的Word文档。
  5. 插入图片: 将保存的BMP图片插入到Word文档中。
  6. 保存Word文档: 将Word文档保存到指定的路径。
  7. 关闭文件: 关闭Excel文件和Word应用程序。

使用方法:

  1. 打开Excel文件,按下 Alt+F11 打开 VBA 编辑器。
  2. 在 VBA 编辑器中,插入一个新的模块。
  3. 将上述代码粘贴到新的模块中。
  4. 修改代码中的文件路径,将其替换为你实际使用的路径。
  5. 关闭 VBA 编辑器。
  6. 运行该宏:按下 Alt+F8 打开宏对话框,选择 SaveChartAsBMPAndInsertToWord,然后点击运行。

注意事项:

  • 请确保在运行该宏之前,你已经安装了 Excel 和 Word 相应的应用程序。
  • 修改代码中的文件路径时,请使用双反斜杠 () 作为路径分隔符。
  • 该代码默认选择第一个工作表和第一个图表对象,你可以根据需要修改代码以选择其他工作表或图表对象。

希望这段代码能够帮助你自动完成将Excel图表保存为图片并插入Word文档的操作!

VBA宏代码: 将Excel图表保存为图片并插入Word文档

原文地址: https://www.cveoy.top/t/topic/wxM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录