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

الكود دة حلقة تكرارية لتصدير كل بيانات الداتا جريد فيو لتصديرها للاكسيل


كود :
 rowsTotal = DATAG.RowCount - 1
           colsTotal = DATAG_.Columns.Count - 1

           With excelWorksheet
               .Cells.Select()
               .Cells.Delete()
               For iC = 0 To colsTotal - 1
                   .Cells(1, iC + 1).Value = DATAG_.Columns(iC).HeaderText
               Next

               For I = 0 To rowsTotal
                   For j = 0 To colsTotal - 1
                       .Cells(I + 2, j + 1).value = DATAG_.Rows(I).Cells(j).Value
                   Next j
               Next I

               .Cells.Columns.AutoFit()
               .Cells.Select()
               .Cells.EntireColumn.AutoFit()
               .Cells(1, 1).Select()
           End With


اريد تعديلة ليتم نقل الصف الذي يتم تحديدة فقط بالداتا جريد فيو الصف المحدد فقط

عدلت الجزء التالي ولم يقم بالمطلوب

كود :
rowsTotal = DATAG_CLIENONLIN.SelectedRows.Count
الرد
تم الشكر بواسطة:
#2
أضف عامود للداتاغريد يكون من نوع تشك بوكسل ليكن رقم 0 ثم ضع عدل السطور التالية :

كود :
For I = 0 To rowsTotal
    For j = 1 To colsTotal '- 1
        If DATAG.Rows(I).Cells(0).Value = True Then
           .Cells(I + 2, j + 1).value = DATAG.Rows(I).Cells(j).Value
        End If
    Next j
Next I
الرد
تم الشكر بواسطة: محمد اسماعيل
#3
(14-10-18, 06:55 AM)asemshahen5 كتب : أضف عامود للداتاغريد يكون من نوع تشك بوكسل ليكن رقم 0 ثم ضع عدل السطور التالية :

كود :
For I = 0 To rowsTotal
    For j = 1 To colsTotal '- 1
        If DATAG.Rows(I).Cells(0).Value = True Then
           .Cells(I + 2, j + 1).value = DATAG.Rows(I).Cells(j).Value
        End If
    Next j
Next I

انا من نفس فكرتك قمت بالكود دة و
كود :
   For I = 0 To rowsTotal
                   For j = 0 To colsTotal - 1
                       If .Rows(I).Cells(0).Selected = True Then
DATAG.Cells(I + 2, j + 1).value = DATAG.Rows(I).Cells(j).Value
                       End If
                   Next j
               Next I
اشتغل بس المشكلة ان الصفوف غير محددة بتظهر فارغة بالاكسيل عايز ارجع امسح الغير محدد
الرد
تم الشكر بواسطة:
#4
ما إلك غير تصدر السجلات المحددة لجدول جديد أو DataTable من ثم لاكسيل .
الرد
تم الشكر بواسطة:
#5
(14-10-18, 09:16 PM)asemshahen5 كتب : ما إلك غير تصدر السجلات المحددة لجدول جديد أو DataTable من ثم لاكسيل .

تعبتك معايا طيب اصدرها ازاي من  DataTable

 الي الاكسيل انا مكن اخزن الصفوف الي بختارها عادي بس ازاي تتنقل للاكسيل
الرد
تم الشكر بواسطة:
#6
كود :
Public Sub ExportToExcel_DT(ByVal dtTemp As System.Data.DataTable, ByVal FilePath As String)
       If IO.File.Exists(FilePath) Then
           If MsgBox("الملف موجود مسبقا هل تريد حذفه", MsgBoxStyle.YesNo, "ملف موجود") = MsgBoxResult.Yes Then
               IO.File.Delete(FilePath)
           Else
               Return
           End If
       End If
       Dim _Excel As New Excel.Application
       Dim WBook As Excel.Workbook
       Dim WSheet As Excel.Worksheet
       WBook = _Excel.Workbooks.Add
       WSheet = WBook.ActiveSheet
       WSheet.DisplayRightToLeft = True
       Dim DT As System.Data.DataTable = dtTemp
       Dim DC As DataColumn
       Dim DR As DataRow
       Dim ColIndex As Integer = 0
       Dim RowIndex As Integer = 0
       For Each DC In DT.Columns
           ColIndex = ColIndex + 1
           WSheet.Cells(1, ColIndex) = DC.ColumnName
       Next
       For Each DR In DT.Rows
           RowIndex = RowIndex + 1
           ColIndex = 0
           For Each DC In DT.Columns
               ColIndex = ColIndex + 1
               WSheet.Cells(RowIndex + 1, ColIndex) = DR(DC.ColumnName)
               '-------------------------------------------------------
               '-------------------------------------------------------
           Next
       Next
       WSheet.Columns.AutoFit()
       WBook.SaveAs(FilePath)
       WSheet = Nothing
       WBook.Close(False)
       WBook = Nothing
       _Excel.Quit()
       _Excel = Nothing
       GC.Collect()
       MsgBox("تمت عملية تصدير البيانات الى اكسل بنجاح", MsgBoxStyle.Information, "نجاح التصدير")
   End Sub

