以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]合并数据出错  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71534)

--  作者:wangyinming
--  发布时间:2015/7/13 15:46:00
--  [求助]合并数据出错

数据合并时,出现有一列数据没有导入,请老师看看。
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:jc.xls

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table

Dim pr As Integer = DataTables("检查").DataRows.Count     \'查询表行数

Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter= "excel文件|*.xls" \'设置筛选器
dlg.MultiSelect = True   \'允许选择多个文件
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
e.Form.Controls("Label1").Text = "正在合并,请稍后..."
Application.DoEvents()

    Dim mg As New Merger
    For Each fl As String In dlg.FileNames
        mg.SourcePath = fl \'指定数据文件
        mg.Format = "excel" \'指定格式
        mg.SourceTableName = "检查$" \'指定要合并的表
        mg.DataTableName = "检查" \'指定接收数据的表
        mg.Merge() \'开始合并
    Next

Dim i As Integer
For i  = DataTables("检查").DataRows.Count-1 To 0 Step -1
    Dim dr As DataRow = DataTables("检查").DataRows(i)
    Dim dr2 As DataRow = DataTables("检查").Find("编号=\'" & dr("编号") & "\' and _Identify <> " & dr("_Identify"))
    If dr2 IsNot Nothing Then
        dr2.Delete
    End If
Next  \'去重复值
\'
DataTables("检查").DeleteFor("[管理号码] is null or [良品] is null")  \'删除空白行

pr = DataTables("检查").DataRows.Count - pr \'查询表行数

MessageBox.Show("成功导入数据"& pr &"条","提示")

e.Form.Controls("Label1").Text = ""


Syscmd.Table.ToggleSortAndFilter()
DataTables("检查").Save()
End If

[此贴子已经被作者于2015/7/13 15:47:18编辑过]

--  作者:大红袍
--  发布时间:2015/7/13 15:51:00
--  

方法1:excel数据里面,这些数据,都要弄成字符格式;

 

方法2;用代码的方式导入 http://www.foxtable.com/help/topics/2334.htm

 


--  作者:wangyinming
--  发布时间:2015/7/13 15:55:00
--  

大红袍老师,

方法1:excel数据里面,这些数据,都要弄成字符格式;(导出时得到的)

导出时可以将整数改成字符格式吗?不使用excel模板的情况下。

[此贴子已经被作者于2015/7/13 15:55:33编辑过]

--  作者:大红袍
--  发布时间:2015/7/13 15:56:00
--  
以下是引用wangyinming在2015/7/13 15:55:00的发言:
大红袍老师,导出时可以将整数改成字符格式吗?不使用excel模板的情况下。

 

不行,你用代码的方式导入或者导出吧。


--  作者:wangyinming
--  发布时间:2015/7/13 15:59:00
--  
谢谢!
--  作者:wangyinming
--  发布时间:2015/7/13 17:13:00
--  
可以使用EXECl模板导出吗?  我试了一下,设置文本格式也不行啊!还是导入没有

使用格式转换也不行,是不是不对啊<Convert([I], \'System.String\')>

--  作者:大红袍
--  发布时间:2015/7/13 17:19:00
--  

 导出的模板这样写,比如 B列,原本写 [B]

 

 就改写成 \'[B]

 

 或者写成 <"\'" & [B]>

[此贴子已经被作者于2015/7/13 17:19:18编辑过]