Мне нужно создать настольное приложение. Я использую Visual Studio 2015 и Excel Я должен: -open первенствовать файл -Найти в первую пустую строку -Write новые данные в этой строке -save этот файл (на данный момент я могу создать только новый файл Я не знаю, как обновлять объявление, сохраняя то же самое, что и я) Работает, пока я не открою файл. Спасибо! Это функция, которую я написал, чтобы открыть файл:Чтение файла Excel и поиск первой пустой ячейки с помощью vb.net
Public Function OpenExcel(filename As String) As Object
Dim retval As Object = Nothing
Try
Dim excel As Microsoft.Office.Interop.Excel.Application
Dim wb As Microsoft.Office.Interop.Excel.Workbook
Dim ws As Microsoft.Office.Interop.Excel.Worksheet
excel = New Microsoft.Office.Interop.Excel.Application
wb = excel.Workbooks.Open(filename)
excel.Visible = False
wb.Activate()
ws = wb.Worksheets.Item(1)
ws = excel.ActiveSheet
retval = ws.Cells(1, 1).value
Catch ex As exception
End Try
End Function
И это первая часть моего кода
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim dialogo As OpenFileDialog
dialogo = New OpenFileDialog()
dialogo.ShowDialog()
Dim ds As Object = f.OpenExcel(dialogo.FileName)
Dim oExcel As Object
oExcel = CreateObject("Excel.Application")
Dim oBook As Object
Dim oSheet1 As Object
oBook = oExcel.Workbooks.Add()
oSheet1 = oBook.Worksheets(1)
oBook = oExcel.ActiveWorkbook
Dim UR As Integer = 0
UR = oSheet1.Range("A" & oSheet1.Rows.Count).End(Microsoft.Office.Interop.Excel.XlDirection.xlUp).Row
For rr = 1 To UR
If oSheet1.Range("A" & rr).Value = ("") Then
oSheet1.Range("A" & rr).value = "text1"
Else
MsgBox("box pieno")
End If
Next rr
oExcel.DisplayAlerts = False
oBook.SaveAs("C:\Users\an\Desktop\New" & ".xlsx")
oBook.Close()
oBook = Nothing
Спасибо. Он работает, и я могу писать в следующей ячейке. Но есть проблема: пока я не выберу файл, если я проверю фоновые процессы, открытые на моем компьютере, у меня нет Excel. Я выбираю файл, который я хочу открыть, и - окно заблокировано - в фоновых процессах, появляется excel. Теперь, если я закрою процесс и снова нажму кнопку «Открыть», он работает. Я не понимаю, что произойдет –