当前位置: 首页 > news >正文

vba讲excel转换为word

VBA将excel转换为word

Sub ExportToWordFormatted()

    ' 声明变量
    Dim ws As Worksheet ' 用于存储当前活动的工作表
    Dim rng As Range ' 用于存储工作表的使用范围(即所有有数据的单元格)
    Dim rowCount As Long, colCount As Long ' 用于存储数据范围的行数和列数
    Dim i As Long, j As Long ' 用于循环遍历行和列
    
    Dim wordApp As Object ' 用于存储 Word 应用程序对象
    Dim wordDoc As Object ' 用于存储 Word 文档对象
    
    ' 设置工作表和数据范围
    Set ws = ActiveSheet ' 将当前活动的工作表赋值给变量 ws
    Set rng = ws.UsedRange ' 获取工作表中所有有数据的单元格范围,赋值给 rng
    
    rowCount = rng.Rows.Count ' 获取数据范围的行数
    colCount = rng.Columns.Count ' 获取数据范围的列数
    
    ' 启动 Word 应用程序
    On Error Resume Next ' 忽略错误,以便在 Word 未安装或未运行时避免报错
    Set wordApp = GetObject(Class:="Word.Application") ' 尝试获取已运行的 Word 应用程序实例
    If wordApp Is Nothing Then ' 如果未找到运行的实例
        Set wordApp = CreateObject(Class:="Word.Application") ' 创建一个新的 Word 应用程序实例
    End If
    On Error GoTo 0 ' 恢复正常的错误处理
    
    wordApp.Visible = True ' 设置 Word 应用程序为可见
    Set wordDoc = wordApp.Documents.Add ' 创建一个新的 Word 文档
    
    ' 遍历 Excel 中的每一行(从第2行开始,假设第1行为标题)
    For i = 2 To rowCount
        For j = 1 To colCount
            Dim title As String ' 用于存储当前列的标题
            Dim content As String ' 用于存储当前单元格的内容
            title = rng.Cells(1, j).Text ' 获取当前列的标题(第1行的内容)
            content = rng.Cells(i, j).Text ' 获取当前单元格的内容(第 i 行的内容)
            
            ' 将标题和内容格式化后插入到 Word 文档中
            wordDoc.content.InsertAfter Text:=i - 1 & "." & j & " " & title & ":" & content & vbCrLf
        Next j
        wordDoc.content.InsertAfter Text:=vbCrLf ' 每条记录后加一个空行
    Next i

    ' 提示用户数据已成功导出
    MsgBox "数据已成功导出到 Word!"

End Sub

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章:

  • 从One-Hot到TF-IDF:NLP词向量演进解析与业务实战指南
  • 初版纳米AI_git pull分支关联关系
  • 如何降低论文的AIGC检测率,减少“AI味”
  • CD26.【C++ Dev】类和对象(17) static成员(下)
  • c++进阶之----异常
  • java实体类常用参数验证
  • DepthAI ROS 安装与使用教程
  • 从传统 CLI 到自动化:网管协议( SNMP / NETCONF / RESTCONF)与 YANG
  • Java SE(2)——运算符
  • 艾尔登法环Steam不同账号存档互通方法与替换工具分享
  • nginx入门,部署静态资源,反向代理,负载均衡使用
  • 【基于LangChain的千问大模型工具调用】 Function CallingTool Calling简易示例
  • SCS翠鸟认证是什么,SCS翠鸟认证的意义?对企业发展好处
  • NO.88十六届蓝桥杯备战|动态规划-多重背包|摆花(C++)
  • SpringBoot 基础知识,HTTP 概述
  • 从递归入手一维动态规划
  • Java的内存模型
  • 高等数学同步测试卷 同济7版 试卷部分 上 做题记录 第二章导数与微分同步测试卷A卷
  • Java Lambda与方法引用:函数式编程的颠覆性实践
  • Soybean Admin 配置vite兼容低版本浏览器、安卓电视浏览器(飞视浏览器)