Я делаю экспорт в VB. Я смог экспортировать значения datagridview в excel, но когда я открываю файл, он показывает эту ошибку.Экспортированный файл excel из datagridview показывает ошибку при открытии VB
Я использую следующий код, чтобы экспортировать значения DataGridView.
Dim xlApp As Microsoft.Office.Interop.Excel.Application
Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook
Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet
Dim misValue As Object = System.Reflection.Missing.Value
Dim sPath As String = String.Empty
Dim dlgSave As New SaveFileDialog
Dim i As Integer
Dim j As Integer
dlgSave.DefaultExt = "xls"
dlgSave.Filter = "Microsoft Excel|*.xls"
If dlgSave.ShowDialog = System.Windows.Forms.DialogResult.OK Then
xlApp = New Microsoft.Office.Interop.Excel.Application
xlWorkBook = xlApp.Workbooks.Add(misValue)
xlWorkSheet = xlWorkBook.Sheets("sheet1")
For i = 0 To dgvFile.RowCount - 1
For j = 0 To dgvFile.ColumnCount - 1
For k As Integer = 1 To dgvFile.Columns.Count
xlWorkSheet.Cells(1, k) = dgvFile.Columns(k - 1).HeaderText
xlWorkSheet.Cells(i + 2, j + 1) = dgvFile(j, i).Value.ToString()
Next
Next
Next
Dim sFileName As String = Replace(dlgSave.FileName, ".xlsx", ".xlx")
xlWorkSheet.SaveAs(sFilename)
xlWorkBook.Close()
xlApp.Quit()
releaseObject(xlApp)
releaseObject(xlWorkBook)
releaseObject(xlWorkSheet)
Dim res As MsgBoxResult
res = MsgBox("Process completed, Would you like to open file?", MsgBoxStyle.YesNo)
If (res = MsgBoxResult.Yes) Then
Process.Start(sFileName)
End If
End If
ПРИМЕЧАНИЕ Этот код работает отлично. Он экспортирует ценности без каких-либо проблем. Он просто показывает ошибку, когда я открываю файл excel. У экспортируемого файла нет проблем, когда я нажимаю «Да». Он показывает правильные значения. Я просто хочу, чтобы эта ошибка перестала отображаться при открытии файла.
Может ли кто-нибудь помочь мне исправить это решение? Я буду искренне благодарен всем, кто может вести меня. Благодарю. :)
попробуйте сохранить в формате .xls'. Может возникнуть проблема с версией excel на вашем компьютере. –
Я попытался сохранить в .xls, но он все еще показывает ошибку. Проблема в том, что формат так же, как вы сказали. Мой Excel использует .xlsx, поэтому его нужно сохранить в .xlsx. Это было отсортировано. Благодарю. :) – Nek