Foxtable(狐表)用户栏目专家坐堂 → [求助]导入XLS文件至现有表中


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

主题:[求助]导入XLS文件至现有表中

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


加好友 发短信
等级:小狐 帖子:308 积分:3351 威望:0 精华:0 注册:2011/12/22 17:52:00
[求助]导入XLS文件至现有表中  发帖心情 Post By:2013/7/23 22:56:00 [只看该作者]

因工作中需要导入不同内容,但格式一样的XLS文件进行数据处理,

现要实现“窗口1”,“导入”按钮的代码,

要求:
1.先判断原有的成绩表是否有记录,如有则全部删除.
2.根据选择的文件及工作表,把所有数据导入至现有的"成绩表"中.

备注:成绩表与XLS文件的结构相同.

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

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

[此贴子已经被作者于2013-7-23 22:58:02编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/7/24 9:04:00 [只看该作者]

你可以看看这个:

http://www.foxtable.com/help/topics/2334.htm

 


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


加好友 发短信
等级:小狐 帖子:308 积分:3351 威望:0 精华:0 注册:2011/12/22 17:52:00
  发帖心情 Post By:2013/7/24 9:11:00 [只看该作者]

 

 

导入代码,加入删除原有数据功能。

 

 

Dim str1 As WinForm.TextBox = e.Form.Controls("TextBox1")
Dim str2 As WinForm.ComboBox = e.Form.Controls("ComboBox1")

Dim check1 As WinForm.CheckBox = e.Form.Controls("CheckBox1")

If check1.Checked = True
  DataTables("成绩表").DeleteFor("")
End If

Dim Book As New XLS.Book(str1.text)
Dim Sheet As XLS.Sheet = Book.Sheets(str2.text)
Tables("成绩表").StopRedraw()

Dim nms() As String = {"班级","学号","姓名","语文","数学","英语","物理","化学"}

'注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
For n As Integer = 1 To Sheet.Rows.Count -1
    Dim r As Row = Tables("成绩表").AddNew()
    For m As Integer = 0 To nms.Length - 1
        r(nms(m)) = Sheet(n,m).Value
    Next
Next
Tables("成绩表").ResumeRedraw()
DataTables("成绩表").save
DataTables("成绩表").Load

MessageBox.Show("导入完成")

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

[此贴子已经被作者于2013-7-24 13:50:39编辑过]

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


加好友 发短信
等级:小狐 帖子:308 积分:3351 威望:0 精华:0 注册:2011/12/22 17:52:00
  发帖心情 Post By:2013/7/24 13:56:00 [只看该作者]

上面这个例子,如果导入窗口放入一个绑定“成绩表”的TABLE控件,则导入速度会变慢。

请问如何消除这个问题?


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/24 14:06:00 [只看该作者]


因为系统要同步更新成绩表 肯定会变慢.

Tables("窗口1_Table1").StopRedraw()
Tables("窗口1_Table1").ResumeRedraw()

绑定的那个表也停止更新绘制 应该会有改善

 回到顶部