Word 插件实现读取excel自动填写

日常工作中碰到需要将EXCEL的对应数据记录填写到word文档对应的位置,人工操作的方式是:

打开exel表--->查找对应报告号的行--->逐列复制excel表列单元格内容到WORD对应的位置(如下图标注所示)

这种方法耗时且容易出错。实际上如果使用VBA开发WORD插件,编写代替人手操作的自动程序可以实现自动填写(秒填的感觉很爽),可以一劳永逸解决这样的困扰。

实现的代码如下:

Sub ReadExcelData()

Dim xlApp As Object

Dim xlBook As Object

arr_excel = Array("SAMPLE CODE", "TRI PRODUIT", "TRI COMPOSANT", "TYPE", "COMPONENT", "Color", "Description", "FP MODEL", "FP MATERIAL", "FP Color", "DESCRIZIONE", _

"FP SUPPLIER", "USE", "COMPOSIZIONE", "FORNITORE", "POIDS G / M2", "INFLA", "SHIPPING DATE TO CHINA", "RECEPTION Date", "CELINE PACKAGE")

arr_E = Array("B", "", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "", "R", "S", "T", "U", "V", "W")

arr_Word = Array("CERTEST REFERENCE", "", "TRI PRODUIT", "TRI COMPOSANT", "TYPE", "COMPONENT", "Color", "Description", "FP MODEL", "FP MATERIAL", "FP Color", "Description PROJECT", _

"FP SUPLIER", "USE", "COMPOSITION", "", "SUPPLIER", "POIDS", "INFLA", "RECEPTION Date", "SHIPPING DATE TO CHINA", "Test PACKAGE")

rp = Left(ActiveDocument.Name, 11)

Set xlApp = CreateObject("Excel.Application")

filepath = "K:\XX\xx\xx" 'excel表坐在的路径

fn = Dir(filepath & "xxxx" & "*.xlsx")

Set xlBook = xlApp.Workbooks.Open(filepath & fn)

With xlBook.Sheets(1)

rws = .Cells(.rows.Count, "a").End(-4162).Row

For i = 2 To rws

If InStr(.Cells(i, 1).value, rp) > 0 Then

ReDim arr(22)

For j = 0 To 22

arr(j) = .Cells(i, j + 2)

Next

Exit For

End If

Next

End With

xlBook.Close False

Set xlBook = Nothing

Set xlApp = Nothing

'MsgBox UBound(arr)

For k = 0 To UBound(arr) - 1

If arr_Word(k) <> "" Then

Call infoFill(arr_Word(k), arr(k))

End If

Next

End Sub

Private Sub infoFill(kw, res)

Dim para As Paragraph

For Each para In ActiveDocument.Paragraphs

If InStr(UCase(para.Range.Text), UCase(kw)) > 0 Then

If res = "" Then

para.Next.Next.Range = "/"

Else

para.Next.Next.Range = res

End If

If InStr(UCase(para.Range.Text), "CERTEST REFERENCE") > 0 Then

para.Next.Next.Range = para.Next.Next.Range & Split(para.Next.Next.Range, ".")(0) & ".02"

End If

Exit Sub

End If

Next

将插件安装在WORD的NORML文件,实现点击按钮即可实现excel内容的自动填写.

给按钮添加图标,这样在WORD的操作界面就可以看到程序执行的插件。

这样插件就完成了,每次点击按钮就可以秒速完成填写。

相关推荐
幻云20101 小时前
AI自动化编排:从入门到精通(基于Dify构建AI智能系统)
运维·人工智能·自动化
代码AI弗森4 小时前
n8n 专题:从“自动化脚本”到“可视化工作流引擎”(自建、节点、Webhook、生产部署)
运维·自动化
云捷配低代码6 小时前
低代码与定制开发:复杂业务场景适配度分析
低代码·自动化·数字化·敏捷流程·数字化转型
盈创力和20077 小时前
以太网温湿度传感器如何提升机房环境监控的自动化与可靠性?
运维·自动化·以太网温湿度传感器·多协议支持·网络型温湿度传感器·物联网温湿度变送器·双重供电温湿度传感器
北京耐用通信8 小时前
告别通信干扰与距离限制:耐达讯自动化Profibus总线光纤中继器赋能伺服驱动器稳定连接
人工智能·科技·网络协议·自动化·信息与通信
旦莫8 小时前
Python测试开发工具库:测试环境变量统一配置与加载工具
python·测试开发·自动化·ai测试
运维行者_10 小时前
远程办公场景 NFA:从网络嗅探与局域网流量监控软件排查团队网络卡顿问题
运维·服务器·开发语言·网络·自动化·php
HXDGCL10 小时前
环形导轨在高端自动化产线中的核心技术解析与选型指南
科技·性能优化·自动化·自动化生产线·环形导轨
北京耐用通信10 小时前
协议转换“黑科技”:耐达讯自动化CANopen转Profibus 网关破解电机控制通信难题
网络·人工智能·科技·物联网·自动化·信息与通信