Foxtable(狐表)用户栏目专家坐堂 → 如何将excel表格的数据自动导入数据表


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

主题:如何将excel表格的数据自动导入数据表

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/4 16:38:00 [显示全部帖子]

代码改成这样

 

If User.Group = "营销" Or User.name = "开发者"
   If CurrentTable.name.contains("直身开料单")
       Dim Book As New XLS.Book("c:\开料任务单.xls")
       Dim Sheet As XLS.Sheet = Book.Sheets(1)
       Tables("直身开料单").StopRedraw()
       Dim nms() As String = {"piao号","订单号","制造产品号","材料","物料号","开料参数","大小弯","数量","开料mm","开料inch","开料数量"}
       For n As Integer = 1 To Sheet.Rows.Count -1
           Dim r As Row = Tables("直身开料单").AddNew()
           r("生产piao号") = sheet(n, 0).text
           r("订单号") = sheet(n, 1).text
           r("制造产品号") = sheet(n, 2).text

       Next
       Tables("直身开料单").ResumeRedraw()
    End If
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/4 17:50:00 [显示全部帖子]

那试试改成这样测试


Dim Book As New XLS.Book("c:\开料任务单.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("直身开料单").StopRedraw()
For n As Integer = 1 To Sheet.Rows.Count -1
    msgbox(sheet(n, 0).text)
    Dim r As Row = Tables("直身开料单").AddNew()
    r("生产piao号") = sheet(n, 0).text
    r("订单号") = sheet(n, 1).text
    r("制造产品号") = sheet(n, 2).text
Next
Tables("直身开料单").ResumeRedraw()


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/7 14:49:00 [显示全部帖子]


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/8 12:10:00 [显示全部帖子]

无法远程打开excel文件的。只能在本地电脑打开foxtable项目,然后再引用本地的excel文件。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/8 14:24:00 [显示全部帖子]

以下是引用edisontsui在2019/4/8 12:52:00的发言:
我打开本地的foxtable项目,然后先把远程的excel文件打开,这样可以导入远程文件的数据吗?

 

不可以,必须把你的excel文件弄到自己的电脑,才能打开和导入。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/10 17:57:00 [显示全部帖子]

Dim dr As DataRow = DataTables("工资计算").Find("年月 = '" & ny & "'" And "姓名 = '" & xm & "'") 

 

改成

 

Dim dr As DataRow = DataTables("工资计算").Find("年月 = '" & ny & "' And 姓名 = '" & xm & "'") 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/18 9:58:00 [显示全部帖子]

没看懂你的问题。

 

excel文件发上来,具体项目发上来,说明最后需要做到的效果


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/18 11:54:00 [显示全部帖子]

Dim nms2() As String = {"计件工资","计时工资","误餐补贴"}
For m As Integer = 0 To nms.Length - 1
    If array.Indexof(nms2, nms(m)) >= 0 Then
        If Sheet(n,m).Value = ""
            dr(nms(m)) = dr(nms(m)) + 0
        Else
            dr(nms(m)) = dr(nms(m)) + Sheet(n,m).Value
        End If
    Else
        If Sheet(n,m).Value = ""
            dr(nms(m)) = 0
        Else
            dr(nms(m)) = Sheet(n,m).Value
        End If
    End If
Next

 回到顶部