以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  可否把一个个word文档数据汇总到表单里去呀  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=180301)

--  作者:zhuzhi
--  发布时间:2022/10/13 12:13:00
--  可否把一个个word文档数据汇总到表单里去呀
老师您好!想请教一下,使用狐表,可否把多个word文档的数据,汇总到表单里呀?
--  作者:有点蓝
--  发布时间:2022/10/13 13:36:00
--  
参考

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=71352&skin=0

--  作者:zhuzhi
--  发布时间:2022/10/13 13:59:00
--  
老师,如果不是word表格,而是一段文字,也可以吗?
--  作者:有点蓝
--  发布时间:2022/10/13 14:07:00
--  
可以

Dim app As New MSWord.Application
try
    Dim doc = app.Documents.Open("d:\\test.doc")
    For Each k As object In doc.Paragraphs
        output.show(k.Range.text.tostring)
    Next
    app.quit
catch ex As exception
    msgbox(ex.message)
    app.quit
End try

--  作者:zhuzhi
--  发布时间:2022/10/13 17:16:00
--  
对不起,老师,我换岗之后,因为较少数据处理需求,所以好久没接触狐表了,好多知识都忘记了,能不能麻烦您帮我指点一下。
我是一套调查问卷,前面都是客观题,最后四道主观题,分别是现在地,是否出行,2个月后所在地,行程码,每人填写了一套,是word文档,想要靠狐表生成以下的数据效果
 工号  现在地 是否出行 2个月后所在地 行程码   
  工号 指定段位置指定段位置   指定段位置   图片
我不懂您的代码里面,是依据什么取值的,我可以修改哪里匹配我的文档



--  作者:有点蓝
--  发布时间:2022/10/13 17:21:00
--  
请上传实例说明
--  作者:zhuzhi
--  发布时间:2022/10/13 17:58:00
--  
老师,我把我原word文档传上来了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:试验.zip


不知道您的代码里面,怎么取值的啊,我现在只记得做窗口加事件或狐表执行代码这种最基本的操作了,但是现在要救急
[此贴子已经被作者于2022/10/13 18:00:48编辑过]

--  作者:有点蓝
--  发布时间:2022/10/13 20:12:00
--  
就是4楼的用法,至于提取的文字,哪个是自己需要的,需要自己去判断提取的文字内容了
--  作者:zhuzhi
--  发布时间:2022/10/13 20:36:00
--  
老师,我试着执行了语句,然后看到命令窗读取了word内容,后面是不是就要指定在表单里具体的字段里?我不知道接下来要怎么做
--  作者:zhuzhi
--  发布时间:2022/10/13 20:46:00
--  
老师,抱歉。我基础确实太差了,只能按照您做的代码似是而非的改一下,代码的意思也不懂。像是这个代码,我执行了,选择了我的文件,但是工号的值取不到。取出来是"—"。因为我是一段文字里的工号,不是表格。是不是要用别的办法取值啊?相片那个我是完全不懂,现在先放一放,想先学会文字内容取值,谢谢老师!
Dim dlg As new OpenFileDialog
dlg.MultiSelect = True
If dlg.ShowDialog = DialogResult.OK Then
    Dim app As New MSWord.Application
    try
        If FileSys.DirectoryExists(ProjectPath & "Attachments") = False Then
            FileSys.CreateDirectory(ProjectPath & "Attachments/")
        End If
        For Each filename As String In dlg.FileNames
            
            Dim doc = app.Documents.Open(fileName)
            Dim nr As Row = Tables("表A").AddNew
            Dim t = doc.Tables(1)
            Dim text = t.Cell(1, 2).Range.Text.ToString()
            text = text.Substring(0, text.Length - 2)
            nr("工号") = text
            \'-------------
            app.ActiveWindow.Selection.WholeStory
            For Each shape As object In app.ActiveWindow.Selection.InlineShapes
                If shape.Type = MSWord.WdInlineShapeType.wdInlineShapePicture
                    Dim img As Byte() = shape.Range.EnhMetaFileBits
                    Dim bmp As new Bitmap(new IO.MemoryStream(img))
                    bmp.Save(ProjectPath & "Attachments/" & nr("工号") & ".jpg")
                End If
            Next
            nr("第四列") = nr("工号") & ".jpg"
            Doc.Close
        Next
    catch ex As exception
        msgbox(ex.message)
    finally
        app.Quit
    End try
End If

[此贴子已经被作者于2022/10/13 20:48:23编辑过]