簡體   English   中英

從數據文本框到excel vb.net

[英]from data textbox to excel vb.net

我有此代碼,可以導出excel電子表格中兩個TextBoxs中包含的數據,問題是未創建excel文件。 我在下面將這兩個陳述不適用於拯救評論,也許有人可以對其進行測試並告訴我為什么它是錯誤的。

Dim objExcel As New Excel.Application     ' Represents an instance of Excel
Dim objWorkbook As Excel.Workbook     'Represents a workbook object
Dim objWorksheet As Excel.Worksheet     'Represents a worksheet object

objWorkbook = objExcel.Workbooks.Add
objWorksheet = CType(objWorkbook.Worksheets.Item(1), Excel.Worksheet)

'This form contains two text boxes, write values to cells A1 and A2
objWorksheet.Cells(1, 1) = TextBox1.Text
objWorksheet.Cells(2, 1) = TextBox2.Text

objWorkbook.Close(False)

'objWorkbook.Save()
'or
'objWorkbook.SaveAs("C:\Temp\Book1.xls")

objExcel.Quit()

代碼經過嘗試和測試

您的問題可能出在我所看到的一些不同方面。 我提供了一些您可以從您發布的代碼中看到的問題。

  1. 您的呼叫。在實際保存工作簿之前關閉。
  2. 您沒有在保存功能中指定“ FileFormat”。
  3. 您不退出Excel實例。
  4. 釋放您使用的所有 Excel對象很重要 如果沒有,它將被保留在內存中,並且不會被釋放。

下面的代碼

    Dim xlApp As New excel.Application
    Dim xlWorkBook As excel.Workbook
    Dim xlWorkSheet As excel.Worksheet
    Try
        xlApp.DisplayAlerts = False
        xlWorkBook = xlApp.Workbooks.Add
        xlWorkSheet = DirectCast(xlWorkBook.Sheets("Sheet1"), excel.Worksheet)

        xlApp.Visible = False 'Don't show Excel; we can and we don't have too

        xlWorkSheet.Cells(1, 1) = TextBox1.Text
        xlWorkSheet.Cells(2, 1) = TextBox2.Text

        xlWorkBook.SaveAs("C:\Temp\Book1.xls", FileFormat:=56) 'Save the workbook
        xlWorkBook.Close() 'Close workbook
        xlApp.Quit() 'Quit the application

        'Release all of our excel objects we used...
        ReleaseObject(xlWorkSheet)
        ReleaseObject(xlWorkBook)
        ReleaseObject(xlApp)

    Catch ex As Exception
    End Try

釋放Excel對象的方法

 Public Shared Sub ReleaseObject(ByVal obj As Object)
    Try
        System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
    Catch ex As Exception
        obj = Nothing
    Finally
        GC.Collect()
    End Try
 End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM