تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[كود] كود تصدير الداتا جريد الى اكسيل
#1
استخد الكود التالى فى تصدير البيانات ويعمل معى لكن يعمل على بعض الاجهزة والاخرى لا يعمل
فلا اعرف اين المشكلة وهل لها علاقة باصدارات الاوفيس
برجاء تعديل الكود الاتى حتى يتوافق مع جميع الاجهزة وجميع اصدارات الاوفيس
كود :
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US")
        Dim exlapp As New Excel.Application


        Dim exlworkbook As Excel.Workbook
        Dim exlworksheet As Excel.Worksheet
        Dim misvalue As Object = System.Reflection.Missing.Value

        exlworkbook = exlapp.Workbooks.Add(misvalue)
        exlworksheet = exlworkbook.Sheets("Sheet1")

        For colhead As Integer = 0 To dgvSrch.ColumnCount - 1
            exlworksheet.Cells(1, colhead + 1) = dgvSrch.Columns(colhead).HeaderText
        Next

        For i As Integer = 0 To dgvSrch.RowCount - 1 '2
            For j As Integer = 0 To dgvSrch.ColumnCount - 1

                exlworksheet.Cells(i + 2, j + 1) = dgvSrch.Rows(i).Cells(j).Value.ToString
            Next
        Next

        SaveFileDialog1.Filter = "Excel Files|*.xlsx|Excel 2003|*.xls"
        If SaveFileDialog1.ShowDialog = System.Windows.Forms.DialogResult.OK Then
            exlworksheet.SaveAs(SaveFileDialog1.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 MsgBox("هل تريد فتح الملف", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
            Process.Start(SaveFileDialog1.FileName)
        End If
    End Sub
الرد
تم الشكر بواسطة:
#2
السلام عليكم...
هذا الكود لم يتسبب معي في اي مشكلة من قبل،
تفضل:

كود :
 If datagridview1.Rows.Count = 0 Then Exit Sub
       'datagridview1 اسم الداتا جريد
       Try
           Dim MsExcel = CreateObject("Excel.Application")
           MsExcel.Workbooks.Add()


           For i As Integer = 0 To 4
               'عدد سطور الداتا جريد 5
               'بدات القيمه من  صفر
               MsExcel.Cells(i + 1).Value = datagridview1.Columns(i).HeaderText
           Next


           For j As Integer = 0 To datagridview1.Rows.Count - 1

               MsExcel.Columns.HorizontalAlignment = 3
               MsExcel.Cells(j + 1).ColumnWidth = 24

               'عدد سطور الداتا جريد 5
               'بدات القيمه من  1
               For d As Integer = 1 To 5
                   MsExcel.Cells(j + 2, d).Value = datagridview1.Rows(j).Cells(d - 1).Value
               Next
           Next

           MsExcel.Visible = True
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try
 الذي يدعي ان لغته هي افضل لغة برمجة، فاعلم انه مستخدم وليس مبرمج.
الرد
تم الشكر بواسطة: asemshahen5 , egypt 2020 , ahmedramzyaish , ahmedramzyaish
#3
(14-02-20, 03:31 AM)اسامه الهرماوي كتب : السلام عليكم...
هذا الكود لم يتسبب معي في اي مشكلة من قبل،
تفضل:

كود :
 If datagridview1.Rows.Count = 0 Then Exit Sub
       'datagridview1 اسم الداتا جريد
       Try
           Dim MsExcel = CreateObject("Excel.Application")
           MsExcel.Workbooks.Add()


           For i As Integer = 0 To 4
               'عدد سطور الداتا جريد 5
               'بدات القيمه من  صفر
               MsExcel.Cells(i + 1).Value = datagridview1.Columns(i).HeaderText
           Next


           For j As Integer = 0 To datagridview1.Rows.Count - 1

               MsExcel.Columns.HorizontalAlignment = 3
               MsExcel.Cells(j + 1).ColumnWidth = 24

               'عدد سطور الداتا جريد 5
               'بدات القيمه من  1
               For d As Integer = 1 To 5
                   MsExcel.Cells(j + 2, d).Value = datagridview1.Rows(j).Cells(d - 1).Value
               Next
           Next

           MsExcel.Visible = True
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try
جاري التجربه وشكرااا
الرد
تم الشكر بواسطة: asemshahen5
#4
تصدير DataGridView الى xls .

بنهاية الصفحة الكود النهائي المعدل و انشاء الله يكون المطلوب .
سبحان الله وبحمده سبحان الله العظيم و الحمد لله ولا اله الا الله والله اكبر




الرد
تم الشكر بواسطة:
#5
(14-02-20, 04:17 PM)asemshahen5 كتب : تصدير DataGridView الى xls .

بنهاية الصفحة الكود النهائي المعدل و انشاء الله يكون المطلوب .

جربت الكود المرفق
يعمل ولكن يغير من خصائص البيانات المصدرة
مثلا الارقام تحول الى فورمات نص
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] مساعدة في إضافة row في جريد فيو Codack 1 57 23-09-20, 02:27 PM
آخر رد: اسامه الهرماوي
  كود تعبئة الكومبو داخل الداتا قريد فيو عمور2016 30 760 17-09-20, 11:13 PM
آخر رد: asemshahen5
  تصدير محتويات datagridview الى pdf كرم ابوهشام 7 1,907 15-09-20, 12:34 AM
آخر رد: حريف برمجة
  سؤال بالداتا جريد فيو اليوم السابع 3 136 07-09-20, 01:34 AM
آخر رد: اليوم السابع
  فلتر للداتا جريد فيو ahmedramzyaish 11 486 05-09-20, 02:40 PM
آخر رد: Anas Mahmoud
  طريقة عرض بيانات جدولين في الداتا قريد ZaerAllail 7 258 05-09-20, 01:44 PM
آخر رد: Anas Mahmoud
  طريقه تحميع كميات صنف معين فى الداتا جريد فيو بباركود الصنف خالد كامل1 1 176 31-08-20, 10:23 AM
آخر رد: Anas Mahmoud
  سؤال فى الداتا جريد فيو خالد كامل1 1 168 28-08-20, 08:42 AM
آخر رد: حريف برمجة
  [سؤال] انا لوانا ضفت coulmns ل dt أو datagridviw ازاي اغير نوع الداتا بتاعه الصف منه 3 189 27-08-20, 10:09 PM
آخر رد: asemshahen5
  ي جماعه دلوقتي لما بنقل الداتا للعميل اسم السيرفر بيبقي متغير ف الربط اللي انا عملو م Hosam Ashraf Elwakel 2 183 25-08-20, 02:56 AM
آخر رد: Rabeea Qbaha

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


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