以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助,打开文件对话框,制定文件导入  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=47062)

--  作者:hz1717
--  发布时间:2014/3/4 9:49:00
--  求助,打开文件对话框,制定文件导入
老师好:
   我从电脑文件中合并文件中内容到系统中,这个代码我已经通过帮助文件中写好。
    但是,这个导入只能制定文件路径,我如果想打开OpenFileDialog文件对话框,选定文件改如何改写。?谢谢

If FileSys.FileExists("d:\\入库订单\\订单.xls") Then
    Dim Book As New XLS.Book("d:\\入库订单\\订单.xls")
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables("入库主表.入库明细").StopRedraw()
    \'注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
    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()
    FileSys.MoveFile("d:\\入库订单\\订单.xls", "d:\\入库订单\\已导入\\订单.xls")
    

--  作者:Bin
--  发布时间:2014/3/4 9:51:00
--  
http://www.foxtable.com/help/topics/0328.htm

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

   If FileSys.FileExists(dlg.FileName) Then

    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables("入库主表.入库明细").StopRedraw()
    \'注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
    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()
    FileSys.MoveFile(dlg.FileName, "d:\\入库订单\\已导入\\订单.xls")

End If