Foxtable(狐表)用户栏目专家坐堂 → 可否把一个个word文档数据汇总到表单里去呀


  共有6831人关注过本帖树形打印复制链接

主题:可否把一个个word文档数据汇总到表单里去呀

帅哥哟,离线,有人找我吗?
zhuzhi
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
可否把一个个word文档数据汇总到表单里去呀  发帖心情 Post By:2022/10/13 12:13:00 [显示全部帖子]

老师您好!想请教一下,使用狐表,可否把多个word文档的数据,汇总到表单里呀?

 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2022/10/13 13:59:00 [显示全部帖子]

老师,如果不是word表格,而是一段文字,也可以吗?

 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2022/10/13 17:16:00 [显示全部帖子]

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



 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2022/10/13 17:58:00 [显示全部帖子]

老师,我把我原word文档传上来了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:试验.zip


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

 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2022/10/13 20:36:00 [显示全部帖子]

老师,我试着执行了语句,然后看到命令窗读取了word内容,后面是不是就要指定在表单里具体的字段里?我不知道接下来要怎么做

 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By: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编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2022/10/13 20:53:00 [显示全部帖子]

表格是这样的:
 工号  目前所在地(填写厂区或**省**市**区),在作答区域点击 上传行程卡截图预计12月所在地今后2个月内是否有出行计划(本次演练除外),请填写是或否行程码   
  工号 指定段位置指定段位置   作答的位置   图片

我不知道这对不对。但我的问卷就是这样的题干,其中甚至有一题还有图片,不晓得列名和代码里面是否要原文照抄?还是说不需要题干,用行数来找值呢?我的基础数据就是之前传的这个
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:试验.zip

麻烦老师帮帮我

 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2022/10/13 22:44:00 [显示全部帖子]

非常感谢老师!工号的值可以取了,感觉是找到指定字符后面的数值取出来,这样的方法?我是外行,只能看到这些。但是后面报错了,还是要麻烦老师帮助我,说是有非法字符,找不到name什么的,但我好像没看到name?麻烦老师,帮帮我,谢谢!

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20221013224031.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20221013224032.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2022/10/14 10:48:00 [显示全部帖子]

老师,我取不到工号以外的数值,是该怎么做呢?比如我要取“预计12月所在地”的值,工作表里列名也是叫这个,但代码这段:
ElseIf s.Contains("预计12月所在地") Then
            n12 = True
        ElseIf s.Contains("第一空:") Then
            If n12 = True Then
                Dim idx As Integer = s.IndexOf("第一空:")
                MsgBox(s.Substring(idx))
                r("预计12月所在地") = s.Substring(idx)
                n12 = False
            End If 
        End If 
取不到,我改了第一句的汉字名称,和表列名一致也不行,是不是必须和word文档里的叫法完全一致呀

 回到顶部