Foxtable(狐表)用户栏目专家坐堂 → [求助] Excel文件合并出错


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

主题:[求助] Excel文件合并出错

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/18 22:39:00 [显示全部帖子]

 merger有bug,你要换一种方法合并数据的。

 

http://www.foxtable.com/webhelp/scr/2334.htm

 


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/19 10:08:00 [显示全部帖子]

sqlfind,是对于已经保存的数据进行查找的(你新增的数据没保存)

 

你可以先用find查找,如果找不到的话,再用sqlfind查找

 

Dim dr As DataRow = dt3.Find("规格='" & r("Comment") & "' And 封装 ='" & r("Footprint") & "'")

If dr Is Nothing Then

    dr = dt3.SQLFind("规格='" & r("Comment") & "' And 封装 ='" & r("Footprint") & "'")

End If

 

 

[此贴子已经被作者于2017/5/19 10:36:49编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/19 10:36:00 [显示全部帖子]

用5楼的方法,查两次。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/19 10:38:00 [显示全部帖子]

Dim tb As Table = Tables("PCBA-BOM_Table1")
Dim dt As DataTable = DataTables(Vars("TbName"))

Dim dt2 As DataTable = DataTables("物料表")
Dim dt3 As DataTable = DataTables("对应表")

 

DataTables("对应表").Save()
DataTables("对应表").Load() '保存对应表的数据

 

For i As Integer = 0 To tb.Rows.Count - 1
    Dim r As Row = tb.Rows(i)
    Dim dr As DataRow = dt3.Find("规格='" & r("Comment") & "' And 封装 ='" & r("Footprint") & "'")
    If dr Is Nothing Then
        dr = dt3.SQLFind("规格='" & r("Comment") & "' And 封装 ='" & r("Footprint") & "'")
    End If

    If dr IsNot Nothing Then
        If dr.IsNull("物料代码") = False Then
            r("子阶代码") = dr("物料代码")
            Dim dr1 As DataRow = dt2.SQLFind("代码 ='" & r("子阶代码") & "'")
            r("物料名称") = dr1("名称")
            r("规格型号") = dr1("规格型号")
            r("单位") = dr1("单位")
            r("车间") = dr1("车间")
            r("物料属性") = dr1("物料属性")
            r("仓库") = dr1("默认仓库名称")
        Else
            'MessageBox.Show("没有找到")
            r("子阶代码") = Nothing
            r("物料名称") = Nothing
            r("规格型号") = Nothing
            r("单位") = Nothing
            r("车间") = Nothing
            r("物料属性") = Nothing
            r("仓库") = Nothing
        End If
    End If
Next
tb.AutoSizeCols()
MessageBox.Show("物料生成完成")


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/19 10:54:00 [显示全部帖子]

认认真真看8楼代码。不需要load数据。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/19 14:46:00 [显示全部帖子]

 找不到的话,说明别人没有把数据保存,sqlFind才找不到的。

 

 


 回到顶部