Foxtable(狐表)用户栏目专家坐堂 → 窗口内导入按钮出错


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

主题:窗口内导入按钮出错

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


加好友 发短信
等级:幼狐 帖子:107 积分:850 威望:0 精华:0 注册:2015/5/12 10:19:00
窗口内导入按钮出错  发帖心情 Post By:2016/8/17 13:47:00 [只看该作者]

在编写一个自己岗位使用的小窗口中出现以下问题

在窗口界面加入一个按钮,设置为导入,代码如下:

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger
    mg.SourcePath = dlg.FileName
    mg.SourceTableName = "组织架构及负责人"
    mg.DataTableName = "组织架构及负责人"
    mg.Merge()
End If

 

 

狐表内部表的《组织架构及负责人》只有所属公司,一级部门,二级部门,评估人,分管领导五列,外部excel也同样这几列,但是选择文件导入出现以下提示

不可识别的数据库格式 'C:\Users\Administrator\Desktop\组织架构及负责人.xls'。

怎么解决?


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


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

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger

    mg.Format = "Excel"
    mg.SourcePath = dlg.FileName
    mg.SourceTableName = "组织架构及负责人$"
    mg.DataTableName = "组织架构及负责人"
    mg.Merge()
End If


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


加好友 发短信
等级:幼狐 帖子:107 积分:850 威望:0 精华:0 注册:2015/5/12 10:19:00
  发帖心情 Post By:2016/8/17 16:35:00 [只看该作者]

'组织架构及负责人$' 不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。

出现以下名称,我的导入文件需放在系统文件夹中吗?


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


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

你那个excel文件里面的sheet名字叫什么?

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


加好友 发短信
等级:幼狐 帖子:107 积分:850 威望:0 精华:0 注册:2015/5/12 10:19:00
  发帖心情 Post By:2016/8/17 16:45:00 [只看该作者]

sheet1

 


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


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

那就写成

 

mg.SourceTableName = "sheet1$"


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


加好友 发短信
等级:幼狐 帖子:107 积分:850 威望:0 精华:0 注册:2015/5/12 10:19:00
  发帖心情 Post By:2016/8/17 16:46:00 [只看该作者]

用导出文件直接做的,把数据换了

导出命令是下面

Dim dt As Table = Tables("组织架构及负责人")
Dim nms() As String = {"所属公司","一级部门","二级部门","绩效评估人","分管领导"} '要导出的列名
Dim caps() As String = {"所属公司","一级部门","二级部门","绩效评估人","分管领导"} '对应的列标题
Dim szs() As Integer = {98,98,98,98,98} '对应的列宽
Dim Book As New XLS.Book '定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
For c As Integer = 0 To nms.length -1
    Sheet(0, c).Value = caps(c) '指定列标题
    Sheet.Cols(c).Width = szs(c) '指定列宽
   
Next
For r As Integer = 0 To dt.Rows.Count - 1 '填入数据
    For c As Integer = 0 To nms.length -1
        Sheet(r +1, c).Value = dt.rows(r)(nms(c))
    Next
Next
Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then
    Book.Save(dlg.FileName)
    Dim Proc As New Process
    Proc.File = dlg.FileName
    Proc.Start()


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


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

看6楼。

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


加好友 发短信
等级:幼狐 帖子:107 积分:850 威望:0 精华:0 注册:2015/5/12 10:19:00
  发帖心情 Post By:2016/8/18 11:37:00 [只看该作者]

解决了,谢谢

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


加好友 发短信
等级:婴狐 帖子:2 积分:106 威望:0 精华:0 注册:2017/7/19 15:03:00
  发帖心情 Post By:2017/11/4 15:56:00 [只看该作者]

我也出现同样的问题,求大神解决

 回到顶部
总数 11 1 2 下一页