اذهب الي المحتوي
أوفيسنا

نجوم المشاركات

  1. متقاعد

    متقاعد

    الخبراء


    • نقاط

      15

    • Posts

      583


  2. kanory

    kanory

    الخبراء


    • نقاط

      8

    • Posts

      2,256


  3. أبو امين

    أبو امين

    03 عضو مميز


    • نقاط

      6

    • Posts

      319


  4. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      5

    • Posts

      6,818


Popular Content

Showing content with the highest reputation on 24 يول, 2022 in all areas

  1. وهذه بنفس طريقة السابقة بعد التعديل .... اختر احدى الطريقتين ...... Me.price = DLookup("[price]", "[tb_items]", "[vendor] Like '" & [Forms]![fr_po]![vendor] & "' And [item] Like '" & [Forms]![fr_po]![نموذج فرعي tb_purchase_order].[Form]![item].Column(0) & "' ") Me.unit = DLookup("[unit]", "[tb_items]", "[vendor] Like '" & [Forms]![fr_po]![vendor] & "' And [item] Like '" & [Forms]![fr_po]![نموذج فرعي tb_purchase_order].[Form]![item].Column(0) & "' ")
    4 points
  2. مع ان الموضوع قديم المشكلة التي كانت تواجه الاستاذ العربي انه سخ الكود مباشرة من الاستعلام الى زر الامر فاصبح الكود ⬇️ والحقيقة انه بهذا الشكل لن يعمل DoCmd.RunSQL "INSERT INTO tabl2 ( id, INAME, sal_price, Qty )" SELECT tabl1.id, tabl1.INAME, tabl1.sal_price, tabl1.Qty FROM tabl1 WHERE (((tabl1.id)=1)); الان نعدل الكود من خلال تقسيمة بشكل صحيح وسوف يعمل باذن الله ⬇️ DoCmd.RunSQL "INSERT INTO tabl2 ( id, INAME, sal_price, Qty )" & _ "SELECT tabl1.id, tabl1.INAME, tabl1.sal_price, tabl1.Qty FROM tabl1 " & _ "WHERE (((tabl1.id)=1));" اذن الامر صحيح ولكن المشكلة كان في تقسيم الكود الى اسطر الملف مرفق برنامج مطعم - Copy.accdb
    3 points
  3. طيب استبدل هذا الكود الموجود في مربع التحرير السرد item في حدث بعد التحديث .... On Error Resume Next Me.unit = DLookup("[unit]", "tb_items", "item='" & Me.item & "'") Me.price = DLookup("[price]", "tb_items", "item='" & Me.item & "'") بهذا الكود ........ Me.unit = [Forms]![fr_po]![نموذج فرعي tb_purchase_order].[Form]![item].Column(1) Me.price = [Forms]![fr_po]![نموذج فرعي tb_purchase_order].[Form]![item].Column(2)
    3 points
  4. الأسس العلمية لقواعد البيانات بواسطة : InternetMaster من لم يقرا هذا الكتاب بتمعن و يطبق ما فيه ينسى شيء اسمه اكسيس ++++++++++++++++++++++++++++++ الكتاب : يمكنك تحميله من المرفقات او قرائته مباشرة من المنتدى +++++++ مختلفة تستخدم أدوات قواعد البيانات الأسس العلمية لقواعد البيانات.docx
    2 points
  5. بارك الله فيك اخونا العزيز عمار الاصل في قواعد البيانات انه يحضر اي يمنع حذف اي بيانات تم ادخالها بتاتا ، ويتغاضى عن حذف سجل تم ادخاله بالخطأ في وقته اما مسألة الإلحاق والحذف .. فلا ينصح به ما عرضته في طريقة الحل الثانية هو الصحيح وهو المتبع في البرامج الرصينة ، وهو ما اشار اليه اخوانك
    2 points
  6. جميع ما تحتاجه موجود في اجابة @Eng.Qassim اجابة و اقتراح من سطر واحد تغنييك عن تكرار الجداول عديمة الفائدة بإختصار قم بإضافة عمود جديد لتحديد حالة الطالب ( مستمر - منقطع - مفصول - موقوف - ........... الخ ) تعلم انشاء مثل هذه الاستعلامات بطريقة احترافية تسهل عليك العمل دوماً جرب استخدم الكود التالي في عمليات ( الإضافة - التحديث - الحذف - الاستعلام ) لإضافة بيانات جديدة للجدول استخدم الكود التالي On Error GoTo errorhandle Dim rs As DAO.Recordset Set rs = CurrentDb.OpenRecordset("ضع هنا اسم الجدول") rs.AddNew rs.Fields("اسم العمود 1").Value = "القيمة1" rs.Fields("اسم العمود 2").Value = "القيمة2" rs.Fields("اسم العمود 3").Value = "القيمة3" rs.Update MsgBox "تم اضافة البيانات بنجاح", vbInformation + vbMsgBoxRight, "تأكيد" errorhandleexit: Exit Function errorhandle: MsgBox Err.Description Resume errorhandleexit و لتحديث سجل محدد استخدم الكود التالي On Error GoTo errorhandle Dim rs As DAO.Recordset, SerTb As String, SetCoulmin As String, SetValue As String SerTb = "ضع هنا اسم الجدول" SetCoulmin = "اسم العمود في الجدول الذي يحتوي على المفتاح الرئيسي" SetValue = "حقل العيار الذي يحتوي على المفتاح الرئيسي في النموذج" Set rs = CurrentDb.OpenRecordset("SELECT * FROM " & SerTb & " where [" & SetCoulmin & "] Like '" & SetValue & "'") rs.Edit rs.Fields("اسم العمود 1").Value = "القيمة1" rs.Fields("اسم العمود 2").Value = "القيمة2" rs.Fields("اسم العمود 3").Value = "القيمة3" rs.Update MsgBox "تم تحديث البيانات بنجاح", vbInformation + vbMsgBoxRight, "تأكيد" errorhandleexit: Exit Function errorhandle: MsgBox Err.Description Resume errorhandleexit و لحذف حقل استخدم الكود التالي On Error GoTo errorhandle Dim rs As DAO.Recordset, SerTb As String, SetCoulmin As String, SetValue As String SerTb = "ضع هنا اسم الجدول" SetCoulmin = "اسم العمود في الجدول الذي يحتوي على المفتاح الرئيسي" SetValue = "حقل العيار الذي يحتوي على المفتاح الرئيسي في النموذج" Set rs = CurrentDb.OpenRecordset("SELECT * FROM " & SerTb & " where [" & SetCoulmin & "] Like '" & SetValue & "'") rs.Delete MsgBox "تم حذف السجل بنجاح", vbInformation + vbMsgBoxRight, "تأكيد" errorhandleexit: Exit Sub errorhandle: MsgBox Err.Description Resume errorhandleexit
    2 points
  7. المعلومات جميلة ..واظن اني اطلعت على بعضه يوما .. كنت اتمنى على الاخ عمار ان يختصر كثيرا بالموضوع ...اقصد ان يركز على المواضيع المهمة ويمسح بقية الكلام بعد اذن صاحبها طبعا
    2 points
  8. نعم اتفق هذة الطريقة هي الافضل وكنا نستخدمها حتى في البرامج الكبيرة لانه من غير المجدي ان يكون لدينا اكثر من جدول للطلاب من وجهة نظر خاصة ليس من المجدي ان تتكر الحقول في اكثر من جدول الا ما يتعلق بحقول العلاقات وهذا التكرار يحكمة نوع العلاقة تحياتي
    2 points
  9. ليس الامر كذلك وانما المشكلة في الاحكام القطعية من لم يقرا الكتاب بتمعن فلينسى اكسس وعلى كل حال قلت في ردي السابق اخيرا انا لست عبقري ولا عالم ولم ادعي ذلك. انا عضو في الموقع اشارك بما لدي واخطي واصيب ومن تجارب مريرة سابقة اشير في كل مداخلة قد تحتمل التأويل الى ان هذا رأي شخصي تحياتي
    2 points
  10. أنا أستخدم هذا الكود البسيط (لتفعيل/إلغاء تفعيل) الشفت وشغال معي بدون إشكال 🙂 : إلغاء أو تعطيل زر الشفت : Private Sub ShiftOff() On Error GoTo err CurrentDb.Properties("allowbypasskey") = False Exit Sub err: CurrentDb.Properties.Append CurrentDb.CreateProperty("allowbypasskey", 1, False) End Sub السماح بزر الشفت Private Sub ShiftOn() On Error GoTo err CurrentDb.Properties("allowbypasskey") = True Exit Sub err: CurrentDb.Properties.Append CurrentDb.CreateProperty("allowbypasskey", 1, True) End Sub
    2 points
  11. اولا ::: هل لك اخ اسمه علي انا لم احمل ملفك لكن اعتقد تحتاج هذا ...
    2 points
  12. ياعبد اللطيف جرب تحديد عدد الاشهر تجد ان الكود يزيد شهر مثلا عدد الدفعات 12 تجد انها 13 لذا عدل السطر ⬇️ For i = 0 To CountAmunt الى ⬇️ For i = 0 To CountAmunt - 1 انظر للتعديل في مشاركتي السابقة دائما اذا بدانا بصفر لابد ان ننقص واحد من 1 الى 10 = 10 من 0 الى 10 = 11 تحياتي
    2 points
  13. مشاركة رائعة اخي د.حسين لدي ملاحظة صغيرة عند تنفيذ الكود في حقل بداية اول دفعه يزيد شهرين على التاريخ المحدد والسبب في الاتي For i = 1 To CountAmunt اي ان الحلقة تبدأ من رقم 1 الى اخر عدد في حقل مجموع الدفعات ثم في حقل التاريخ وضعت الامر rs.Fields(2).Value = DateAdd("m", i + 1, SetStartDate) اي ان الزيادة تكون برقم واحد + 1 على التاريخ فاذا كان تاريخ اول دفعة محدد في 25-07-2022 سيكون التاريخ 25-09-2022 انظر الصور المرفقة لذا يمكن التغلب على المشكلة بتعديل بداية الحلقة لتكون من رقم 0 For i = 0 To CountAmunt - 1 وفي حقل التاريخ rs.Fields(2).Value = DateAdd("m", i, SetStartDate) وايضا يمكن ان ندع بداية الحلقة كما هي For i = 1 To CountAmunt والتاريخ يكون rs.Fields(2).Value = DateAdd("m", i - 1, SetStartDate) تحياتي وتقديري واعتذر مقدما عن اي ازعاج
    2 points
  14. السلام عليكم .. لابد من التحية عند بدء أى مشاركة ,,, أقدم ملف اكسل يقوم بعرض صفحة جاهزة للطباعة فيها نتيجة العام الهجري مقابل الميلادي، والميلادي مقابل الهجري مع تحديد ايام العطلات الرسمية تــــم رفع الملف بدون ضغط وبدون حماية لإكتمال الإستفادة للجميع التقويم المفتوح 1901 - 3000 اصدار 11.xlsx
    1 point
  15. بالمناسبة فى الحل التانى انت اشرت الى IDmvmnt Mvmnt 1 انقطاع 2 مباشر يعنى سوف تقوم باستخدام حقول رقمية واخرى نصية مما يستوجب مستقبلا الربط بينهما بالاستعلامات او العلاقات او مجال الدوال ليش تصعب السهل وفى مرفق نوع الحقل رقم Long وليه تحجز 4 Byte بحالهم علشان الارقان 1 , 2 , 3 لما ممكن تستخدم 2 Byte بس لو كان الحقل Integer , Boolean انصحك راجع هذا الدرس
    1 point
  16. اسال عن التعقيدات تجد الشرح ومنه تتعلم بمرور الوقت وهذه كانت اولى خطواتى هنا ولازلت ان تعثرت فقط نصيحة لا تضع اسالة نظرية ارفق قاعدة بعدد قليل من البيانات ودع عالم الرياضيات فى مخيلتك دائما عند التصميم والتفكير الجواب يأتى بناء على معطى , مجهول , ثابت وتذكر جيدا هذه كلمات من ذهب ضعها نصب عينيك دائما وابدا
    1 point
  17. طيب وليه كل ده اضف الحقول الاتية فى الجدول الرئيسي منقطع - مفصول - موقوف على ان تكون من النوع Yes/No منقطع = yes مفصول = yes موقوف = yes وسوى استعلام ومرر اليه القيمى المعلمه ليقوم بعمل الفلتر تبعا للحالة الممرة او الابسط سوى عدد استعلامات تبعا لعدد الحالات وفى المعيار اختر حقل الفتر yes تبعا لكل حالة الموضوع ابسط من البساطة
    1 point
  18. انا لا ادرى عن العام الماضى ولكن انا كتبت رأى من اراد ان يأخذ به فيا أهلا وسهلا ومن لم يرد يا ميت مليون اهلا وسهلا السعيد من يتعظ بغيره والشقى من يتعظ بنفسـه عن نفسي اركز دائما وابدا فى النصائح التى تقدم سواء كان من اساتذتى الكرام العظماء او من احد طلاب العلم
    1 point
  19. احسنت يا ابا جودي والحقيقة اني كتبت رد اشرت فيه الى مثل ذلك وامور اخرى ولكن اثرت عدم نشره حتى لا يفهم الامر بشكل اخر ويكفي ماحصل العام الماضي تحياتي لك ولكل من شارك ولنا لقاء في موضوع اخر قالت العرب يكفي من الزاد ما بلغك المحل
    1 point
  20. القارئ كالحالب والسامع كالشارب وانا افضل الشرب اسهل واسرع وبدون عناء للعلم انا مجرد هاو لست مبرمجا فى الاساس ولا هذا مجال عملى اطلاقا ولكن تعملت ولازلت اتعلم من التحليل للامثلة العملية وهذا ما افضله واحبذه فتحليل النظم يزيد الخبرة ويوسع الافاق وخاصة بعد التحليل والفهم عندما تحاول ان تضع افكار اخرى يزيدك هذا افكار جديدة وتصورات مختلفة
    1 point
  21. تمام عليك يعمل بشكل صحيح السؤال هل نستطيع ان نلحق سجلات ونحذف سجلات ونحدث سجلات بدون بدون انشاء استعلام وبدون استخدام جملة sql الحقيقة نعم عن طريق التعامل مع مصدر السجلات وتوجد العديد من الامثلة بالموقع ولكن اذا كان هناك اكثر من طريقة للحل وهذه الطرق جميعها تؤدي المطلوب فان الحل الاسهل هو الحل الافضل "مبدأ اوكام" تحياتي
    1 point
  22. من الافضل كلما صارت اشكالية او تساؤل على اشكال معين و توصل صاحبه الى حل ينشر الحل ليستفيد منه البقية لقد قمت ايضا بانشاء استعلام بنفس الطريقة وهو موجود بالمرفق لتعطينا رايك لكن المشكل اننا نريد نقل بيانات معينة من الجدول الرئيسي الى الجدول الفرعي انشاء استعلام الحاقي و نقل البيانات من جدول الى جدول.accdb
    1 point
  23. احيانا نريد القيام بنسخ لبعض الجداول او الاستعلامات او التقارير داخل قاعدة البيانات للتغير في معطياتها او اصلاحها او ما شابه : الحل موجود : دون القيام بنسخ القاعدة كاملة للعمل عليها و تجربتها بل يمكنك القيام ب\لك و انت داخل قاعدة البيانات نفسها لكم المثال في المرفق امثلتنا و اسئلتنا بسيطة للغاية و دون مركبات او نقص لاننا نتعلم و نحن في خطواتنا الاولى في مجال البرمجة في الاكساس لذلك دوما نسعى للبحث عن امثلة بسيطة يستطيع المبتدئ فهمها و استيعابها دون تعقيدات نحن لسنا علماء و لكن نسعى للتعلم و تحسين المستوى نسخ جدول استعلام و تقرير ولصقه بالكود داخل قاعدة البيانات.mdb
    1 point
  24. في الحالتين انت تحتاج الى حقل حالة التلميذ..يتم تمييز الطالب المنقطع عن غيره انا ارى ان الطريقتين طريقة واحدة تحياتي
    1 point
  25. بطبيعة الحال هو منقول و الدرس موجه للمبتدئين فهو خزينة لمن يريد متابعته و تطبيقه : اما عن العباقرة و العلماء الكبار فهو كما قلت مجرد كلمات مبعثرة و غير مجدية على كل شكرا لمرورك
    1 point
  26. مبالغة كبيرة وحكم قطعي بدون مستند على الرغم من الموضوع طويل جدا وواضح انه منقول مع ذلك حاولت ان اكمل ولكن كاتب الموضوع يقفز من فكرة لاخرى فجعله اقرب مايكون لاحلام العصر رأي شخصي غير ملزم ولكن البداية غير مشجعة قالت العرب كنت مثل الكتاب أخفاه طي ... فاستدلوا عليه بالعنوان تحياتي وتقديري لاخي العزيز derbali
    1 point
  27. اشكرك معلم @مبرمج سابق بعد التجربة طلع في شهر زيادة تم التعديل وقمت بانقاص 1 هيك الشغل تمام
    1 point
  28. الحين كأني فهمت أن المشكلة تحصل في نماذج إدخال (تسجيل) البيانات .. بينما في نماذج عرض البيانات الأمور أسهل ، بمعنى يمكن جعلها نماذج مرتبطة .. ( صححوا لي المعلومة 🙂 ) مع العلم أن لدي برامج تعمل على الشبكة زي الطحينة على الفول 😅 ( يعني بدون مشاكل ) .
    1 point
  29. عليكم السلام ورحمة الله وبركاته بالنسبة لدالة xlookup إن شاء الله يفيدك هذا الموضوع وبالنسبة لدالة ifs فلا أعتقد أنه تم إيجاد بديل لها غير دوال if المتداخلة بالتوفيق
    1 point
  30. بعد التعديل مشكور @د.كاف يار هدية مجانية - قروض بنكية.accdb
    1 point
  31. مكتبة اكساس فريدة من نوعها تم تجميعها من العديد من المنتديات العربية و لجملة من الاسات\ة الكبار في عالم البرمجة في مجال الاكسيس اردت ان اثري بها المنتدى و افيد بها الزملاء اغلب بل معظم الملفات المرفقه مفتوحة المصدر وليست محميه كل ما هنالك انه تم اختيار نموذج معين في بدء التشغيل ليكون هو اول ما يفتح معاك اثناء تشغيل القاعده لذا اذا اردت من التخلص من ذلك ومعاينة اطار قاعدة البيانات كامله بما فيها الجداول والنماذج والاستعلامات والوحدلت النمطيه والماكرو اتبع الطريقة التالية 1. قبل فتح القاعدة المطلوبة اضغط مفتاح الشفت Shift من لوحة المفاتيح ثم قم بفتح قاعدة البيانات ولا ترفع يدك عن مفتاح الشفت حتى ترى اطار قاعدة البيانات وبها كل شيئ من جداول ونماذج واستعلامات وغيرها 2. توجه الى اشرطة الادوات في الاعلى من برنامج الاكسيس واختر ادوات ثم اختر بدء التشغيل وستجد النموذج الذي كان يظهر في البدايه اسمه موجود في الخانة العلوية اليسرى 3. قم بالضغط على السهم السفلي واختر none 4. ستجد في نفس اللوحة انه تم ازالة جميع علامة الصح منها قم بإعادة التأشير عليها كلها مرة ثانية ثم اغلق اللوحه واغلق البرنامج ثم اعد فتحه مره ثانية تجده قد عمل معك طبيعي بكل اطارات القاعدة التي تم اخفاء اجزاؤها من بدء التشغيل هاتف.rar الفنادق.rar برنامج ادراج الصور.rar اختبارات الطلاب.rar اختصارات أكسيس.rar اختيار التاريخ من التقويم.rar أكواد الاكسس.rar الرواتب 2000.rar الزكاة.rar الفرق بين تاريخين باليوم.rar الى محب الاكسس.rar برنامج أسئلة ممتاز.rar برنامج الادارة المدرسية.rar الى محب الاكسس.rar برنامج أسئلة ممتاز.rar برنامج التحفيظ.rar برنامج متابعة درجات طالبات الكلية.rar برنامج أسئلة ممتاز.rar برنامج الادارة المدرسية.rar برنامج التحفيظ.rar برنامج المدارس.rar برنامج متابعة درجات طالبات الكلية.rar تقريب المنازل العشريه.rar تنسيق شرطي.rar ديون 3.rar حساب عدد السنوات.rar شهادات تقدير.rar مركز الحرية التربويaccdb __.rar برنامج التحفيظ.rar توزيع الراتب الشهري.rar مدة البرنامج.rar مسابقات.rar
    1 point
  32. عليكم السلام ببساطة يمكن عملها يدويا نسخ مرتين ثمحذف الاسطر حسب الطلب على كل اليك Sub test() Application.ScreenUpdating = False Sheets("Table").Copy After:=Sheets(1) ActiveSheet.Name = "1-45" Rows("56:75").Delete Shift:=xlUp Sheets("Table").Copy After:=Sheets(2) ActiveSheet.Name = "1-46" Rows("11:55").Delete Shift:=xlUp Application.ScreenUpdating = False End Sub
    1 point
  33. عليكم السلام مشكلتك في الربط المباشر للجدول يجب ان يكون النموذج غير منضم للجدول المبرمج صاحب الخبرة في اكسس ، عندما يصمم المشروع المشترك على الشبكة يضع في اعتباره ان جميع النماذج التي يتم ادخال البيانات من خلالها يجب ان تكون غير منضمة للجداول .
    1 point
  34. السلام عليكم ورحمة الله وبركاته مسقط التصفح : هو برنامج لقراءة صفحة الانترنت ، واستخراج اسماء الحقول ، لإرسال البيانات اليها من برنامج الاكسس ، او استيراد البيانات منها الى الاكسس وبما ان برمجة صفحات الانترنت تختلف من مبرمج الى آخر ، فبرنامجنا لن يشتغل على جميع الصفحات / المواقع ، وبالتجربة فقط نستطيع معرفة الصفحات التي يشتغل عليها البرنامج طريقة العمل: النموذج frm_browse يحتوي على (1) كائن Microsoft Web Browser (والذي لا يحتوي على جميع مكونات البرنامج الاصل Internet Explorer ، ولكنه يفي بالغرض) ، ندخل اسم الموقع في (2) حقل التحرير والسرد url_Address ، ثم نضغط على (3) الزر Go ، والذي سيفتح الموقع في النموذج ، وسيتم حفظ عنوان الصفحة ، واعطائة رقم مسلسل في الجدول tbl_url_address ، الزر (4) "احفظ csv" سيقرأ كائنات الموقع ، ويحفظها في ملف بصيغة csv (اللي ينفتح بالاكسل) ، ثم يفتح الملف ، وفيه 3 طرق لإرسال معلومات الى اي حقل تريد (يعني يعطيك الكود جاهز لكل حقل) ، والافضل استعمال الكود الذي في العمود "Usage2" ، حيث ليست جميع الحقول لها اسماء (للأسف في بعض المواقع) ، الزر (5) "احفظ في الجدول" ، حيث سيحفظ كائنات الموقع في جدول tbl_Send_Get في البرنامج ، والاصعب كان استخراج بيانات حقول التحرير والسرد من الصفحة ، والتي يتم حفظها في الجدول tbl_Options ، ولما يستخلص البرنامج جميع حقول الصفحة ، سيفتح النموذج frm_Send_Get ، الزر (6) "تجربة ارسال ، استيراد بيانات لهذا الموقع" يفتح نفس النموذج frm_Send_Get وبه كائنات الموقع واسماء الحقول (حسب اسمها في البرنامج وليس حسب ظهورها على الموقع ، فالموضوعين غير مرتبطين للأسف في برمجة الموقع) ، هنا نرى الحقول التي استطاع البرنامج التعامل معها ، (8) رقمها المتسلسل في الصفحة (والتي سنتعامل معها برمجيا لاحقا) ، (9) نوع الحقل والذي قد يختلف من صفحة الى اخرى ، (10) اسم الحقل في الصفحة (والتي سنتعامل معها برمجيا لاحقا) ، (يجب ادخال اي اسم في الحقول الفارغة) واذا كان الحقل عبارة عن مربع تحرير وسرد ، وللحصول على قيمه ، انقر على الاسم مرتين ، فينبثق النموذج frm_Options بالاختيارات (تابع الشرح لاحقا) ، هنا نستطيع تجربة اذا كان بإمكاننا ارسال/استرجاع بيانات الى/من الموقع ، فتختار اي حقل تريد التجربة عليه ، وتكتب المعلومة التي تريد ارسالها في الحقل (11) Send_Data وبالنقر المزدوج على المعلومة ، وسترى انه تم ادخالها في الحقل في صفحة الموقع الموقع ، ويمكن التأكد كذلك من امكانية قراءة معلومة الحقل بالنقر المزدوج على الحقل (14) Get_Data ، والمهم في هذه التجارب هو معرفة صيغة قبول الحقل للمعلومة ، بالنسبة لحقول التحرير والسرد وكما اشرت سابقا ، فالموضع يختلف قليلا ، لأنه مثل الاكسس ، فالمعلومة التي تراها في الصفحة في اختيار المعلومة من هذا الحقل ، ليس معناه انها نفس القيمة التي تُحفظ في الجدول ، لذلك يجب عليك النقر المزدوج على الحقل ref_Name ، فيعطيك قائمة الاختيار من النموذج frm_Options ، وبالنقر المزدوج على الحقل Opt_Value ستنتقل المعلومة الى الحقل في Send_Data النموذج frm_Send_Get ، والتي يمكن بالنقر المزدوج عليها ان ترسل المعلومة الى الحقل في الموقع (وهنا قد لا ترى التغير على الحقل في الموقع ، ولكن عندما تنقر عليه لتختار ، ستجد ان الاختيار قد تم حسب رغبتك) ، (12) يجب اختيار اي من الحقول التي تريد ان تستعملها من الموقع ، (13) وهنا تختار تسلسل الحقول التي تريد ارسال البيانات الى صفحة الموقع ، يعني تختار زر الارسال بعد اختيارك لبقية الحقول ، والحقول التي لا يهمك ترتيبها ، فدعها فارغة ، (12) و (13) هما اساس الخطوة التالية ، الى هنا وينتهي العمل مع صفحة الموقع ، والتي نختصرها: ادخل عنوان الصفحة (2) ، اضغط على (5) "احفظ في الجدول" ، جرب اذا الحقول تعمل ، ثم (12) تختار الحقول التي تريد التعامل معها ، و (13) ترتيبها ، الزر (7) "عمل نموذج ارسال ، استراد بيانات لهذا الموقع" ، وسيفتح النموذج frm_Make_Form للصفحة التي انت عليها الآن ، من هنا سيقوم البرنامج بعمل: عمل قاعدة بيانات جديدة (برنامج اكسس) خارجية متكاملة بالاسم والمسار الذي اخترته في (15) ، بالجداول والنماذج وازرار النماذج والاحداث التي على هذه الازرار ، لصفحة الموقع التي اخترتها ، للإرسال والاستيراد ، واذا هذا البرنامج تم عمله سابقا (يعني عندك برنامجك الخاص واسمه ومساره في (15)) ، فسيقوم البرنامج بإضافة الجداول والنماذج وازرار النماذج والاحداث التي على هذه الازرار ، لصفحة الموقع التي اخترتها ، للإرسال والاستيراد ، نختار اين نريد ان نعمل الجداول والنماذج وازرار النماذج والاحداث التي على هذه الازرار ، لصفحة الموقع التي اخترتها ، للإرسال والاستيراد ، الزر (16) يقوم بكل هذا العمل ، قاعدة البيانات / البرنامج الخارجي: افتح النموذج frm_web_Sites ، فيعطيك اسماء الصفحات التي قمت بعملها في (16) ، وهذا نموذج التعامل مع صفحة الموقع ، وجميع الحقول التي اخترتها في (12) موجودة هنا ، وطريقة استخدامه: قم بتعبئة البيانات التي تريد ارسالها للموقع ، واذا كان عندك زر ارسال فيجب عمل صح عليه لإستعماله ، قم بفتح المتصفح بالضغط على الزر "Open Browser" ، والذي سيفتح المتصفح Internet Explorer خارجي ، ولا علاقة لك به ، فالكود سيتعامل معه اضغط على الزر "Send Data" ، وستكون البيانات قد تم تصديرها من نموذجك ودخلت في صفحة الموقع ، او اضغط على الزر "Get Data" ، وستكون البيانات قد تم استيرادها من صفحة الموقع الى نموذجك ، وهذا جزء من الكود الموجود في النموذج ، وسترى ان تسلسل ترتيب ارسال البيانات هو حسب الاختيار في (13) ، وغالبا (99% من الوقت) لن تحتاج الى عمل تغيير في الكود: . الزر (16) فيه تُحف فنية ، فلا تتردد من الدخول في الكود والغوص فيه والخروج بلآلئ فريدة جعفر Muscat_Browsing.zip
    1 point
  35. اعجبني الموضوع و حبيت اقدر مشاركة بسيطة اذا كان تاريخ شهر القرض اكبر من الشهر الحالي و لم يتم السداد يكون باللون الأحمر اذا كان شهر السداد مساوي للشهر الحالي و لم يتم السداد يكون اللون الأصفر و في باقي الحالات يكون اللون الأبيض هدية مجانية - قروض بنكية.zip
    1 point
  36. وعليكم السلام ورحمة الله اليك هذا الكود جربه يقوم بترحيل بشروط : اولها يفحص الخلايا في العمود 17 اذا كانت متطابقة مع اي شهر (مسميات الصفحات) تانيا : يفحص كود العميل في العمود b في الداتا و العمود b في شهر (الصفحة المطابقة للشرط الاول) اذا وجد الكود يمر الى التالي وغير ذلك يرحل ملاحظة : اضف تتمة الكود حسب ما تريد ان يرحل تحياتييييييييييييييييييييييييييي Option Explicit Sub tarhil2() Dim sh As Worksheet Dim ws As Worksheet Set ws = Sheets("Accmove") Dim lr1, lr2, x Application.ScreenUpdating = False lr1 = ws.Cells(Rows.Count, 3).End(3).Row For Each sh In Sheets If sh.Name <> "Accmove" Then For x = 4 To lr1 lr2 = sh.Cells(Rows.Count, 2).End(3).Row If lr2 = 3 Then lr2 = lr2 + 1 If sh.Name = ws.Cells(x, 17).Text Then If Application.WorksheetFunction.CountIf(sh.Range("b5:b" & lr2), ws.Cells(x, 2)) > 0 Then GoTo 1 '=============== sh.Range("b" & lr2 + 1).Value = ws.Cells(x, 2) sh.Range("c" & lr2 + 1).Value = ws.Cells(x, 3) 'اضف ما تريد ان يرحل هنا كالسطرين اعلاه '=============== End If 1: Next x End If Next sh Application.ScreenUpdating = True End Sub
    1 point
  37. جرب المعادلة بهذا الشكل =SUMPRODUCT(($D$7:$D$2000=$B3)*($C$7:$C$2000)*($G$7:$G$2000=INDEX(G7:G2000,MATCH(1,(SUBTOTAL(3,OFFSET(G7:G2000,ROW(G7:G2000)-MIN(ROW(G7:G2000)),0,1)))*(G7:G2000<>""),0)))) البداية من الصف السابع في المرفق الخاص بك
    1 point
  38. جرب معادلة الصفيف التالية =SUMPRODUCT(($D$6:$D$23=$C3)*($E$6:$E$23)*($C$6:$C$23=INDEX(C6:C23,MATCH(1,(SUBTOTAL(3,OFFSET(C6:C23,ROW(C6:C23)-MIN(ROW(C6:C23)),0,1)))*(C6:C23<>""),0)))) لا تنسى أن تضغط Ctrl + Shift + Enter sum.rar
    1 point
  39. أخي الكريم يرجى تغيير اسم الظهور للغة العربية إليك الملف التالي رغم أن المطلوب غير واضح ...إذا لم يكن المطلوب ولا أظنه كذلك يرجى التوضيح مع إرفاق النتائج المتوقعة sum.rar
    1 point
  40. أستاذ حسين اعرض استعلام الالحاق فى طريقة عرض التصميم ثم من قائمة عرض اختر عرض sql ثم انسخ الكود الذى سيظهر لديك وفى زر اﻷمر ضع هذا الكود: Docmd.runsql "وبين علامتى التنصيص الصق الكود الذى قمت بنسخه منذ قليل" وإذ أردت أن لا تزعجك رسالة التأكيد فى كل مرة تضغط الزر ضع هذا الكود بعد الكود أعلاه Docmd.setwarning false جرب ولا تنسانا بدعوة فى ظهر الغيب تمنياتى بالتوفيق
    1 point
  41. وبما أن الموضوع لا زال مفتوحا أرجو أن يكون هناك كود لفعل نفس المطلوب في الملف المرفق ولكن هنا الموضوع يختلف قليلا فأنا لا أريد أن يكون الفورم في أعلى الملف وإنما أريده أن يظهر مباشرة فوق الزر الموجود في الملف أي أنه عند تغيير وتصغير أو تكبير دقة العرض فإن الفورم إما يبتعد كثيرا عن زر الماكرو الذي يشغله وإذا قمنا بتصغير الشاشة وتقليل دقة العرض يختفي الفورم كاملا ولا يظهر هل يمكن عمل كود يبقي الفورم فوق زر الماكرو دوما مهما اختلف حجم الشاشة شكرا للجميع على التعاون تغيير طول الفورم بحسب حجم دقة عرض الشاشة.rar
    1 point
  42. السلام عليكم و رحمة الله إضافة لحلول الأخوة الجميلة جزاهم الله كل خير جرب هذه المعادلة أخي =MID(A9,FIND(CHAR(34),A9)+1,LEN(A9)-7) أما إذا كنت ترغب في التخلص من الفاصلة و علامتي التنصيص و استرجاع الرقم بدونهما جرب هذه المعادلة =SUBSTITUTE(SUBSTITUTE(A9,",",""),CHAR(34),"")
    1 point
  43. السلام عليكم يمكنك استخدام الكود التالي: Private Sub Button_Click() If TextBox = "" Then MsgBox "فارغ" Else If Asc(UCase(TextBox)) >= 65 And Asc(UCase(TextBox)) <= 90 Then Range("C4") = TextBox.Value Else Range("B4") = TextBox.Value End If End If End Sub Abuzzouz.rar
    1 point
×
×
  • اضف...

Important Information