Foxtable(狐表)用户栏目专家坐堂 → [求助]导入excel或者txt


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

主题:[求助]导入excel或者txt

帅哥哟,离线,有人找我吗?
大红袍
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/11 11:01:00 [只看该作者]

测试了一下,merger导入的时候,应该是没有保存的。你要导入结束以后重置列才行。

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/4/11 11:11:00 [只看该作者]

加一句重置列代码?怎么写?
DataTables("扫描配货明细").DataCols("SN").RaiseDataColChanged?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/11 11:17:00 [只看该作者]

回复12楼 ,类似那种语句,如果要缩小范围,你可以针对新增的行触发,如。

 

For Each dr As DataRow In DataTables("扫描配货明细").datarows
    If dr.RowState = DataRowState.Added Then
        DataTables("扫描配货明细").DataCols("SN").RaiseDataColChanged(dr)
    End If
Next


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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/4/11 16:27:00 [只看该作者]

           For Each dr As DataRow In DataTables("扫描配货明细").datarows
                If dr.RowState = DataRowState.Added Then
                    msgbox(0)
                    DataTables("扫描配货明细").DataCols("SN").RaiseDataColChanged(dr)
                    msgbox(1)                    
                    dr("入库方式") = "导入入库"
                    msgbox(2)                    
                End If
            Next
假如果有2行都是新增行,那么为什么指弹出一次0,1,2,不应该是2次么。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/11 16:29:00 [只看该作者]

 那你弹出dr.RowState的值看看。

 

 或者试试

 

           For Each dr As DataRow In DataTables("扫描配货明细").Select("")
                If dr.RowState = DataRowState.Added Then
                    msgbox(0)
                    DataTables("扫描配货明细").DataCols("SN").RaiseDataColChanged(dr)
                    msgbox(1)                    
                    dr("入库方式") = "导入入库"
                    msgbox(2)                    
                End If
            Next

 


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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/4/11 16:51:00 [只看该作者]

ElseIf info.Extension = ".xls" Then
            Dim mg As New Merger
            mg.SourcePath = dlg.filename
            mg.Format = "excel" '指定格式
            mg.SourceTableName = "序列号$"
            mg.DataTableName = "扫描配货明细"
            mg.Merge() '开始合并
           For Each dr As DataRow In DataTables("扫描配货明细").Select("")
                If dr.RowState = DataRowState.Added Then
                    msgbox(dr.RowState)-----------返回4
                    DataTables("扫描配货明细").DataCols("SN").RaiseDataColChanged(dr)
                    msgbox(1)                    
                    dr("入库方式") = "导入入库"
                    msgbox(2)                    
                End If
            Next
        End If
只有第一行的入库方式是导入入库。第二行为空。搞不懂怎么回事,新增行明明是2行么。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/11 17:26:00 [只看该作者]

For Each dr As DataRow In DataTables("扫描配货明细").Select("")

    msgbox(dr.RowState)

 

------------------------------------看弹出几次分别弹出什么。


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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/4/12 11:45:00 [只看该作者]

ElseIf info.Extension = ".xls" Then
            Dim mg As New Merger
            mg.SourcePath = dlg.filename
            mg.Format = "excel" '指定格式
            mg.SourceTableName = "序列号$"
            mg.DataTableName = "扫描配货明细"
            mg.Merge() '开始合并
            For Each dr As DataRow In DataTables("扫描配货明细").Select("")
                'If dr.RowState = DataRowState.Added Then
                msgbox(dr.RowState)
                DataTables("扫描配货明细").DataCols("SN").RaiseDataColChanged(dr)
                msgbox(1)
                dr("入库方式") = "导入入库"
                msgbox(2)
                'End If
            Next
        End If
导入的xls,共计有3行。
共计弹出4次,每次都是2,1,2。
让我更搞不懂的是怎么多出来第一行,这数据是哪里来的?如附件。

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



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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/12 12:38:00 [只看该作者]

 做个简单的例子发上来测试。

 回到顶部
总数 19 上一页 1 2