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

كيف يتم جمع الأرقام الموجودة في حقل ما .........؟؟؟؟؟؟؟

مغلق
بدأه salehr3 في 1 سبتمبر 2006 · 10 رد · 809 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

حبيت أستفسر كيف يتم جمع الأرقام الموجودة في حقل ما ... بحيث النتيجه تطلع لي في رسالة ( msgbox )

وشكرا لكم ...

#2

اخي الكريم هذا هو الحل

MsgBox CDbl(Text1.Text) + CDbl(Text2.Text)

تم تعديل هذه المشاركة بواسطة HnHn في 1 سبتمبر 2006 في 22:42

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#3

نضيف صندوقي نص text box ونخليهم مخفيين

ونستخدم الكود التالي

text1=0
text2=0

dim tot as Double
If rs1.RecordCount > 0 Then
rs1.MoveFirst
Do Until rs1.EOF = True
Text1 = Val(rs1![اسم الحقل])
Text2= Val(Text1) + Val(Text2)
rs1.MoveNext
Loop
tot=Val(Text2)
MsgBox "المجموع = " & tot, vbOKOnly + vbExclamation + vbDefaultButton1 + vbApplicationModal + vbMsgBoxRight + vbMsgBoxRtlReading

End If

تم تعديل هذه المشاركة بواسطة ثموري في 1 سبتمبر 2006 في 19:15

#4

هلا بك أخي hnhn بس ليس هو المطلوب .... وشكرا لك

أخي ثموري مشكور ... وتقريبا هو المطلوب .. بس لو توضح لي معنى rs1 لأن الخطأ يطلع لي في هذ الجملة

If rs1.RecordCount > 0 Then

هل تريدrs1 تعريف في الجنرال أم مذا بالضبط... وشكرا لك

#5

الكلمة rs1 هي عبارة عن متغير من نوع سجلات Record, وسيكون التعامل مع السجلات من خلال هذا المتغير . طريقة تعريفه كالتالي

أولا يجب أن تضع مرجع التعامل مع قاعدة البيانات أما ADO أو DAO

بعد ذلك يجب تعريف المتغير على أساسه كالتالي بأعلى محرر الكود كالتالي :

Dim RS1 As Recordset

والجملة التالية

rs1.RecordCount

الكالمة RecordCount هي خاصية للمتغير RS1 وتعني عدد السجلات

الجملة التالية

If rs1.RecordCount > 0 Then

تعني أذا عدد السجلات أكبر من صفر أذن

وأنت كمل ...... ;)

#6

عذرا اخ salehr3 لم انتبه للسؤال جيدا واذا لم تحل مشكلتك سأعود لأضع لك الحل

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#7

اخي الكريم ماهي الطريقة التي تستخدمها للربط مع قاعدة البيانات ؟

هل تستخدم data أم ADO أم Adodc ?

#8

الطريقة لم تنفع بسبب الخطأ في هذ الجملة If rs1.RecordCount > 0 Then بالرغم معرف rs1 في الجنرال

أخي ثموري .... طريقة الربط التي أستخدمها هي ...data

أرجو وضع لي مثال حتى أتمكن من معرفة الخطأ ...

وحتى الورة تكون واضحه لكم .. عندي حق في قاعدة البيانات بإسم numb وهذا الحقل فيه سجلات تقريا 100 وكلها أرقام .. أريد لم أضغط على زر الجمع يعطي جمع جميع السجلات ... ويطلع الجمع داخل رسالة msgbox

#9

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

أخى الكريم جرب هذا الكود ربما يكون هو المطلوب

Select Sum(NumB) From Table

هذه هى جمله الأستعلام التى سوف نستخدمها حيث ان عوضت عن أسم الجدول بـ Table

وبما أنك تستخدم DataControl سوف تكتب الكود بهذا الشكل

Data1.RecordSource = "Select Sum(NumB) As SumX From Table"
Data1.Refresh
Msgbox Data1.RecordSet("SumX")

أرجو ان يكون هذا هو المطلوب

Never Give Up You Are Programmer

Being Genius Is The Step Before Madness

Artificial Intelligence Is No Match For Natural Stupidity

#10

جرب هذا سوف يقوم باللازم إن شاء الله :

Text1 = 0
Text2 = 0

Dim tot As Double
If Data1.Recordset.RecordCount > 0 Then
Data1.Recordset.MoveFirst
Do Until Data1.Recordset.EOF = True
Text1 = Val(Data1.Recordset![numb])
Text2 = Val(Text1) + Val(Text2)
Data1.Recordset.MoveNext
Loop
tot = Val(Text2)
MsgBox "المجموع = " & tot, vbOKOnly + vbInformation + vbDefaultButton1 + vbApplicationModal + vbMsgBoxRight + vbMsgBoxRtlReading

End If

المثال السابق باعتبار ان الاداة اسمها data1

تم تعديل هذه المشاركة بواسطة ثموري في 2 سبتمبر 2006 في 19:44

#11

هلا أخي GENIUS-IT قد عملت كما قلت بس يطلع لي الخطأ في Data1.Refresh بس لو وضحت لي هل أعمل في الجنرال جملة الاستعلام ... ؟؟؟؟ وشكرا لك

أما بالنسبة للكود الذي وضعه أخي ثموري الحمد لله نجح 100 % وكان هو المطلوب ... شكرا لك أخي ثمورى

تم تعديل هذه المشاركة بواسطة salehr3 في 2 سبتمبر 2006 في 21:03

هذا الموضوع مغلق.

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