20170609批量生成WORD合同
Sub NextSeven_CodeFrame()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.Calculation = xlCalculationManual
Application.StatusBar = ">>>>>>>>程序正在运行>>>>>>>>" On Error GoTo ErrHandler Dim StartTime, UsedTime As Variant
StartTime = VBA.Timer
'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Dim Wb As Workbook
Dim Sht As Worksheet
Dim oSht As Worksheet
Dim Rng As Range
Dim Arr As Variant
Dim EndRow As Long
Const HEAD_ROW As Long = 1
Const SHEET_NAME As String = "明细表"
Const START_COLUMN As String = "A"
Const END_COLUMN As String = "I" Dim Count As Long '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Set Wb = Application.ThisWorkbook
Set Sht = Wb.Worksheets(SHEET_NAME)
With Sht
EndRow = .Cells(.Cells.Rows.Count, 4).End(xlUp).Row
Set Rng = .Range(.Cells(HEAD_ROW + 1, START_COLUMN), .Cells(EndRow, END_COLUMN))
Arr = Rng.Value
End With Dim ModelFolder As String
Dim FileName As String
Dim FilePath As String
Dim NewName As String
Dim NewFolder As String
Dim NewPath As String
'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
'绑定
Dim wdApp As Word.Application
Dim OpenDoc As Word.Document
Set wdApp = New Word.Application
'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Dim FindText As String
Dim RepText As String ModelFolder = Wb.Path & "\模板\"
NewFolder = Wb.Path & "\生成\" For i = LBound(Arr) To UBound(Arr) '##########################################
If i > 5 Then GoTo Here '控制输出几份,注释掉则不限制数量
'########################################
'>>>>>>>>>>>>>>>>>诉前财产保全申请书.docx
FileName = "诉前财产保全申请书.docx"
FilePath = ModelFolder & FileName
NewName = i & "-" & Arr(i, 2) & Arr(i, 3) & Arr(i, 4) & "-" & FileName
NewPath = NewFolder & NewName
'预先清除文件
On Error Resume Next
Kill NewPath
On Error GoTo 0
Set OpenDoc = wdApp.Documents.Open(FilePath)
With OpenDoc '逐个信息替换
With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "姓名"
.Replacement.Text = Arr(i, 2)
.Execute Replace:=wdReplaceAll
End With With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "身份证"
.Replacement.Text = Arr(i, 3)
.Execute Replace:=wdReplaceOne
End With With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "性别"
.Replacement.Text = Arr(i, 4)
.Execute Replace:=wdReplaceOne
End With With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "出生日期"
.Replacement.Text = Arr(i, 5)
.Execute Replace:=wdReplaceOne
End With With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "机构名称"
.Replacement.Text = Arr(i, 9)
.Execute Replace:=wdReplaceOne
End With With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "账户号"
.Replacement.Text = Arr(i, 7)
.Execute Replace:=wdReplaceOne
End With With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "冻结金额"
.Replacement.Text = Arr(i, 8)
.Execute Replace:=wdReplaceOne
End With With .Content.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "合同日期"
.Replacement.Text = Arr(i, 6)
.Execute Replace:=wdReplaceOne
End With '>>>>>>>>>>>>>>>>>>>>>>>>>
.SaveAs NewPath
.Close True
End With Next i Here:
wdApp.Quit '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
UsedTime = VBA.Timer - StartTime
MsgBox "本次耗时:" & Format(UsedTime, "0.000秒"), vbOKOnly, "Excel Studio" ErrorExit:
Set Wb = Nothing
Set Sht = Nothing
Set Rng = Nothing
Set wdApp = Nothing Application.ScreenUpdating = True
Application.DisplayAlerts = True
Application.Calculation = xlCalculationAutomatic
Application.StatusBar = False
Exit Sub
'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
ErrHandler:
If Err.Number <> 0 Then
MsgBox Err.Description & "!", vbCritical, "Excel Studio"
'Debug.Print Err.Description
Err.Clear
Resume ErrorExit
End If
End Sub
20170609批量生成WORD合同的更多相关文章
- 代码批量生成WORD的遇到的问题及解决
好久没搞工具了,最近因为处理大规模公文处理单文档,自己写了个批量处理WORD的程序:在调试过程中,主要遇到两个问题 第一个是WORD的模板 数据很多,但是WORD模板只需要一个,将数据替换WORD里标 ...
- C# 利用WORD模板和标签(bookmark) 批量生成WORD
前言: 由于对C#操作WORD不熟悉,也就留下这么一篇水文,别吐糟...=_=||| 利用Microsoft.Office.Interop.Word (2003版也就11版)——因为部分客户端还是用O ...
- PHP将数据库数据批量生成word文档
<?php class word{ function start(){ ob_start(); echo '<html x ...
- Office Word文件批量生成软件
一.软件用途 如果Word文件模板固定,只是要素信息不同,则可以使用本软件批量生成Word文件. 软件下载地址(2020-12-6更新):https://files.cnblogs.com/files ...
- php 生成word的三种方式
原文地址 http://www.jb51.net/article/97253.htm 最近工作遇到关于生成word的问题 现在总结一下生成word的三种方法. btw:好像只要是标题带PHP的貌似点击 ...
- 根据指定Word模板生成Word文件
最近业务需要批量打印准考证信息 1.根据Table数据进行循环替换,每次替换的时候只替换Word中第一个Table的数据, 2.每次替换之后将Word中第一个Table数据进行复制,将复制Table和 ...
- PHP生成word的三种方式
摘要: 最近工作遇到关于生成word的问题 现在总结一下生成word的三种方法. btw:好像在博客园发表博客只要是标题带PHP的貌似点击量都不是很高(哥哥我标题还是带上PHP了),不知道为什么,估计 ...
- PHP生成word文档的三种实现方式
PHP生成word原理 利用windows下面的 com组件 利用PHP将内容写入doc文件之中 具体实现: 利用windows下面的 com组件 原理:com作为PHP的一个扩展类,安装过offic ...
- Excel批量转Word
平时的工作中,尤其是一些文职类工作中,常会遇到这样的问题: 我们有一个Excel文件,每一行都是一个人的信息,需要将每个人的信息填写到Word表格中:一个人,一张表,一个下午,真烦恼. 也是奇想突发, ...
随机推荐
- python 爬虫煎蛋网
import urllib.request import os from urllib import error import re import base64 def url_open(url): ...
- 学习Linux的正确姿势
学习Linux的正确姿势 端正学习态度1.Linux不等于骇客(or Cracker).当然众所周知很多“黑客工具”都是Linux平台上的,我帮助过很多Linux小白发现他们殊途同归都是朝着类似Air ...
- Linux查看文件大小命令
Linux查看文件大小命令 du命令 (1)du -b filepath 参数-b表示以字节计数 du -b filepath 参数-b表示以字节计数 #示例: $ du -b ~/Downloads ...
- 递增三元组|2018年蓝桥杯B组题解析第六题-fishers
标题:递增三元组 给定三个整数数组 A = [A1, A2, ... AN], B = [B1, B2, ... BN], C = [C1, C2, ... CN], 请你统计有多少个三元组(i, j ...
- linux 下 安装nginx
http://www.cnblogs.com/lovexinyi8/p/5845017.html 测试可用. 参看 https://www.cnblogs.com/liujuncm5/p/671378 ...
- spark监控入门
前言 Spark作为计算引擎每天承载了大量的计算任务,为了监控集群的资源使用情况,对spark的监控也在所难免,Spark的监控有3个入口,1. Rest; 2.另一个是Metrics; 3. Log ...
- apiCloud检出代码出现以下图示错误:
问题如下: Initialized empty Git repository in H:/simlpe/.git/ 已经在 H:\simlpe 完成必要的项目初始化工作正在尝试从代码服务器获取数据.. ...
- UVa 11729 突击战
https://vjudge.net/problem/UVA-11729 题意:有n个部下,每个部下需要完成一项任务.第i个部下需要你话B分钟交代任务,然后立刻执行J分钟完成任务.安排交代任务顺序并计 ...
- 关于ExtJS Row editing 行编辑 后 获取 编辑后记录值 的方法
listUsersGrid.on('edit', function(editor, e) { var pass = editor.record.data.password; editor.record ...
- WPF基础学习笔记整理 (六) RoutedEvent路由事件
基础知识: 传统的事件模型中,会在消息触发时将消息通过事件传给事件的订阅者(显式的事件订阅),事件订阅者使用事件处理程序来做出响应.事件订阅者必须能够直接访问到事件的宿主(拥有者). 路由事件的事件的 ...