word 内容如下每页word都有这么一个表格,每个表格都不是连续的,而且请注意,每个表格的标准编号一栏都是唯一的,如 1.1 1.2 2.1 2.2以此类推
excel 内容如下word里的标准编号,和excel里的序号,保持一致。
需拷贝内容如下:
word ----->excel
描述 ----->总述
评估结论 ----->结论
备查清单 ----->备查清单
word文档有几百页,考起来简直累死了,请教各位大侠,用VBA怎么实现,跪谢!!!给100分,不够再补!
excel 内容如下word里的标准编号,和excel里的序号,保持一致。
需拷贝内容如下:
word ----->excel
描述 ----->总述
评估结论 ----->结论
备查清单 ----->备查清单
word文档有几百页,考起来简直累死了,请教各位大侠,用VBA怎么实现,跪谢!!!给100分,不够再补!
这种事情,还是从加强自身电脑使用水平搞起吧。
不见得非要用VBA程序,如果是熟练的电脑用户,都应该掌握的,那就是使用键盘鼠标宏记录软件(WORD和EXCEL也有,但主要是针对自身内部操作)。
假设这个word 文件 在你操作的EXCEL同一路径目录下, 文件名为 myword.docSub yy()
dim dpath as string
dim i as long
dpath = ThisWorkbook.Path & "\"
Dim wdapp As Word.Application
Dim wddocument As Word.Document
Set wdapp = New Word.Application
'wdapp.Visible = True
Application.ScreenUpdating = False
Filename = dpath & "myword.doc"
Set wddocument = wdapp.Documents.Open(dpath & "\" & Filename) '打开这个word
for i= 1 to wddocument.Tables.count 'word表格总数,这样遍历每一个
Set wdTb = wddocument.Tables(i) 'wdTb 就是每一个word表格
With wdTb
'主要是要搞清楚word的对象, 其实,我没有你的附件可以测试,不过你可以把我的代码复制到EXCEL VBA中,自己去找一下规律,或者本身word表格每一个都是一样的,那就好办了. 自己去尝试吧.
if instr(.Cell(1, 2).Range.Text,"标准") then '这个条件是我假设的
r=r+1
Range("a" & r+1) = .Cell(1, 2).Range.Text
Range("b" & r+1) = .Cell(1, 3).Range.Text
........ '也可以设置个数组,把所有word表格数据先写入数组,然后再一次写入EXCEL表格中.
end if
End With
Set wdTb = Nothing
next
wddocument.Close
Set wddocument = Nothing
wdapp.Quit
Set wdapp = Nothing
Application.ScreenUpdating = TrueEnd Sub
改成
Set wddocument = wdapp.Documents.Open(Filename)