word 内容如下每页word都有这么一个表格,每个表格都不是连续的,而且请注意,每个表格的标准编号一栏都是唯一的,如 1.1  1.2 2.1 2.2以此类推
excel 内容如下word里的标准编号,和excel里的序号,保持一致。
需拷贝内容如下:
word        ----->excel
描述        ----->总述
评估结论    ----->结论
备查清单    ----->备查清单
word文档有几百页,考起来简直累死了,请教各位大侠,用VBA怎么实现,跪谢!!!给100分,不够再补!

解决方案 »

  1.   

    100闲分就找个人给你定制个程序?奢侈了点。不是分数奢侈,是愿望奢侈。
    这种事情,还是从加强自身电脑使用水平搞起吧。
    不见得非要用VBA程序,如果是熟练的电脑用户,都应该掌握的,那就是使用键盘鼠标宏记录软件(WORD和EXCEL也有,但主要是针对自身内部操作)。
      

  2.   

    这个不难
    假设这个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
      

  3.   

     Set wddocument = wdapp.Documents.Open(dpath & "\" & Filename)
     改成
     Set wddocument = wdapp.Documents.Open(Filename)
      

  4.   

    http://download.csdn.net/detail/veron_04/1627134