根据Excel的内容和word模板生成对应的word文档
Sub setname()
Dim I As Integer
Dim pspname As String
Dim pspnumber As String
Dim path As String
Dim srcPath As String
Dim srcPath2 As String Dim wordApp As Object
Dim wordDoc As Object
Dim wordArange As Object
Dim wordSelection As Object
Dim ReplaceSign As Boolean Dim Search1 As String
Dim Search2 As String
Dim docPrefix As String
Dim docSuffix As String
Dim rangSize As Integer 'docPrefix = "-PSP"
'docSuffix = "采购规格书.doc"
'Search1 = "电线"
'Search2 = "6000397-PSP"
'rangSize = 200 docPrefix = "-TST"
docSuffix = "入厂检验规格书.doc"
Search1 = "高压电源"
Search2 = "6000391-TST"
rangSize = 1100 For I = To
srcPath = "C:\cygwin\tmp\BOM\tst.doc"
path = "D:\bom\" & ActiveSheet.Cells(I, ) & "-" & ActiveSheet.Cells(I, )
srcPath2 = path & "\aa.doc"
pspname = path & "\" & ActiveSheet.Cells(I, ) & docPrefix & " " & ActiveSheet.Cells(I, ) & docSuffix
pspnumber = ActiveSheet.Cells(I, ) & docPrefix
MkDir (path)
FileCopy srcPath, srcPath2
Name srcPath2 As pspname Set wordApp = CreateObject("Word.Application") '建立WORD实例
wordApp.Visible = False '屏蔽WORD实例窗体
Set wordDoc = wordApp.Documents.Open(pspname) '打开文件并赋予文件实例
Set wordSelection = wordApp.Selection '定位文件实例
Set wordArange = wordApp.ActiveDocument.Range(, rangSize) '指定文件编辑位置
wordArange.Select '激活编辑位置 Do
ReplaceSign = wordArange.Find.Execute(Search1, True, , , , , wdReplaceAll, wdFindContinue, , ActiveSheet.Cells(I, ), True)
Loop Until ReplaceSign = False Dim rngStory As Object
Dim lngJunk As Long
For Each rngStory In wordDoc.StoryRanges
Do
ReplaceSign = rngStory.Find.Execute(Search2, True, , , , , wdReplaceAll, wdFindContinue, , pspnumber, True)
Set rngStory = rngStory.NextStoryRange
Loop Until rngStory Is Nothing
Next wordDoc.Save
wordDoc.Close True
wordApp.Quit
Next I
End Sub
Sub setname()
Dim I As Integer
Dim pspname As String
Dim pspnumber As String
Dim path As String
Dim srcPath As String
Dim srcPath2 As String Dim wordApp As Object
Dim wordDoc As Object
Dim wordArange As Object
Dim wordSelection As Object
Dim ReplaceSign As Boolean Dim Search1 As String
Dim Search2 As String
Dim docPrefix As String
Dim docSuffix As String
Dim rangSize As Integer 'docPrefix = "-PSP"
'docSuffix = "采购规格书.doc"
'Search1 = "电线"
'Search2 = "6000397-PSP"
'rangSize = 200 docPrefix = "-TST"
docSuffix = "-V1.0.doc"
Search1 = "高压电源"
Search2 = "6000393-TST"
rangSize = For I = To
srcPath = "C:\cygwin\tmp\BOM\tst14.doc"
path = "D:\bom\" & ActiveSheet.Cells(I, ) & "-" & ActiveSheet.Cells(I, )
srcPath2 = path & "\aa.doc"
'pspname = path & "\" & ActiveSheet.Cells(I, 3) & docPrefix & " " & ActiveSheet.Cells(I, 4) & docSuffix
pspname = path & "\" & ActiveSheet.Cells(I, ) & docPrefix & docSuffix
pspnumber = ActiveSheet.Cells(I, ) & docPrefix
MkDir (path)
FileCopy srcPath, srcPath2
Name srcPath2 As pspname Set wordApp = CreateObject("Word.Application") '建立WORD实例
wordApp.Visible = False '屏蔽WORD实例窗体
Set wordDoc = wordApp.Documents.Open(pspname) '打开文件并赋予文件实例
'Set wordSelection = wordApp.Selection '定位文件实例
'Set wordArange = wordApp.ActiveDocument.Range(0, rangSize) '指定文件编辑位置
'wordArange.Select '激活编辑位置 'Do
' ReplaceSign = wordArange.Find.Execute(Search1, True, , , , , wdReplaceAll, wdFindContinue, , ActiveSheet.Cells(I, 4), True)
'Loop Until ReplaceSign = False Dim rngStory As Object
Dim lngJunk As Long
For Each rngStory In wordDoc.StoryRanges
Do
ReplaceSign = rngStory.Find.Execute(Search2, True, , , , , wdReplaceAll, wdFindContinue, , pspnumber, True)
Set rngStory = rngStory.NextStoryRange
Loop Until rngStory Is Nothing
Next wordDoc.Save
wordDoc.Close True
wordApp.Quit
Next I
End Sub
根据Excel的内容和word模板生成对应的word文档的更多相关文章
- php根据word模板生成新的word文件
原文地址:http://www.niu12.com/article/16 php使用phpword将word内容变量替换 a.安装phpword composer require phpoffice/ ...
- Easypoi实现单模板生成多页wrod文档
EasyPoi可以很方便的通过一个word模板,然后通过填充模板的方式生成我们想要的word文档.但是碰到了一个单模板生成多页数据的场景,比如一个订单详情信息模板,但是有很多订单,需要导入到一 ...
- 使用java Apache poi 根据word模板生成word报表
项目开发过程中,客户提出一堆导出报表的需求,需要导出word格式,页眉还需要加上客户公司的logo,试了几种方案,最后选择了用 Apache poi 加上自定义标签的方式实现. 目前功能还比较简单,一 ...
- 使用word模板生成pdf文件
使用word模板生成pdf文件 源码:UserWord
- SpringBoot集成文件 - 如何基于POI-tl和word模板导出庞大的Word文件?
前文我们介绍了通过Apache POI通过来导出word的例子:那如果是word模板方式,有没有开源库通过模板方式导出word呢?poi-tl是一个基于Apache POI的Word模板引擎,也是一个 ...
- 使用apidoc 生成Restful web Api文档
在项目开发过程中,总会牵扯到接口文档的设计与编写,之前使用的都是office工具,写一个文档,总也是不够漂亮和直观.好在git上的开源大神提供了生成文档的工具,so来介绍一下! 该工具是Nodejs的 ...
- 基于数据库的自动化生成工具,自动生成JavaBean、数据库文档、框架代码等(v5.8.8版)
TableGo v5.8.8版震撼发布,此次版本更新如下: 1.新增两个扩展字段,用于生成自定义模板时使用. 2.自定义模板新增模板目录,可以选择不同分类目录下的模 ...
- SpringBoot入门教程(二十)Swagger2-自动生成RESTful规范API文档
Swagger2 方式,一定会让你有不一样的开发体验:功能丰富 :支持多种注解,自动生成接口文档界面,支持在界面测试API接口功能:及时更新 :开发过程中花一点写注释的时间,就可以及时的更新API文档 ...
- 用python批量生成简单的xml文档
最近生成训练数据时,给一批无效的背景图片生成对应的xml文档,我用python写了一个简单的批量生成xml文档的demo,遇见了意外的小问题,记录一下. 报错问题为:ImportError: No m ...
随机推荐
- PHP的继承方法如何获取子类名
http://blog.csdn.net/zls986992484/article/details/53154097 PHP后期静态绑定问题:例如 <?php class A { functio ...
- [转]双数组TRIE树原理
原文名称: An Efficient Digital Search Algorithm by Using a Double-Array Structure 作者: JUN-ICHI AOE 译文: 使 ...
- zabbix server配置文件
这样的错误日志,并且在web端也没有画出图来. 解决方法: ①编辑zabbix服务器端的配置文件/etc/zabbix/zabbix_server.conf找到"Timeout"把 ...
- webpack入门指南(转载)
什么是 webpack? webpack是近期最火的一款模块加载器兼打包工具,它能把各种资源,例如JS(含JSX).coffee.样式(含less/sass).图片等都作为模块来使用和处理. 我们可以 ...
- <转>MFC注册系统/全局热键。
<转>MFC注册系统/全局热键. 1. BEGIN_MESSAGE_MAP(CRS232TESTDlg, CDialog) //{{AFX_MSG_MAP(CRS232TESTDlg) O ...
- Centos7安装完毕后重启提示Initial setup of CentOS Linux 7 (core)的解决方法
问题: CentOS7安装完毕,重新开机启动后显示: Initial setup of CentOS Linux 7 (core) 1) [x] Creat user 2) [!] License i ...
- lockfree
为什么要lockfree 按我的理解, lockfree就是不去 调用操作系统给定的锁机制. 1. 会有system call, and system call is expensive; 比如pt ...
- XMPP即时通信(基础)
使用第三方框架 XMPPFramework #import "ViewController.h" #import "XMPPFramework.h" @ ...
- "+" 是怎样连接字符串的?
关于“+”运算符对字符串的连接,不同的平台在实现上可能会略有不同. 1. Oracle JDK1.7 当使用“+”对字符串进行连接时,会创建一个临时的StringBuilder对象,该对象调用appe ...
- dojo分析之declare接口
欢迎转载opendevkit文章, 文章原始地址: http://www.opendevkit.com/?e=57 declare接口是dojo定义类系统的关键函数, 类系统就是抽象,封装,继承.do ...