以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  导出Excel提示错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=38583)

--  作者:cqyanglm
--  发布时间:2013/8/1 17:18:00
--  导出Excel提示错误
麻烦问一下这是什么错误呢

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



--  作者:Bin
--  发布时间:2013/8/1 17:20:00
--  
代码发出来看看,超出索引长度了.
--  作者:cqyanglm
--  发布时间:2013/8/1 17:21:00
--  
查询按钮
Dim Filter As String
With e.Form.Controls("ComboBox1")
    If .Value IsNot Nothing Then
        Filter = "当班班级 = \'" & .Value & "\'"
    End If
End With
With e.Form.Controls("ComboBox2")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "当班班次 = \'" & .Value & "\'"
    End If
End With
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期= #" & .Value & "#"
    End If
End With
If Filter > "" Then
    Tables("调度交接班表_Table1").Filter = Filter
    Tables("调度交接班表_Table2").Filter = Filter
    Tables("调度交接班表_Table3").Filter = Filter
    Tables("调度交接班表_Table4").Filter = Filter
    Tables("调度交接班表_Table5").Filter = Filter
    Tables("调度交接班表_Table6").Filter = Filter
    Tables("调度交接班表_Table7").Filter = Filter
End If

If Filter > "" Then
    Tables("调度交接班表_Table1").DataTable.loadFilter = Filter
    Tables("调度交接班表_Table1").DataTable.load
    Tables("调度交接班表_Table2").DataTable.loadFilter = Filter
    Tables("调度交接班表_Table2").DataTable.load
    Tables("调度交接班表_Table3").DataTable.loadFilter = Filter
    Tables("调度交接班表_Table3").DataTable.load
    Tables("调度交接班表_Table4").DataTable.loadFilter = Filter
    Tables("调度交接班表_Table4").DataTable.load
    Tables("调度交接班表_Table5").DataTable.loadFilter = Filter
    Tables("调度交接班表_Table5").DataTable.load
    Tables("调度交接班表_Table6").DataTable.loadFilter = Filter
    Tables("调度交接班表_Table6").DataTable.load
    Tables("调度交接班表_Table7").DataTable.loadFilter = Filter
    Tables("调度交接班表_Table7").DataTable.load
    End If
Relations.Add("关联1",DataTables("调度交接班表_Table1").DataCols("日期"),DataTables("调度交接班表_Table3").DataCols("日期"))
Relations.Add("关联2",DataTables("调度交接班表_Table1").DataCols("日期"),DataTables("调度交接班表_Table2").DataCols("日期"))
Relations.Add("关联3",DataTables("调度交接班表_Table1").DataCols("日期"),DataTables("调度交接班表_Table4").DataCols("日期"))
Relations.Add("关联4",DataTables("调度交接班表_Table1").DataCols("日期"),DataTables("调度交接班表_Table5").DataCols("日期"))
Relations.Add("关联5",DataTables("调度交接班表_Table1").DataCols("日期"),DataTables("调度交接班表_Table6").DataCols("日期"))
Relations.Add("关联6",DataTables("调度交接班表_Table1").DataCols("日期"),DataTables("调度交接班表_Table7").DataCols("日期"))

--  作者:Bin
--  发布时间:2013/8/1 17:22:00
--  
并未看见任何导出代码啊?
--  作者:cqyanglm
--  发布时间:2013/8/1 17:23:00
--  
如果第二次点击查询按钮,会弹出六次提示,代码怎么屏蔽呢

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


--  作者:cqyanglm
--  发布时间:2013/8/1 17:24:00
--  
导出
Dim Book As New XLS.Book(ProjectPath & "Attachments\\调度交接班记录表.xls")
Dim fl As String = ProjectPath & "Reports\\调度交接班记录表.xls"
Book.Build() \'生成细节区
Book.Save(fl) \'保存工作簿
Dim Proc As New Process \'打开工作簿
Proc.File = fl
Proc.Start()

--  作者:Bin
--  发布时间:2013/8/1 17:24:00
--  
判断一下关联是否存在,存在就不要添加了.

If Relations.Contains("关联1") Then

End If


--  作者:cqyanglm
--  发布时间:2013/8/1 17:26:00
--  
超出索引咋解决呢,在其他窗口使用表,都能导出的啊
--  作者:Bin
--  发布时间:2013/8/1 17:27:00
--  
不应该有这个问题啊,上个例子看看吧.
--  作者:cqyanglm
--  发布时间:2013/8/1 17:31:00
--  
程序
[此贴子已经被作者于2013-8-1 18:26:56编辑过]