Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1778|回复: 3

[已解决]请大神帮忙解决个很有难度的问题

[复制链接]
发表于 2013-6-25 16:29 | 显示全部楼层 |阅读模式
使用EXCEL VBA获取WORD文件里的部分内容,自动生成(表头字段可以不用自动的),请各位大神们多多指教. Thank.zip (81.3 KB, 下载次数: 5)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-6-25 18:45 | 显示全部楼层    本楼为最佳答案   
Sub test()
    Dim p$, f$, A(), doc, i%, n%

    n = 999
    ReDim A(1 To n, 1 To 9)    '999 是估计的最大文件数
    p = ThisWorkbook.Path & "\"
    f = Dir(p & "*.rtf")


    Do While f <> ""
        i = i + 1
        Set doc = GetObject(p & f)
        With doc.Tables(2)
            A(i, 1) = z(.cell(2, 2))
            A(i, 2) = z(.cell(3, 2))
            A(i, 3) = z(.cell(4, 2))
            A(i, 4) = z(.cell(5, 2))
            A(i, 5) = z(.cell(6, 2))
            A(i, 6) = z(.cell(7, 2))
        End With
        With doc.Tables(3)
            A(i, 7) = z(.cell(3, 2))
            A(i, 8) = z(.cell(4, 2))
            A(i, 9) = z(.cell(5, 2))
        End With
        doc.Close 0
        f = Dir
    Loop


    With Range("a2:i" & n)
        .ClearContents
        If i > 0 Then .Resize(i, UBound(A, 2)) = A
    End With

End Sub


Function z(str As String) As String
    z = Replace(str, Chr(13), "")
    z = Replace(z, Chr(7), "")
End Function



Thank2.rar (84.34 KB, 下载次数: 9)
回复

使用道具 举报

 楼主| 发表于 2013-6-26 11:56 | 显示全部楼层
爱疯 发表于 2013-6-25 18:45
Sub test()
    Dim p$, f$, A(), doc, i%, n%

非常感谢这位朋友!     感谢
   谢版主!
回复

使用道具 举报

 楼主| 发表于 2013-6-26 14:13 | 显示全部楼层
爱疯 发表于 2013-6-25 18:45
Sub test()
    Dim p$, f$, A(), doc, i%, n%

版主请教个问题,,, 请问你打开rtf后 是如何找到表格的?我真没看懂啊。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-24 16:44 , Processed in 0.390430 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表