Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
[求助]  发帖心情 Post By:2013/2/21 16:03:00 [显示全部帖子]

想把表格(多头表格)导出后写入数据,然后再导入时出现问题,表头被导入,且数据没有被导人。

     导出代码:

 

Dim dcb As WinForm.ComboBox = e.Form.Controls("ComboBox2")
Dim tbl As Table = Tables(""& dcb.text &"")
Dim hdr As Integer = tbl.HeaderRows '获得表头的层数
Dim cnt As Integer
Dim Book As New XLS.Book
Dim Sheet As XLS.Sheet = Book.Sheets(0)
tbl.CreateSheetHeader(Sheet) '生成表头
For c As Integer = 0 To tbl.Cols.Count - 1
    If tbl.Cols(c).Visible Then
        For r As Integer = 0 To tbl.Rows.Count - 1
            sheet(r + hdr,cnt).value = tbl(r,c)
        Next
        cnt = cnt + 1
    End If
Next
Book.Save("d:\记录表\test.xls")
Dim Proc As New Process
Proc.File = "d:\记录表\test.xls"
Proc.Start()

导入代码:Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls|2007Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    MessageBox.Show("你选择的是:" & dlg.FileName,"提示") '提示用户选择的文件
    Dim drb As WinForm.ComboBox = e.Form.Controls("ComboBox3")
    Dim sx1 As WinForm.ComboBox = e.Form.Controls("ComboBox5")
    Dim csxm1 As WinForm.ComboBox = e.Form.Controls("ComboBox7")
    DataTables(""& drb.text &"").DeleteFor("竞赛名称  like '*" & sx1.text & "*' And 参赛项目 like '*" & csxm1.text & "*'")
    Dim mg As New Merger
    mg.SourcePath = dlg.FileName
    mg.Format = "excel" '指定格式
    mg.SourceTableName = "sheet1$"
    mg.DataTableName = ""& drb.text &""
    mg.Merge()
End  If

 

请专家指教!

 


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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/21 16:10:00 [显示全部帖子]

图片点击可在新窗口打开查看

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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/21 16:13:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:8ldmp$$3d)wpnw3yn7o515.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/22 13:31:00 [显示全部帖子]

谢谢指教!!

再次请教:

1。能否只导入部分列。

2。目前已有7个不同的记录表需要导出并写入数据后导入,是否需要分别编写代码,有没有更好的方法。

3。在网络状态下加载表后,脱离网络后能否单机运行已加载的外部数据表并写入数据后保存,联网后数据能否直接进入外部数据表。


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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/22 14:37:00 [显示全部帖子]

谢谢!!!

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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/23 11:43:00 [显示全部帖子]

导入数据出现问题,请指教!!!

  代码:

   Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
    dlg.Filter= "Excel文件|*.xls|2007Excel文件|*.xls" '设置筛选器
    If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
        MessageBox.Show("你选择的是:" & dlg.FileName,"提示") '提示用户选择的文件
        Dim drb As WinForm.ComboBox = e.Form.Controls("ComboBox3")
        Dim sx1 As WinForm.ComboBox = e.Form.Controls("ComboBox5")
        Dim csxm1 As WinForm.ComboBox = e.Form.Controls("ComboBox7")
        DataTables(""& drb.text &"").DeleteFor("竞赛名称  like '*" & sx1.text & "*' And 参赛项目 like '*" & csxm1.text & "*'")
       
        If drb.text = "记录表A"  Then
            Dim Book As New XLS.Book(""& dlg.FileName &"")
            Dim Sheet As XLS.Sheet = Book.Sheets(0)
            Tables("记录表A").StopRedraw()
            Dim nms() As String = { "编号","姓名","中小学","学校","场地","成绩分数","成绩输入1","成绩输入2","成绩输入4","成绩输入5","奖项","参赛项目" }
           '在“成绩分数”之前有一列“成绩时间”为表达式列,被省略

        For n As Integer = 2 To Sheet.Rows.Count -2
                Dim r As Row = Tables("记录表A").AddNew()
                For m As Integer = 0 To nms.Length - 2
                    r(nms(m)) = Sheet(n,m).Value
                Next
            Next
            Tables("记录表A").ResumeRedraw()
        End If
       
       
       
    End  If


图片点击可在新窗口打开查看此主题相关图片如下:wv3j1sy7tpl_nvgc07s}~f.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

 

"成绩分数"列及后面所有的列都往后错排了?!!!

[此贴子已经被作者于2013-2-23 11:57:58编辑过]

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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/23 14:26:00 [显示全部帖子]

经过测试,还是一样!!!

 


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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/23 14:26:00 [显示全部帖子]

为什么我不能及时看到回复

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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/23 15:33:00 [显示全部帖子]

   修改过的代码传上来,你看看!!!

 

 Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
    dlg.Filter= "Excel文件|*.xls|2007Excel文件|*.xls" '设置筛选器
    If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
        MessageBox.Show("你选择的是:" & dlg.FileName,"提示") '提示用户选择的文件
        Dim drb As WinForm.ComboBox = e.Form.Controls("ComboBox3")
        Dim sx1 As WinForm.ComboBox = e.Form.Controls("ComboBox5")
        Dim csxm1 As WinForm.ComboBox = e.Form.Controls("ComboBox7")
        DataTables(""& drb.text &"").DeleteFor("竞赛名称  like '*" & sx1.text & "*' And 参赛项目 like '*" & csxm1.text & "*'")
       
        If drb.text = "记录表A"  Then
            Dim Book As New XLS.Book(""& dlg.FileName &"")
            Dim Sheet As XLS.Sheet = Book.Sheets(0)
            Tables("记录表A").StopRedraw()
            Dim nms() As String = { "编号","姓名","中小学","学校","场地","","成绩分数","成绩输入1","成绩输入2","成绩输入4","成绩输入5","奖项","参赛项目" }
            For n As Integer = 2 To Sheet.Rows.Count -1
                Dim r As Row = Tables("记录表A").AddNew()
                For m As Integer = 0 To nms.Length - 1
                    If nms(m) <> "" Then
                        r(nms(m)) = Sheet(n,m).Value
                    End If
                Next
            Next
            Tables("记录表A").ResumeRedraw()
            DataTables("记录表A").Save()
            Tables("记录表A").Filter = ""
        End If
    End  If

[此贴子已经被作者于2013-2-23 15:33:38编辑过]

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


加好友 发短信
等级:三尾狐 帖子:645 积分:4583 威望:0 精华:0 注册:2012/11/12 14:27:00
  发帖心情 Post By:2013/2/23 15:58:00 [显示全部帖子]

找到问题,弄好了!  谢谢!!!

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