تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] تصدير الى اكسل
#1
ممكن احد يفهمني في هذا الخطا


الملفات المرفقة صورة/صور
   
الرد
تم الشكر بواسطة: سعود , ابراهيم ايبو
#2
تفضل هذا كود تصدير اي بيانات من الداتا جرد فيو الى الاكسل
ضع الكود في موديل عام

كود :
Imports Microsoft.Office.Interop.Excel
Module Excel_Mod
   Public Sub dgv_ExportDataToExcelFile(ByVal dgv As DataGridView)
       System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("ar-SA")
       Dim SFD As New SaveFileDialog
       Dim exlapp As New Application
       Dim exlworkbook As Workbook
       Dim exlworksheet As Worksheet
       Dim misvalue As Object = System.Reflection.Missing.Value
       exlworkbook = exlapp.Workbooks.Add(misvalue)
       exlworksheet = exlworkbook.Sheets(1)
       exlworksheet.DisplayRightToLeft = True
       For colhead As Integer = 0 To dgv.ColumnCount - 1
           exlworksheet.Cells(1, colhead + 1) = dgv.Columns(colhead).HeaderText
       Next
       For i As Integer = 0 To dgv.RowCount - 1
           For j As Integer = 0 To dgv.ColumnCount - 1
               exlworksheet.Cells(i + 2, j + 1) = dgv.Rows(i).Cells(j).Value.ToString
           Next
       Next
       SFD.Filter = "Excel Files|*.xlsx|Excel 2003|*.xls"
       If SFD.ShowDialog = System.Windows.Forms.DialogResult.OK Then
           exlworksheet.SaveAs(SFD.FileName)
       End If
       exlworkbook.Close()
       exlapp.Quit()
       System.Runtime.InteropServices.Marshal.ReleaseComObject(exlapp)
       System.Runtime.InteropServices.Marshal.ReleaseComObject(exlworkbook)
       System.Runtime.InteropServices.Marshal.ReleaseComObject(exlworksheet)
       exlapp = Nothing : exlworkbook = Nothing : exlworksheet = Nothing
       If MessageBox.Show("هل تريد فتح الملف ؟", "فتح ملف الأكسل", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading) = MsgBoxResult.Yes Then
           Process.Start(SFD.FileName)
       End If
   End Sub
End Module

وكل ما عليك هو استدعاء الصب في الشاشة التي تعمل بها

كود :
dgv_ExportDataToExcelFile(ضع هنا اسم الداتا جرد فيو)
الرد
تم الشكر بواسطة: ابراهيم ايبو , سعود
#3
(07-05-20, 10:58 PM)aljzazy كتب :
تفضل هذا كود تصدير اي بيانات من الداتا جرد فيو الى الاكسل
ضع الكود في موديل عام

كود :
Imports Microsoft.Office.Interop.Excel
Module Excel_Mod
   Public Sub dgv_ExportDataToExcelFile(ByVal dgv As DataGridView)
       System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("ar-SA")
       Dim SFD As New SaveFileDialog
       Dim exlapp As New Application
       Dim exlworkbook As Workbook
       Dim exlworksheet As Worksheet
       Dim misvalue As Object = System.Reflection.Missing.Value
       exlworkbook = exlapp.Workbooks.Add(misvalue)
       exlworksheet = exlworkbook.Sheets(1)
       exlworksheet.DisplayRightToLeft = True
       For colhead As Integer = 0 To dgv.ColumnCount - 1
           exlworksheet.Cells(1, colhead + 1) = dgv.Columns(colhead).HeaderText
       Next
       For i As Integer = 0 To dgv.RowCount - 1
           For j As Integer = 0 To dgv.ColumnCount - 1
               exlworksheet.Cells(i + 2, j + 1) = dgv.Rows(i).Cells(j).Value.ToString
           Next
       Next
       SFD.Filter = "Excel Files|*.xlsx|Excel 2003|*.xls"
       If SFD.ShowDialog = System.Windows.Forms.DialogResult.OK Then
           exlworksheet.SaveAs(SFD.FileName)
       End If
       exlworkbook.Close()
       exlapp.Quit()
       System.Runtime.InteropServices.Marshal.ReleaseComObject(exlapp)
       System.Runtime.InteropServices.Marshal.ReleaseComObject(exlworkbook)
       System.Runtime.InteropServices.Marshal.ReleaseComObject(exlworksheet)
       exlapp = Nothing : exlworkbook = Nothing : exlworksheet = Nothing
       If MessageBox.Show("هل تريد فتح الملف ؟", "فتح ملف الأكسل", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading) = MsgBoxResult.Yes Then
           Process.Start(SFD.FileName)
       End If
   End Sub
End Module

وكل ما عليك هو استدعاء الصب في الشاشة التي تعمل بها

كود :
dgv_ExportDataToExcelFile(ضع هنا اسم الداتا جرد فيو)

تقبل الله منا ومنكم صالح الاعمال
اخي نفس المشكل ونفس الرسالة تظهر حتى بعد الكود المرفق
الرد
تم الشكر بواسطة: سعود , ابراهيم ايبو
#4
اخواني الكرام
كل عام وانتم بخير
توجد ميزة بالداتا ست تصدر محتواها كملف xml  ثم بعد ذلك تفتح الملف بالاكسل وتعالج الامور المتبقية بعد خطوة التصدير.
PHP كود :
dt.DataSet.WriteXml(CurDir() & "\a.xml"
هل تعرفون هذه الخطوة ولكنها لا تلبي المطلوب؟
إخوانا الكرام أخواتنا الكريمات اقسام المشاريع ليست لطلبها بل لتقديمها وربما مناقشتها ان احب صاحب المشروع.
الرد
تم الشكر بواسطة: ابراهيم ايبو
#5
تصدير DataGridView الى xls .

طريقته لا تستخدم أي من مكاتب الاكسيل جربه .
الرد
تم الشكر بواسطة: سعود , ابراهيم ايبو
#6
Video 


واعبد ربك حتى يأتيك اليقين
الرد
تم الشكر بواسطة: سعود , asemshahen5 , ابراهيم ايبو



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم