الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل حقلة تكرارية داخل الحلقة الاساسية

بدأه atefkhalf2004 في 28 مارس 2014 · 4 رد · 591 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عمل حقلة تكرارية داخل الحلقة الاساسية

السادة الافاضل
استخدم الكود التالي في الطباعة من خلال اكسيل
لكن ظهرت مشكلة لو ان عدد الاصناف تعدي 32 صنف
عايز اجميع عمود 2 كل ما زاد عدد الاسطر عن 32 سطر ويسمي ناتج الجمع ماقبله
اي
For i = 0 To ds.Tables("invodet").Rows.Count - 1
for j=1 to 32

next j
next i

وهذا هو الكود المستخدم في الطباعة


For i = 0 To ds.Tables("invodet").Rows.Count - 1

xlw.Worksheets("sheet1").Cells(i + 6, 1) = i + 1
xlw.Worksheets("sheet1").Cells(i + 6, 1).HorizontalAlignment = 3
xlw.Worksheets("sheet1").Cells(i + 6, 1).VerticalAlignment = 3
xlw.Worksheets("sheet1").Cells(i + 6, 2) = ds.Tables("invodet").Rows(i).Item("invsal").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 2).numberformat = "#,##.00"

xlw.Worksheets("sheet1").Cells(i + 6, 3) = ds.Tables("invodet").Rows(i).Item("invqu").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 4) = ds.Tables("invodet").Rows(i).Item("invprc").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 4).numberformat = "#,##.00"

xlw.Worksheets("sheet1").Cells(i + 6, 5) = ds.Tables("invodet").Rows(i).Item("invunit").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 6) = ds.Tables("invodet").Rows(i).Item("invsun").ToString()

Next
#2

انتظر ردك الجميل

#3

هذت ملف اكسيل لما اريد

dataout.xls

#4

لتقريب  الفكرة

بفرض ان هناك لستة    بها الاعداد
1
2
3
4
5
6
7
8
كيف  يتم عرض  مجموع كل عددين  وفي النهاية يتم عرض  المجموع الكلي
dim a,b as integer
for i=0 to 7
for j=1 to 2
a=a+listbox1.items(j)   مثلا
next j
b+=a
next i
 

#5

كود لم يجرب ولكن مجرد فكرة

dim i  as intger=0 
dim sn  as intger=1
For Each oRow as dataRow in ds.Tables("invodet").Rows

xlw.Worksheets("sheet1").Cells(i + 6, 1) = sn
xlw.Worksheets("sheet1").Cells(i + 6, 1).HorizontalAlignment = 3
xlw.Worksheets("sheet1").Cells(i + 6, 1).VerticalAlignment = 3
xlw.Worksheets("sheet1").Cells(i + 6, 2) = oRow("invsal").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 2).numberformat = "#,##.00"

xlw.Worksheets("sheet1").Cells(i + 6, 3) = oRow("invqu").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 4) = oRow("invprc").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 4).numberformat = "#,##.00"

xlw.Worksheets("sheet1").Cells(i + 6, 5) = oRow("invunit").ToString()
xlw.Worksheets("sheet1").Cells(i + 6, 6) = oRow("invsun").ToString()
i=i+1
sn=sn+1
if i mod 32 then
	xlw.Worksheets("sheet1").Cells(i + 6, 2) ="=sum(B" & i & ":B & i-32 & ")"
	xlw.Worksheets("sheet1").Cells(i + 6, 2).numberformat = "#,##.00"

	xlw.Worksheets("sheet1").Cells(i + 6, 6) ="ما قبله"

	i=i+1
end if
Next

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…