بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
3,015 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
4
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
مشاركات المكتوبه بواسطه عبد الفتاح كيرة
-
-
السلام عليكم
أحتاج لشروح وافية للاستعلامات الفرعية لمزيد من الفهم
أرجو أن تدلونى على بعض المصادر النافعة فى هذا الشأن
وجزاكم الله خيرا
-
شكرا لك أستاذنا
ماذا عن القوائم المنسدلة مثل قائمة ملف و تعديل و ...
كيف يمكن عمل قوائم تتنقل بالمستخدم بين عناصر قاعدة البيانات كالنماذج و التقارير؟ و تكون بجوار القوائم الموجودة تحت مسمى وظائف إضافية
جزيل الشكر
-
4 دقائق مضت, jjafferr said:
فهذه الدالة لا علاقة لها بطول النص في الحقل 🙂
نعم صدقت
-
أشهد أن كلام الأخ @jjafferrمضبوط 100%
تمت التجربة
بارك الله فيه و فيكم
* خاصية SelLength لمربع النص تعيد طول النص الخالى إلى صفر بعكس دالة len
- 1
-
بارك الله فيكم
- 1
-
2 دقائق مضت, jjafferr said:
len([ABC])
أعتقد تساوى صفرا أيضا
لأن دالة len تعيد رقما
-
ما قصدته هو لماذا
24 دقائق مضت, عبد الفتاح كيرة said:len([ABC] & "")
وليس
25 دقائق مضت, عبد الفتاح كيرة said:len([ABC]
فقط
-
22 دقائق مضت, jjafferr said:
وهنا توضيح للدالة بمثال :
الطريفة اللي اتبعها انا للتعامل مع الحقل ، سواء الفارغ او Null او بدون قيمة :
بدل عن if isnull([ABC]) or [ABC]="" then استعمل if len([ABC] & "") = 0 then
لدى سؤال
ما فائدة
&""
بعد اسم الحقل فى دالة len ?
-
تمام
سأكتفى بتحديث السجل فقط
مع أن ملفنا لا يزيد عن 211 سجلا
هى عدد طلاب الصف
شكرا لك أستاذ جعفر
بارك الله فيك
-
شكرا جزيلا لك لعنايتك بالرد
قررت الجمع بين
تحديث كل سجل وقت الإدخال
والتحديث الجماعى بعد الإغلاق
تفاديا لأى خطأ
ما رأيك؟
-
منذ ساعه, jjafferr said:
الطريقة الصحيحة هي تحديث جميع سجلات الجدول اول مرة بطريقتك ، ثم لاحقا تضع كود لكي يحدث السجل الذي انت عليه.
ما معنى لاحقا
تقصد عند إدخال الدرجة فى النموذج يعنى فى حدث بعد التحديث للحقل؟
منذ ساعه, jjafferr said:ليش ما تعمل استعلام تحديث ، وتضع اوامر الـ IF في وحدة نمطية ، بيكون اسرع 🙂
لماذا؟
هل هذه الطريقة معيبة أو غير مضمونة
وقد لاحظت أنها سريعة
سؤال
هل لو عملنا requery للنموذج قبل الخروج يضمن تحديث الجدول؟
منذ ساعه, jjafferr said:مكنك حذف هذين السطرين في آخر الكود :
نعم
أضفتهما لمحاولة تنشيط مصدر السجلات
نسيت أن أذكر أن مصدر السجلات ليس هو الجدول
بل استعلام قائم على الجدول
منذ ساعه, jjafferr said:انت تقوم بتحديث جميع سجلات الجدول ، كلما تغلق النموذج ، ليش !!
لأنه يتم تعديل درجات حقل واحد فى النموذج يدويا بإدخال درجة الطالب و التحديث الجمعى لجمع هذا الحقل مع حقلين آخرين بالجدول والناتجة بحقل ثالث
والحقل الرابع يوضع فيه واحد للراسب فى المادة و 0 للناجح فيها
-
السلام عليكم و رحمة الله
هذا كود يتم تنفيذه بعد إغلاق النموذج
و هو يعمل بكفاءة و الحمد لله
لكن لاحظت أن تحديث الحقول فى الجدول محل التحديث يتأخر أحيانا و يحتاج لإعادة فتح النموذج و غلقه
فما سبب ذلك و ما علاجه
ننتظر مشورات الإخوة بارك الله فيهم
الكود يجمع حقلين و الناتج بحقل ثالث
Dim rs As DAO.Recordset Dim db As DAO.Database Set db = CurrentDb Set rs = db.OpenRecordset("upD") Do While Not rs.EOF If rs.Fields(4) = -1 And rs.Fields(5) = -1 Then rs.Edit rs.Fields(6) = -1 rs.Update ElseIf rs.Fields(4) = -1 And rs.Fields(5) <> -1 Then rs.Edit rs.Fields(6) = Nz(rs.Fields(5), 0) rs.Update ElseIf rs.Fields(5) = -1 And rs.Fields(4) <> -1 Then rs.Edit rs.Fields(6) = Nz(rs.Fields(4), 0) rs.Update Else: rs.Edit rs.Fields(6) = Nz(rs.Fields(4), 0) + Nz(rs.Fields(5), 0) rs.Update End If rs.MoveNext Loop rs.MoveFirst Do While Not rs.EOF If rs.Fields(6) < 50 Then rs.Edit rs.Fields(7) = 1 rs.Update Else rs.Edit rs.Fields(7) = 0 rs.Update End If rs.MoveNext Loop rs.MoveFirst rs.MoveLast rs.Close db.Close Set rs = Nothing Set db = Nothing
جزاكم الله خيرا و نلقاكم بعد الصلاة بإذن الله
-
27 دقائق مضت, عبد الله قدور said:
RsW.MoveFirst Do Until RsW.BOF
منطقيا كيف يتوالى هذان السطران
6 دقائق مضت, jjafferr said:RsW.FirstFirst
انتبه أستاذنا
-
13 دقائق مضت, kha9009lid said:
بارك الله فيك استاذي واجدها فرصة مناسبه لشكرك على ماتقدم من دروس في قناتكم على اليوتيوب
ربنا يكرمك كلنا نتعلم من بعض
وللاستفادة لعامة الإخوة
غيرنا المتغير الذى نحفظ فيه قيمة ناتج الجمع من Integer
إلى Double
حيث يمكن وجود علامة عشرية و أرقام بعدها
- 1
-
39 دقائق مضت, kha9009lid said:
Dim myc As Double
تمام يا فندم هذا هو المطلوب
قلت أصلى العصر ثم أفتح مرفقك
وجاءنى الحل نفسه و أنا أصلى
بارك الله فيك
- 1
-
3 ساعات مضت, د.كاف يار said:
اذا ارفق قاعدة بيانات فارغة لكي يتم التعديل عليها و تضتضح الصورة اكثر
نقلت بيانات الاستعلام إلى جدول و منه إلى استعلام جديد
يعنى أن حقل mycc فى القاعدة الأصلية هو حقل محسوب
أما فى هذا المثال فمأخوذ من جدول
يعنى لا يفيد تحويل نوع الحقل إلى مزدوج
المربع بالخط الأحمر و الخلفية الصفراء يجب أن يكون نصف .5
وشكرا
-
8 ساعات مضت, رمهان said:
مرحبا اخ عبدالفتاح
هناك احتمالات والله اعلم وبالترتيب
1. يمكن ان ناتج الجمع في الكود قيمة خالية لاسباب عدة فتتحول القيمة الى صفر باستخدام nz .. هنا تاكد بعمل مسج بكس لتحديد المشكلة
2. اذا اعلاه تم التاكد بان الرسالة تعطي نص فانظر الى تنسيق مربع النص من الخصائص
او هات مرفق خفيف به المشكلة
بالتوفيق
ناتج الجمع صحيح فى القيم الكاملة مثلا 1 و 2 و 3 ...
وغيرت التنسيق إلى ثابت
سأرسل نموذجا للموضوع إن شاء الله
منذ ساعه, د.كاف يار said:قد فعلت و لا تغيير ...شكرا لك
-
ليس هناك جدول
هذا الحقل هو حقل محسوب فى استعلام
ومربعات النص غير منضمة على النموذج
جربت تغيير تنسيق مربع النص إلى ثابت و لم يتغير شىء
-
47 دقائق مضت, ابو ياسين المشولي said:
جرب هذا
او ارفع مثال مصغر
db.OpenRecordset("select nz(sum(mycc),0) from kaderc3 where kader_n ='" & i & "'" and empdepart =" & k)
ليس بهذا السطر مشكلة يا أخى فهو يعمل
لكن المشكلة أن مربع النص يلغى النصف ويظهر مكانه صفرا
-
السلام عليكم أتمنى أن تكونوا بخير
نموذج عليه مربعات نص غير منضمة
يتم تعبئتها بالكود
Set rs = db.OpenRecordset("select nz(sum(mycc),0) from kaderc3 where kader_n =" & i & " and empdepart =" & k)
مع حلقة تكرارو هو يعمل بكفاءة
إلا أنه عندما يكون الناتج نصف .5 يغيره إلى صفر
كالمؤشر عليه بالصورة مفروض تكون نصف
فما الحل
بقية الكود
Set db = CurrentDb f = 1 For k = 2 To 11 For i = 1 To 6 Set rs = db.OpenRecordset("select nz(sum(mycc),0) from kaderc3 where kader_n =" & i & " and empdepart =" & k) myc = rs.Fields(0).Value Me.Controls("a" & f) = myc f = f + 1 Next i Next k
جزيل الشكر لكم إخوتى مقدما
-
-
شكرا للجميع
ليتني أملك ردا
كنت رديت عليكم
يبدو أنها عين أصابت الملف😂😂😂😂
- 1
- 2
-
وهذا خاص بالملف هذا فقط؟
أم له علاقة بالأوفيس
باقى الملفات تفتح عادى
لو كان هذا الملف محمل من الخارج لقلت مفيرس
لكنى أنشأته بنفسى من على سطح المكتب
-
هذا من عجائب ما لاقيت من الأكسيس
لقد تم إنشاء هذا الملف على سطح المكتب
ثم تم فتحه
وكان شغال تمام
بعد ذلك حدث ما حدث
والعلم عند الله
شكرا لك
- 1
مراجع ومصادر لشرح الاستعلامات الفرعية بتوسع
في قسم الأكسيس Access
قام بنشر
جميل جدا
يسر الله الأمور
وجزاك خيرا