السلام عليكم ورحمه الله
انا استخدم هذا الكود وهو يعمل على 2003 لكن لا يعمل على 2007
الرجاء معرفه الحل
Private strFormat As StringFormat
Private arrColumnLefts As New ArrayList()
Private arrColumnWidths As New ArrayList()
Private iCellHeight As Integer = 0
Private iTotalWidth As Integer = 0
Private iRow As Integer = 0
Private bFirstPage As Boolean = False
Private bNewPage As Boolean = False
Private iHeaderHeight As Integer = 0 Try
Me.Cursor = Cursors.WaitCursor
Dim MsExcel As Object
MsExcel = CreateObject("Excel.Application")
MsExcel.Workbooks.Add()
For i As Integer = 0 To DataGridView1.Columns.Count - 1
'اضافة اسماء الحقول
MsExcel.Cells(i + 1).Value = DataGridView1.Columns(i).HeaderText
Next
For i As Integer = 0 To DataGridView1.Columns.Count - 1
For j As Integer = 0 To DataGridView1.Rows.Count - 1
'اعداد ورقة اكسل
MsExcel.Columns.HorizontalAlignment = 3
MsExcel.Columns.Font.Name = "Times New Roman"
MsExcel.Cells(j + 1).ColumnWidth = 15
MsExcel.Cells(j + 2).ColumnWidth = 45
MsExcel.Cells(j + 2, i + 1).Value = DataGridView1.Rows(j).Cells(i).Value
Next
Next
MsExcel.Visible = True
Catch 'ex As Exception
Return
Finally
Me.Cursor = Cursors.Arrow
End Try