Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:婴狐 帖子:6 积分:118 威望:0 精华:0 注册:2021/12/28 16:43:00
[求助]  发帖心情 Post By:2021/12/30 19:21:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:excel(单位表).png
图片点击可在新窗口打开查看
求助以下问题:
1.有一个Table(单位表),内有5行数据
2.有一个Excel表(单位表),字段与Table(单位表)一致,内有16行数据。
3.现需要从Excel表(单位表)导入数据到Table(单位表)中,实现覆盖导入。
   即:1.若Table(单位表)与Excel(单位表)有相同 “单位代码”的行,用Excel数据覆盖Table数据。
         2.若没有,则在Table(单位表)中增加。

以下自己写的代码,不能实现上述功能,只是将Excel表的数据全部追加到Table中,不知道哪里出了问题

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls;*.xlsx" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
Dim Book As New XLS.Book(dlg.FileName)
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("单位表").StopRedraw()
Dim nms() As String = {"单位代码","单位名称","单位性质","单位类型","信用代码","创建日期","负责人","办公电话","电子邮箱","邮政编码","单位地址"}
For n As Integer = 1 To Sheet.Rows.Count -1
    Dim bh As String = sheet(n,0).Text
    Dim dr As DataRow = DataTables("单位表").Find("单位代码 = ' & bh & '")
    If dr Is Nothing Then '如果不存在同编号的订单
        dr =  DataTables("单位表").AddNew()
    End If
    For m As Integer = 0 To nms.Length - 1
        dr(nms(m)) = Sheet(n,m).Value
    Next
Next
Tables("单位表").ResumeRedraw()
图片点击可在新窗口打开查看此主题相关图片如下:tables(单位表).png
图片点击可在新窗口打开查看
End If



 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110733 积分:563585 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/12/30 20:15:00 [只看该作者]

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=50080


Dim dr As DataRow = DataTables("单位表").Find("单位代码 = '" & bh & "'")

自行对比看效果
msgbox("单位代码 = '" & bh & "'")
msgbox("单位代码 = ' & bh & '")

 回到顶部