当前位置:编程学习 > C#/ASP.NET >>

SaveFileDialog1问题

我用SaveFileDialog1吧GRID里的数据导在EXCEL文件,但是我现在想设置他的导出的EXCEL路径,如果没有这个路径上的文件他系统自己创建一个在导出EXCEL,请问这个怎么写的啊 --------------------编程问答-------------------- .net 2005 用 IO.File.Exists('文件路径名称')来判断是否有存在同名文件,没有的话直接用new方法新建Excel工作簿 --------------------编程问答-------------------- SaveFileDialog就是拿到一个文件路径。
你就拿着这个文件路径创建就可以了。


Imports Microsoft.Office.Interop
Imports System.IO

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            With Me.SaveFileDialog1
                .Filter = "Excel File(*.xls)|*.xls"
                If .ShowDialog = Windows.Forms.DialogResult.OK Then
                    Dim strFileName As String = .FileName
                    Dim objDataTable As DataTable = New DataTable
                    objDataTable.Columns.Add("col1")
                    objDataTable.Columns.Add("col2")
                    objDataTable.Columns.Add("col3")
                    objDataTable.Rows.Add("1", "test1", "abc1")
                    objDataTable.Rows.Add("2", "test2", "abc2")
                    objDataTable.Rows.Add("3", "test3", "abc3")
                    ExportExcel(strFileName, objDataTable)
                End If
            End With
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

    Private Sub ExportExcel(ByVal istrFileName As String, ByVal iobjData As DataTable)
        Dim objXlsApp As Excel.Application = Nothing
        Dim objXlsBook As Excel.Workbook = Nothing
        Dim objXlsSheet As Excel.Worksheet = Nothing
        Try
            objXlsApp = New Excel.Application
            objXlsApp.Visible = False
            objXlsApp.DisplayAlerts = False
            If File.Exists(istrFileName) Then
                File.Delete(istrFileName)
            End If
            objXlsBook = objXlsApp.Workbooks.Add()
            objXlsSheet = objXlsBook.Sheets(1)
            For intRow As Integer = 0 To iobjData.Rows.Count - 1
                For intCol As Integer = 0 To iobjData.Columns.Count - 1
                    objXlsSheet.Cells(intRow + 1, intCol + 1) = iobjData.Rows(intRow)(intCol)
                Next
            Next
            objXlsBook.SaveAs(istrFileName)
        Finally
            objXlsSheet = Nothing

            If objXlsBook IsNot Nothing Then
                objXlsBook.Close()
            End If

            If objXlsApp IsNot Nothing Then
                objXlsApp.Visible = True
                objXlsApp.DisplayAlerts = True
                objXlsApp.Quit()
            End If
        End Try
    End Sub

End Class

--------------------编程问答-------------------- File,老是显示未定义啊 --------------------编程问答-------------------- 哪个File未定义?没有Import System.IO吗?

LZ描述问题清晰点。 --------------------编程问答-------------------- If File.Exists(istrFileName) Then

里的FILE老是显示未定义

引用了这个Imports System.IO也没用 --------------------编程问答-------------------- 不是大写FILE哦。注意~ --------------------编程问答-------------------- System.IO. --------------------编程问答-------------------- System.IO.File,先导出,在保存时弹出SaveFileDialog1 --------------------编程问答-------------------- 没有什么问题,我测试,可以啊! --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 没明白呢  
--------------------编程问答-------------------- 楼主有明白给我发一份 初学菜鸟
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,