ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 279|回复: 10

[求助] 求助,将word中的信息导入统计表中

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-4-15 13:23 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
各位老师

希望将附件word中报名注册信息,统计到EXCEL表中。

希望老师们能不能帮指点一下。


不甚感激

Desktop.rar

25.83 KB, 下载次数: 21

TA的精华主题

TA的得分主题

发表于 2024-4-15 14:46 来自手机 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2024-4-15 14:48 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
上传一个空白的word表格,为了测试代码,还得花时间和精力去模拟数据,

TA的精华主题

TA的得分主题

发表于 2024-4-15 15:06 | 显示全部楼层
Sub word到excel()
Application.ScreenUpdating = False
Dim i As Long
Dim arr()
Set obmapp = CreateObject("Shell.Application").BrowseForFolder(0, "请选择文件目录:", 0, 0)   '选择文件夹对话框
If obmapp Is Nothing Then MsgBox "您没有选择文件夹!": End '如果选择了文件夹
fp = obmapp.Self.Path   '把选择的文件夹的路劲赋值给变量fp
f = Dir(fp & "\*.doc*")
ReDim arr(1 To 100000, 1 To 18)
Dim WordApp As Object
Set WordApp = CreateObject("Word.Application")   '新建Word对象
WordApp.Visible = True
t = Timer
Do While f <> ""
    Set WordD = WordApp.Documents.Open(fp & "\" & f)
    If WordD.tables.Count > 0 Then
        With WordD.tables(1)
             r = .Rows.Count
             n = n + 1
             arr(n, 1) = n
             y = 1
             For i = 1 To 2
                For j = 2 To 4 Step 2
                    y = y + 1
                    arr(n, y) = Replace(.Cell(i, j).Range.Text, Chr(13) & Chr(7), "")
                Next j
            Next i
             For i = 3 To 6
                For j = 3 To 5 Step 2
                    y = y + 1
                    arr(n, y) = Replace(.Cell(i, j).Range.Text, Chr(13) & Chr(7), "")
                Next j
            Next i
             For i = 7 To 8
                For j = 2 To 4 Step 2
                    y = y + 1
                    If y = 17 Then
                        y = 18
                    Else
                        y = y
                    End If
                    arr(n, y) = Replace(.Cell(i, j).Range.Text, Chr(13) & Chr(7), "")
                Next j
            Next i
        End With
    End If
    WordD.Close False
f = Dir
Loop
WordApp.Quit
Set WordApp = Nothing
Set WordD = Nothing
With Sheets("Sheet1")
    .[a1].CurrentRegion.Offset(3).Borders.LineStyle = 0
    .[a1].CurrentRegion.Offset(3) = Empty
    .[a4].Resize(n, UBound(arr, 2)) = arr
    .[a4].Resize(n, UBound(arr, 2)).Borders.LineStyle = 1
End With
Application.ScreenUpdating = True
MsgBox "获取到" & n & "行数据,耗时:" & Format(Timer - t, "0.00") & "秒!"
End Sub

TA的精华主题

TA的得分主题

发表于 2024-4-15 15:07 | 显示全部楼层
Desktop.rar (126.88 KB, 下载次数: 3)

TA的精华主题

TA的得分主题

发表于 2024-4-15 15:07 | 显示全部楼层
人数自己手工整理一下吧,懒得写代码了

TA的精华主题

TA的得分主题

发表于 2024-4-15 15:15 | 显示全部楼层
人数问题也解决了
Desktop.rar (127.18 KB, 下载次数: 7)

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-4-15 15:24 | 显示全部楼层
用AI写了个,把附件文件和你的所有word文档以及要汇总的excel表放同一个文件夹内,然后执行按钮。 image.png

魚.rar

1.93 MB, 下载次数: 18

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-4-15 17:26 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-4-15 17:27 | 显示全部楼层
魚。。 发表于 2024-4-15 15:24
用AI写了个,把附件文件和你的所有word文档以及要汇总的excel表放同一个文件夹内,然后执行按钮。

用AI也可以做,我也赶紧去学习一下做法。感谢
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-18 00:22 , Processed in 0.051584 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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