Foxtable(狐表)用户栏目专家坐堂 → 比对问题


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

主题:比对问题

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
比对问题  发帖心情 Post By:2023/11/13 10:36:00 [只看该作者]

请问如何将数据库表中选定的记录与指定的Excel文件中的记录进行比对呢?

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/13 10:39:00 [只看该作者]

先遍历数据库表中选定的记录,再遍历Excel文件中的记录,逐一比较

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2023/11/13 11:11:00 [只看该作者]

搞不懂怎样比较。比较完了怎样显示比较的结果呢。比如以身份证号比对,比对完后把数据表中的信息写到EXcEL中

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/13 11:26:00 [只看该作者]

for each r as row in tables(xxx).rows
For n As Integer = 0 To Sheet.Rows.Count -1
if  r("身份证") = Sheet(n,0).Text then 假设execl身份证放在第一列
Sheet(n,1).Value = r("第一列")
Sheet(n,2).Value = r("第2列")

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2023/11/13 11:35:00 [只看该作者]

老师您好,比对后有可能出现两种情况:
一是数据表中有,EXCEL中没有,这种情况要把表中的记录直接写到EXCEL中;
二是数据表中没有,但EXCEL中有,这种情况要有个提示,怎么弄呢。

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/13 11:48:00 [只看该作者]


1、
for each r as row in tables(xxx).rows
dim b as boolean
For n As Integer = 0 To Sheet.Rows.Count -1
if  r("身份证") = Sheet(n,0).Text then 假设execl身份证放在第一列
b=true
Sheet(n,1).Value = r("第一列")
Sheet(n,2).Value = r("第2列")
end if
next
if b=false then
end if

2、需要另外处理,再遍历execl处理
For n As Integer = 0 To Sheet.Rows.Count -1
dim dr as datarow = datatables("xx").find("身份证='" & Sheet(n,0).Text & "'")
if dr isnot nothing then
msgbox(Sheet(n,0).Text & "没找到")
……

 回到顶部