اسعد الله اوقاتكم جميعا احبائي
استفسار ي اخوان
انا معي فورم يحتوي على جريد فيو يعرض لي بيانات من قاعدة بيانات اكسس
استخدمة مع جريد فيو الموضوع التالي .. وهو خيار اخفاء او اظهار بعض الاعمده في جريد فيو
http://vb4arb.com/vb/showthread.php?tid=15554
لحد الحين كل شي حلو
ايضا معي في الفورم كود التالي .. وهو كود تصدير بيانات جريد فيو الى ملف اكسل
PHP كود :
Try
Dim MsExcel = CreateObject("Excel.Application")
MsExcel.Workbooks.Add()
For i As Integer = 0 To dgv1.Columns.Count - 1
MsExcel.Cells(i + 1).Value = dgv1.Columns(i).HeaderText
Next
For i As Integer = 0 To dgv1.Columns.Count - 1
For j As Integer = 0 To dgv1.Rows.Count - 1
MsExcel.Columns.HorizontalAlignment = 3
MsExcel.Columns.Font.Name = "Times New Roman"
MsExcel.Columns.EntireColumn.AutoFit()
MsExcel.Rows.Item(j + 1).Font.size = 13
MsExcel.Cells(j + 2, i + 1).Value = dgv1.Rows(j).Cells(i).Value
Next
Next
MsExcel.Visible = True
Catch ex As Exception
MsgBox(ex.Message)
End Try
المشكلة الان انا اقوم بعملية اخفاء بعض الاعمده بستخدام الموضوع وطريقة التي سبق وذكرتها في الاعلى
ولكن لما اذهب اعمل تصدير لملف الاكسل يقوم بتصدير بيانات التي قمت ب اخفاها ايضا
فما هو الحل ؟ ياليت اذا احد معه حل للمشكلة يفيدني ب طريقة او تعديل لكود تصدير بيانات لملف الاكسل بحيث لا يقوم بتصدير الاعمده التي اقوم باخفاها هيك احتاج تكون الطريقة
مودتي للجميع
ضع شرط التحقق من ظهور العمود بين الحلقتين For i و For j
PHP كود :
For i As Integer = 0 To dgv1.Columns.Count - 1
If dgv1.Columns(i).Visible = False Then Continue For
For j As Integer = 0 To dgv1.Rows.Count - 1
(10-08-18, 12:06 AM)Finish كتب : [ -> ]ضع شرط التحقق من ظهور العمود بين الحلقتين For i و For j
PHP كود :
For i As Integer = 0 To dgv1.Columns.Count - 1
If dgv1.Columns(i).Visible = False Then Continue For
For j As Integer = 0 To dgv1.Rows.Count - 1
اشكرك عزيزي على سرعة الرد
طبقة الكود لما عملت تصدير بيانات الاعمده اختفو فعلا ولكن تبقا مشكله وحده اسم العمود لا يزال موجود
الي انحذف بياناته ولكن الاسم موجود
الا يمكن ايضا حذف الاسم ؟
(09-08-18, 11:54 PM)Marwan9990 كتب : [ -> ]اسعد الله اوقاتكم جميعا احبائي
استفسار ي اخوان
انا معي فورم يحتوي على جريد فيو يعرض لي بيانات من قاعدة بيانات اكسس
استخدمة مع جريد فيو الموضوع التالي .. وهو خيار اخفاء او اظهار بعض الاعمده في جريد فيو
http://vb4arb.com/vb/showthread.php?tid=15554
لحد الحين كل شي حلو
ايضا معي في الفورم كود التالي .. وهو كود تصدير بيانات جريد فيو الى ملف اكسل
PHP كود :
Try
Dim MsExcel = CreateObject("Excel.Application")
MsExcel.Workbooks.Add()
For i As Integer = 0 To dgv1.Columns.Count - 1
MsExcel.Cells(i + 1).Value = dgv1.Columns(i).HeaderText
Next
For i As Integer = 0 To dgv1.Columns.Count - 1
For j As Integer = 0 To dgv1.Rows.Count - 1
MsExcel.Columns.HorizontalAlignment = 3
MsExcel.Columns.Font.Name = "Times New Roman"
MsExcel.Columns.EntireColumn.AutoFit()
MsExcel.Rows.Item(j + 1).Font.size = 13
MsExcel.Cells(j + 2, i + 1).Value = dgv1.Rows(j).Cells(i).Value
Next
Next
MsExcel.Visible = True
Catch ex As Exception
MsgBox(ex.Message)
End Try
المشكلة الان انا اقوم بعملية اخفاء بعض الاعمده بستخدام الموضوع وطريقة التي سبق وذكرتها في الاعلى
ولكن لما اذهب اعمل تصدير لملف الاكسل يقوم بتصدير بيانات التي قمت ب اخفاها ايضا
فما هو الحل ؟ ياليت اذا احد معه حل للمشكلة يفيدني ب طريقة او تعديل لكود تصدير بيانات لملف الاكسل بحيث لا يقوم بتصدير الاعمده التي اقوم باخفاها هيك احتاج تكون الطريقة
مودتي للجميع
حتى ان لا تشتت على نفسك
فقط تعال على كود الاستعلام
وبدلاً من استخدام
فقط اجعلها
كود :
SELECT id, name1, name2
حيث ان الاسماء هى عبارة عن الاعمدة التى تحتاج الى ظهورها
وبكده ستوفر عدد اسطر من اخفاء الاعمدة فى الداتا جريد
وكذلك فى التصدير
تحياتى لك
وتمنياتى لك التوفيق
(10-08-18, 05:08 AM)elgokr كتب : [ -> ] (09-08-18, 11:54 PM)Marwan9990 كتب : [ -> ]اسعد الله اوقاتكم جميعا احبائي
استفسار ي اخوان
انا معي فورم يحتوي على جريد فيو يعرض لي بيانات من قاعدة بيانات اكسس
استخدمة مع جريد فيو الموضوع التالي .. وهو خيار اخفاء او اظهار بعض الاعمده في جريد فيو
http://vb4arb.com/vb/showthread.php?tid=15554
لحد الحين كل شي حلو
ايضا معي في الفورم كود التالي .. وهو كود تصدير بيانات جريد فيو الى ملف اكسل
PHP كود :
Try
Dim MsExcel = CreateObject("Excel.Application")
MsExcel.Workbooks.Add()
For i As Integer = 0 To dgv1.Columns.Count - 1
MsExcel.Cells(i + 1).Value = dgv1.Columns(i).HeaderText
Next
For i As Integer = 0 To dgv1.Columns.Count - 1
For j As Integer = 0 To dgv1.Rows.Count - 1
MsExcel.Columns.HorizontalAlignment = 3
MsExcel.Columns.Font.Name = "Times New Roman"
MsExcel.Columns.EntireColumn.AutoFit()
MsExcel.Rows.Item(j + 1).Font.size = 13
MsExcel.Cells(j + 2, i + 1).Value = dgv1.Rows(j).Cells(i).Value
Next
Next
MsExcel.Visible = True
Catch ex As Exception
MsgBox(ex.Message)
End Try
المشكلة الان انا اقوم بعملية اخفاء بعض الاعمده بستخدام الموضوع وطريقة التي سبق وذكرتها في الاعلى
ولكن لما اذهب اعمل تصدير لملف الاكسل يقوم بتصدير بيانات التي قمت ب اخفاها ايضا
فما هو الحل ؟ ياليت اذا احد معه حل للمشكلة يفيدني ب طريقة او تعديل لكود تصدير بيانات لملف الاكسل بحيث لا يقوم بتصدير الاعمده التي اقوم باخفاها هيك احتاج تكون الطريقة
مودتي للجميع
حتى ان لا تشتت على نفسك
فقط تعال على كود الاستعلام
وبدلاً من استخدام
فقط اجعلها
كود :
SELECT id, name1, name2
حيث ان الاسماء هى عبارة عن الاعمدة التى تحتاج الى ظهورها
وبكده ستوفر عدد اسطر من اخفاء الاعمدة فى الداتا جريد
وكذلك فى التصدير
تحياتى لك
وتمنياتى لك التوفيق
اهلا بك ي اخي الكريم
مشكله عزيز انا احتاج في اول اقلاع للفورم تكون الجريد فيو معباه بكل حقول الجدول كامل
بعدها المستخدم رح يختار الحقول الي يبيها والباقي رح يخفيها
بعدها يقوم بعملية تصدير الحقول التي لم يتم اخفاها الى ملف الاكسل حتى يستكمل باقي العمل
ياليت اذا فيه طريقه اخفي العمود كامل تفيدني اخي
الطريقة التي سبق وكتبها الي اخي الفاضل (
Finish )
ترسل بيانات داتا جريد فيو فعلا بدون بيانات الحقول كذا كويس
ولكن ايضا المشكلة باقيه ترسل اسم العمود انا ابي العمود ما يظهر اسمه ايضا
اي عمود عامل له اخفاء قبل تصدير الى اكسل لا احتاج ان يعمل له تصدير
ياليت اذا تعرف طريقة تفيدني ابها لتعديل على كود الاكسل
مودتي لك
(10-08-18, 12:46 PM)mrnooo2000 كتب : [ -> ]جرب هذا الكود أخى
كود :
Try
Dim MsExcel = CreateObject("Excel.Application")
MsExcel.Workbooks.Add()
Dim C As Integer = 0
For i As Integer = 0 To dgv1.Columns.Count - 1
If dgv1.Columns(i).Visible = True Then
C += 1
MsExcel.Cells(C).Value = dgv1.Columns(i).HeaderText
End If
Next
C = 0
For i As Integer = 0 To dgv1.Columns.Count - 1
If dgv1.Columns(i).Visible = False Then Continue For
C += 1
For j As Integer = 0 To dgv1.Rows.Count - 1
MsExcel.Columns.HorizontalAlignment = 3
MsExcel.Columns.Font.Name = "Times New Roman"
MsExcel.Columns.EntireColumn.AutoFit()
MsExcel.Rows.Item(j + 1).Font.size = 13
MsExcel.Cells(j + 2, C).Value = dgv1.Rows(j).Cells(i).Value
Next
Next
MsExcel.Visible = True
Catch ex As Exception
MsgBox(ex.Message)
End Try
اهلا اخي الكريم
الكود شغال مية ميه يا مبببببببدع ربي يرزقك جنات النعيم يا رب انته وجميع احباب قلبك
وشكر موصول ايضا لجميع من ساهم بمشاركة في مساعدتي لحل هذا المشكلة في هذا الموضوع
مودتي لكم جميعا
الان الصورة كملت عن ما تريده بعد شرحك
لماذا تعرض الاعمدة كاملاً
وكلاً من Finish و mrnooo2000
ما قصر فى تقديم المساعدة الكاملة
فبارك الله لهم فيما يتم بتقديمه من مساعدة دائماً
فتحياتى لك ولهم
وتمنياتى لكم التوفيق
(10-08-18, 07:32 PM)elgokr كتب : [ -> ]الان الصورة كملت عن ما تريده بعد شرحك
لماذا تعرض الاعمدة كاملاً
وكلاً من Finish و mrnooo2000
ما قصر فى تقديم المساعدة الكاملة
فبارك الله لهم فيما يتم بتقديمه من مساعدة دائماً
فتحياتى لك ولهم
وتمنياتى لكم التوفيق
فعلا صار ميه ميه انا شارك للجميع على ما قدموه واعتذر ل اخي فنيش انا ما انتبهت انه قام ب تعديل الكود للمرة الثانية لم انتبه لرده السموحه منه
ربي يوفقكم جميعا يا رب
وللجميع تم عمل احلا تقيم تستاهلون وزود
مودتي لكم