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

كيف أنسق التواريخ الموجود بالكومبو؟

مغلق
بدأه Dena22 في 18 نوفمبر 2005 · 2 رد · 515 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي برنامج يحوي كومبو يعرض تواريخ موجودة في قاعدة بيانات آكسس

ولكن عند التشغيل يكون التنسيق (mm/dd/yyy) كيف يمكنني تغيير هذا التنسيق؟

علما بأ، كود تعبئة الكومبو هو كالتالي

If mrs.State = adStateOpen Then mrs.Close
Combo6.Clear
Set mrs = New ADODB.Recordset
sql = "select date from tb group by date"
mrs.Open sql, db, adOpenDynamic, adLockPessimistic
For i = 1 To 100000
If mrs.EOF = False Then
Combo6.AddItem mrs("date")
mrs.MoveNext
Else
Exit For
End If
Next

؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

#2

جربي

Rdate=format(mrs!date,"yyyy/mm/dd")
Combo6.AddItem Rdate

ايضا يستحسن تغيير الكود التالي

For i = 1 To 100000

إلى

for i = 0 to mrs.recordcount-1

460.gif

#3

اختي دينا للمرة الثانية اشير ايضا إلى الخطاْ الي وقعتي فيه هوا :

For i = 1 To 100000
If mrs.EOF = False Then
Combo6.AddItem mrs("date")
mrs.MoveNext
Else
Exit For
End If
Next

لماذا هذا السطر For i = 1 To 100000 :angry:

بالعقل انتي الحين تنتقلي من السجل الأول إلى الثاني فلو كان السجل هوا الرقم 100001 هل سيكون داخل الحلقة For بالطبع لا لأن نهاية ستكون كماهوا موضع عند الرقم 100000 في For

افضل شيئ في مثل هذه الحالة هو استخدام While بدل For فهي مخصصة لدورات أو لعمل Loop بدون ان نعرف متى ينتهي الشرط ونحن هنا الله اعلم كم عدد الحقول في قاعدة البيانات أذا سنستخدم بدل الكود السابق أو خليني أقول اني سوف أعدلة إلى :

Do While Not mrs.EOF  Then
    Rdate=format(mrs!date,"yyyy/mm/dd")
    Combo6.AddItem Rdate    
    mrs.MoveNext
Loop

او كما أشاراخي المتميز في مشاركته

B)

أتمنا ان لا تقعي في هذا الخطأ مرة اخرى فيكون التعديل لكي للمرة الثالثة :P

تم تعديل هذه المشاركة بواسطة فواز الشمري في 18 نوفمبر 2005 في 22:08

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

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