كود :
Dim StrPath As String = "D:\Excel.xlsx"
If dt.Rows.Count > 0 Then
     ExportToExcel_DT(dt, StrPath)
End If
الرد
#7
(15-10-18, 12:35 AM)asemshahen5 كتب :
كود :
Public Sub ExportToExcel_DT(ByVal dtTemp As System.Data.DataTable, ByVal FilePath As String)
       If IO.File.Exists(FilePath) Then
           If MsgBox("الملف موجود مسبقا هل تريد حذفه", MsgBoxStyle.YesNo, "ملف موجود") = MsgBoxResult.Yes Then
               IO.File.Delete(FilePath)
           Else
               Return
           End If
       End If
       Dim _Excel As New Excel.Application
       Dim WBook As Excel.Workbook
       Dim WSheet As Excel.Worksheet
       WBook = _Excel.Workbooks.Add
       WSheet = WBook.ActiveSheet
       WSheet.DisplayRightToLeft = True
       Dim DT As System.Data.DataTable = dtTemp
       Dim DC As DataColumn
       Dim DR As DataRow
       Dim ColIndex As Integer = 0
       Dim RowIndex As Integer = 0
       For Each DC In DT.Columns
           ColIndex = ColIndex + 1
           WSheet.Cells(1, ColIndex) = DC.ColumnName
       Next
       For Each DR In DT.Rows
           RowIndex = RowIndex + 1
           ColIndex = 0
           For Each DC In DT.Columns
               ColIndex = ColIndex + 1
               WSheet.Cells(RowIndex + 1, ColIndex) = DR(DC.ColumnName)
               '-------------------------------------------------------
               '-------------------------------------------------------
           Next
       Next
       WSheet.Columns.AutoFit()
       WBook.SaveAs(FilePath)
       WSheet = Nothing
       WBook.Close(False)
       WBook = Nothing
       _Excel.Quit()
       _Excel = Nothing
       GC.Collect()
       MsgBox("تمت عملية تصدير البيانات الى اكسل بنجاح", MsgBoxStyle.Information, "نجاح التصدير")
   End Sub

كود :
Dim StrPath As String = "D:\Excel.xlsx"
If dt.Rows.Count > 0 Then
     ExportToExcel_DT(dt, StrPath)
End If

اعجز عن الشكر اخي asemshahen5

يسرا اللَّه لك أمرك في الدنيا والأخرة
الرد
تم الشكر بواسطة: asemshahen5
#8
الله يسلمك و يحفظك .
الرد
تم الشكر بواسطة:
#9
(15-10-18, 03:25 AM)asemshahen5 كتب : الله يسلمك و يحفظك .

امين Idea
الرد
تم الشكر بواسطة: asemshahen5 , asemshahen5


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] تصدير ملف نصي للداتا جريد فيو محمد اسماعيل 0 58 26-09-18, 08:13 PM
آخر رد: محمد اسماعيل
  [VB.NET] سوال في تصدير البيانات (مهم) DOX.1 9 228 06-09-18, 02:09 PM
آخر رد: elgokr
  فتح ملف بي دي إف على صفحة معينة waelalmsry75 19 476 03-09-18, 07:04 AM
آخر رد: elgokr
  مشكلة في تصدير بيانات جريد فيو الى ملف الاكسل Marwan9990 9 225 10-08-18, 10:51 PM
آخر رد: Marwan9990
  اختيار روابط معينة من بين روابط ابو روضة 11 398 20-07-18, 06:41 PM
آخر رد: elgokr
  بحث عن ملف بصيغة معينة في الجهاز و تشغيله تلقائي YousefOkasha 0 132 25-06-18, 09:35 PM
آخر رد: YousefOkasha
  تصدير بيانات داتا جريد فيو الى ملف ورد nabil.1710 1 163 31-05-18, 10:40 PM
آخر رد: عبد العزيز البسكري
  [سؤال] جلب بيانات معينة بدلالة المعرف (Id) ibrahimmakhool 8 274 30-05-18, 03:01 AM
آخر رد: elgokr
  [VB.NET] طلب كود تصدير بيانات داتا جريد فيو إلى وورد waelalmsry75 9 685 16-05-18, 04:32 AM
آخر رد: عبد العزيز البسكري
  [سؤال] تصدير البيانات الى pdf han 3 209 14-05-18, 03:16 AM
آخر رد: sendbad100

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


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