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

[ تمت الإجابة ]كيف اقدر انفذ برمجية لكل السجلات مرة واحدة؟

بدأه سر الاعجاب9988 في 12 أغسطس 2008 · 8 رد · 811 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله

مشكلتي هي التالي

أنا عملت قاعدة بيانات لجمع درجات الطلاب وايجاد المحموع وحساب المستوى

طبعا كل طالب له عدة فروع : الأعمال الكتابية والشفوية والامتحانات القصيرة والمشروع والامتحان النهائي

وطبعا كل طالب يمثل سجل خاص به الأفرع السابقة المختلفة

وبعد ما سويت النموج سويت زر وسويت في الكود اللي يجمع الدرجات كلها ويطلع الناتج ويحسب المستوى

وهذا هو الكود

Private Sub sh1_Click()

Dim x, y, z, e, f, g, h, i As Integer

mw1.SetFocus

x = Val(mw1.Text)

ww1.SetFocus

y = Val(ww1.Text)

rs1.SetFocus

z = Val(rs1.Text)

st1.SetFocus

e = Val(st1.Text)

f = x + y + z + e

sum1.SetFocus

sum1.Text = f

ft1.SetFocus

g = Val(ft1.Text)

h = f + g

fsum1.SetFocus

fsum1.Text = h

fsum1.SetFocus

i = Val(fsum1.Text)

l1.SetFocus

If i > 89 Then

l1.Text = "Ã"

ElseIf i > 79 Then

l1.Text = "È"

ElseIf i > 64 Then

l1.Text = "Ì"

ElseIf i > 49 Then

l1.Text = "Ï"

Else

l1.Text = "åÜ"

End If

End Sub

المشكلة اللي أواجهها ان لما اضغط على الزر يحسب العملية تماااام وآخر حلاة .. بس يسويها للطالب الظاهر في النموذج .. ولازم اضطر اضغط على الزر لكل طالب عشان يحسب درجاته

السؤال : كيف اقدر اخلي الكود السابق أو العملية السابقة تتم لكافة السجلات الموجودة في النموذج بنقرة واحدة؟

أرجو المساعدة ولكم جزيل الشكر

#2

اخي الفاضل

السلام عليكم ورحمة الله وبركاته

العملية تحتاج الى ما يسمى LOOP بحيث يتم المرور على كل سجل من سجلات الجدول ويتم تحديثه بناء على الكود الذي قمت بوضعه حتى نهاية السجلات

لذا يفضل ان تضع مثالك لكي يتم التعديل عليه .

#3

شكرا على اهتمامك اخت زهرة

وهذا المثال


Dim x, y, z, e, f, g, h, i As Integer
mw1.SetFocus
x = Val(mw1.Text)
ww1.SetFocus
y = Val(ww1.Text)
rs1.SetFocus
z = Val(rs1.Text)
st1.SetFocus
e = Val(st1.Text)
f = x + y + z + e
sum1.SetFocus
sum1.Text = f
ft1.SetFocus
g = Val(ft1.Text)
h = f + g
fsum1.SetFocus
fsum1.Text = h
fsum1.SetFocus
i = Val(fsum1.Text)
l1.SetFocus
If i > 89 Then
l1.Text = "Ã"
ElseIf i > 79 Then
l1.Text = "È"
ElseIf i > 64 Then
l1.Text = "Ì"
ElseIf i > 49 Then
l1.Text = "Ï"
Else
l1.Text = "åÜ"
End If
End Sub
Private Sub sh1_Click()

الحين أريد اعرف وين احط

loop

شاكر لردك مرة أخرى

#4

اخي الفاضل

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

#5

اختى زهرة

هذه القاعدة

وانتظر مساعدة مع الشكر الجزيل

marks.rar

#6

جرب كده ورد عليا يعنى عملت Loop كما تفضلت الاخت زهرة واوصت به فى ردها عليك (على الزر الخاص بـ نتائج الفصل الأول) وعليك التكملة.. ولكن اعتقد انه يوجد حل آخر عن طريق الاستعلامات واعتقد انه يكون افضل

db1.rar

#8

السلام عليكم

اشكر الأخ essam

والأخت زهرة

على ردهم على الوافي والكافي

شكرا جزيلا مرة ثانية

#9

بسم الله الرحمن الرحيم

تمت الإجابة على الموضوع

إدارة الفريق العربي للبرمجة

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

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

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

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

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