我在向/從Excel工作簿中導入/導出數據時遇到了一些麻煩。例如,我有一個帶有3個文本框的表單。在Visual Basic中持久化TextBox文本
我已經完成了單元格A1,A2和A3的設置。當我運行調試時,只有前兩個框填充了Excel數據。
此外,當我改變文本框中的值時,它不會保存回原始電子表格!?!當我嘗試打開電子表格以查看是否發生了保存時,只讀通知出現了......但我仍然希望能夠更改原始表格,以便在應用程序啓動時導入新數據!
我粘貼了下面的代碼...我是否在做嚴重錯誤的事情?
Public Class Form1
Dim objExcel As New Excel.Application
Dim objWorkbook As Excel.Workbook
Dim objWorksheet As Excel.Worksheet
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
objWorkbook = objExcel.Workbooks.Open("C:\Users\HP\desktop\Book2.xls")
objWorksheet = CType(objWorkbook.Worksheets.Item("Sheet1"), Excel.Worksheet)
TextBox1.Text = objWorksheet.Cells(1, 1).text
TextBox2.Text = objWorksheet.Cells(2, 1).text
TextBox3.Text = objWorksheet.Cells(3, 1).text
End Sub
Private Sub Command1_Click()
objWorksheet.Cells(1, 1).Value = TextBox1.Text
objWorksheet.Cells(2, 3).Value = TextBox2.Text
objWorksheet.Cells(3, 3).Value = TextBox3.Text
End Sub
Private Sub Command2_Click()
objExcel.Application.Quit()
End Sub
Private Sub Command3_Click()
objExcel.SaveAs("C:\Users\HP\desktop\Book2.xls")
End Sub
End Class
上面的代碼是否編譯?它不應該只看這一行TextBox3.Text = objWorksheet.celss(3,1).text –
謝謝Mattias,這是一個我沒有注意到的錯誤是阻止txtbox 3填充....你有任何關於爲什麼我不能回寫excel並重新打開原始電子表格以改變單元格內容的想法?對不起所有的問題,我對VB非常陌生,並且仍然在找我。再次感謝H – Hazeley
你用什麼來閱讀excel什麼庫你導入使用Excel.Workbook爲例子? –