اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

  1. ياسر خليل أبو البراء

    ياسر خليل أبو البراء

    المشرفين السابقين


    • نقاط

      10

    • Posts

      13,165


  2. سليم حاصبيا

    سليم حاصبيا

    أوفيسنا


    • نقاط

      8

    • Posts

      8,723


  3. رمهان

    رمهان

    الخبراء


    • نقاط

      6

    • Posts

      2,390


  4. صالح حمادي

    صالح حمادي

    أوفيسنا


    • نقاط

      6

    • Posts

      1,745


Popular Content

Showing content with the highest reputation on 18 يول, 2016 in all areas

  1. أخي الكريم أبو يوسف قدم لك الأخ الكريم أبو عبد الباري حلاً جميلاً ويسيراً .. كان من الممكن أن تدرس الملف لترى كيف تم الأمر وتقوم بعكس الأمر انظر للتبويب Formulas ثم Name Manager ثم قم بتعديل النطاق المسمى eyad ليكون بالشكل التالي =ورقة1!$A$2:$A$490 أي أننا سنقوم بتسمية النطاق في الورقة 1 وليس في الورقة 2 الخطوة الثانية انسخ المعادلة التالية ، واذهب لورقة العمل رقم 2 وحدد النطاق A2:A948 وادخل على التنسيق الشرطي Conditional Formatting ثم اختر New Rule ثم اختر آخر خيار وهو Use a formula to determine which cells to format ثم قم بوضع المعادلة التالية في الحقل المخصص لذلك =VLOOKUP(VALUE(A2),VALUE(eyad),1,0) الآن انقر على كلمة Format ثم ادخل التبويب Fill واختر اللون الذي ترغبه ثم أوك ثم أوك مرة أخرى ثم قم بحذف التنسيق الشرطي الموجود في ورقة 1 .. اذهب لورقة 1 واتبع التعليمات كما في الصورة المرفقة تقبل تحياتي
    2 points
  2. السلام عليكم أخي العزيز نحن تعلمنا في هذا المنتدى أن الأمور تحل خطوة بخطوة وليس دفعة واحدة لأنه عند تنفيذ أي خطوة ربما تظهر أخطاء فينبغي حل الأخطاء أولا ثم الانتقال للخطوة الأخرى أخي السيف القاطع هذا حل لهذا المشكلة التي طلبتها : وهي ((( بالنسبة للتنبيهات / عندما يكون تاريخ اليوم ( أي تاريخ الجهاز ) اكبر من تاريخ أي من الفترات يتم كتابة إنتهى العقد ويتم بتلوين الصف من بداية العمود إلي نهاية العمود الذي به بيانات ))) جرب المرفق العقود2.rar
    2 points
  3. يمكن ان بكون الحل مرتب salim.rar
    2 points
  4. عليكم السلام اذا استخدمت جهاز البصمة المناسب يمكنك ذلك فاجهزة البصمة انواع ، منها ما تقوم بتخزين بيانات التسجيل داخلها ، وهذه لا تصلح لما تفكر به ومنها ما يسمى البيومترية وهي التي تدعم الواجهات ( انتر فيس ) والاخيرة تعمل عمل جهاز قارىء الباركود ، وهي مهيأة من المصنع لدعم المطورين وغالبا يأتي رفقها التعليمات والاكواد البرمجية اللازمة للاتصال والتعامل معها
    2 points
  5. اعرض الملف برنامج ادارة الدروس الخصوصية ارجو ان ينال على اعجابكم برنامج ادارة الدروس الخصوصية.rar صاحب الملف علاء خفاجة تمت الاضافه 18 يول, 2016 الاقسام قسم الإكسيل
    1 point
  6. السلام عليكم ورحمة الله وبركاته إخواني وأحبابي في الله مع التحديث الجديد .. للأسف لم أجد التوجيهات التي تم وضعها من قبل ، وهذه القواعد والأسس هامة جداً ليدرك الأعضاء كيفية التعامل مع المنتدى طبعاً الموضوع سيكون متجدد .. سيتم وضع القواعد مرة أخرى فالرجاء الرجاء أن تساعدوني في اتمام الأمر .. كل عضو يذكرني بتوجيه من هذه التوجيهات ليتم إرساء القواعد ، إذ أن نجاح أي مؤسسة يعتمد في المقام الأول على قواعد ومنهج ثابت للسير على دربه التوجيهات والقواعد التي يجب مراعاتها التوجيه الأول : قبل طرح موضوع جديد يتعلق بطلب محدد يرجى استخدام خاصية البحث أولاً ، فإذا لم يجد طارح الموضوع بغيته ، فعليه أن يقوم بطرح موضوع جديد ، وفي هذه الحالة على طارح الموضوع أن يعلم أن حسن السؤال شطر الإجابة ، فاللباقة واللياقة والكياسة من الصفات التي يجب أن يتحلى بها طالب العلم. التوجيه الثاني : عند طرح موضوع جديد ، يتم وضع عنوان مناسب للطلب بحيث يفهم الطلب قبل الإطلاع عليه ، وعلى طارح الموضوع أن يبتعد عن العناوين الغير مجدية مثل : ( طلب مساعدة - الرجاء المساعدة - ساعدوني من فضلكم - عاجل وهام - الحقوني - نداء للعباقرة - نداء للعمالقة - إلى آخر تلك العناوين ...) ، وأمر آخر ألا يكون العنوان على شكل سؤال أو طلب .. نبتعد عن كلمة "طلب" مثال تطبيقي : نفترض أنني أريد معادلة تجمع القيم في عمودين العنوان المناسب للطلب يكون بهذا الشكل : معادلة جمع القيم في عمودين والنتائج في عمود آخر التوجيه الثالث : أن يتم توضيح المطلوب بالموضوع بشكل يزال معه أي لبس ، وفي نفس الوقت يراعى الإجمال في الطلب ، فأقصر الخطوط هو الخط المستقيم ، بمعنى "لا إطالة مملة ولا اختصار مخل" ، أي لا يكون طرح الموضوع مختصر للغاية بل يجب أن يستوفي جميع العناصر المطلوبة ، ومن ضمنها أن يحدد طارح الموضوع هل الحل المطلوب بالمعادلات أم بالأكواد أم بكلاهما لتكون الأمور واضحة بالنسبة لمن يريد تقديم المساعدة ، وأن يقوم صاحب الموضوع بإرفاق ملف به بيانات وهمية لتوضيح طلبه وللوصول إلى حل سريع ودقيق ، وإذا صعب على طارح الموضوع شرح المطلوب يمكنه إرفاق بعض النتائج المتوقعة كي يسهل الوصول لحل. التوجيه الرابع : نلاحظ أن شكل المنتدى لا يعجب معظم الأعضاء ، فلما لا نغير بأيدينا الشكل العام للمشاركات ، فيفضل على سبيل المثال استخدام حجم خط كبير 22 على سبيل المثال وجعل الخط عريض Bold مما يجعل المشاركة واضحة ومقروءة بشكل جيد ، كما يمكن استخدام الألوان أي قم بتنسيق المشاركة بشكل جذاب يجعل القاريء لا ينفر منها. التوجيه الخامس : بعد الانتهاء من الموضوع والوصول لحل يرضي صاحب الموضوع ، يرجى أن يتم تحديد أفضل إجابة من خلال النقر على علامة الصح الموجودة بجانب كل مشاركة ، وأن يسجل صاحب الموضوع إعجابه من خلال النقر على "سجل اعجاب بهذا" كنوع من رد الجميل لمن قدم المساعدة ، ويمكن أيضاً أن يقوم بتقييم المشاركة تقييم إيجابي كنوع من التقدير ، وأن تشكر من قدم المساعدة فمن لم يشكر الناس لا يشكر الله. فيما يخص لو كان هناك أكثر من إجابة للموضوع ، يمكن لصاحب الموضوع عمل مشاركة جديدة يجمع فيها كل الحلول ويختار هذه المشاركة كأفضل إجابة التوجيه السادس : لا تكن لحوحاً ، يكفي أن أعضاء المنتدى يقدمون وقتهم و خبرتهم مقابل لا شيء وعندهم أعمال أخرى (مشاغلهم الخاصة) يقومون بها ، و إذا تأخر الرد ، فمن الممكن أن يكون أحد الأعضاء يقوم بمحاولة الإجابة ، وهذا يستغرق بعض الوقت خاصةً إذا كان الموضوع صعباً. التوجيه السابع : حمل الملف المرفق دون زركشات (ألوان و تنسيقات مختلفة) مما يزيد من حجم الملف و أحياناً تكون الألوان مقززة بشكل ينفر منها المساعد (خاصةً إذا كانت ألوان الخلايا غير متناسقة مع لون الخط) التوجيه الثامن : تأكد أن الملف المرفوع غير مصاب بفيروس و غير محمي بكلمة سر ، وإلا لن تجد المساعدة من قبل الأعضاء. التوجيه التاسع : متابعة صاحب الموضوع لموضوعه والتفاعل معه ، فلا يعقل أن يطرح أحدهم موضوع ولا يتابعه إلا بعد مرور وقت طويل ، فهذا يعد من اللامبالاة الغير مرغوب فيها ، والتي تنفر الجميع من العضو. التوجيه العاشر : عدم التسجيل في المنتدى بأكثر من حساب ، وأن يكون اسم الظهور باللغة العربية ومعبر عن الاسم الحقيقي أي (تعريب اسم العضو) ، فلا يجوز أن يكون اسم الظهور اسم واحد وفقط بل أن يكون ثنائي على الأقل أو أن يكون اسم ولقب ، ولذا يرجى عدم استخدام الأسماء المستعارة أو الأسماء باللغة الأجنبية ، فاللغة العربية هي هويتنا ولابد من الحافظ عليها. ** يتم تغيير اسم الظهور أو اسم المستخدم من خلال إعدادات الحساب ثم التبويب اسم المستخدم ، قم بتغيير الاسم ثم انقر كلمة حفظ التوجيه الحادي عشر : عدم طرح أكثر من موضوع لنفس الطلب من نفس العضو ، فهذا يعد مخالفة صريحة ، وليعلم العضو الذي يقوم بذلك أن تكرار الموضوع لن يجدي نفعاً في حالة عدم توضيحه للمطلوب. وفي حالة أن قام العضو بذلك عن طريق الخطأ يقوم العضو بالتنويه في الموضوع وطلب حذف الموضوع نظراً لتكراره. التوجيه الثاني عشر : على من يقدم المساعدة أن يكون مثالاً يحتذى به في العطاء والصبر والحلم وكرم الأخلاق وحسن الإجابة ، يجتذب بتلك الصفات عقول الآخرين وأفئدتهم التوجيه الثالث عشر : عند طرح موضوع يفضل أن يكون هناك طلب واحد فقط إذ أن الموضوع الذي تكثر فيه الطلبات ينفر الأعضاء الذين يريدون تقديم يد المساعدة ، وعلى رأي المثل (من يطارد عصفورين يفقدهما) فما بالك لو طاردت أكثر من طلبين أقصد أكثر من عصفورين ، يمكنك أن تتعامل بذكاء بأن تطرح الموضوع بطلب واحد حتى إذا تم على خير قم على الفور بطرح موضع جديد بطلب جديد وهكذا إلى أن يتم الأمر التوجيه الرابع عشر : يرجلا عدم إرسال رسائل خاصة للأعضاء لطلب المساعدة بشكل شخصي ، لأن هذا الأمر يضايق الكثير من الأعضاء ، وتأكد أن العضو إذا كان لديه معلومة أو يستطيع أن يفيد بشيء ووقته يسمح بذلك فلن يتأخر عنك ، يكفي أن تكتب كلمة "للرفع" في موضوعك ، ليشاهده أكبر عدد من الأعضاء. ** كيفية رفع الصور في المشاركات : ******************************* دمتم على طاعة الله
    1 point
  7. اسعد الله اوقاتكم بكل خير ابحث عن اسهل طرق البحث ب اكسس من ناحية الشكل والمضمون search.rar
    1 point
  8. تمام ! راح نلبي طلبك لو حنصدم في الحيط ! الان شوف القيمة في السجل الثالث =40 ! واحنا اتفقنا ان القيمة تكون الاول - الثاني ! يعني = 200-125= 75 والا ايه رايك !
    1 point
  9. من المعروف على الأكسس أنه يحتفظ بتسلسل الإدخال. فيه بعض الإخوة يعتبرونها أحد عيوب الأكسس لأنها تعيقهم في الوصول إلى الحل بعد الفرز "النتيجة لا تتغير" و منهم من يذهب إلى أنها أحد مميزاته لأنه مهما حدث عليه من تغييرات "فرز" فإنه سوف يعطيك نفس الناتج. يعني كل واحد ينظرلها من منظور. فأنا حسب حاجتي لها الآن أعتبرها أحد الميزات المساعدة. و ربما أغير رأيي إن واجهتني نفس المشكلة. و الله أعلى و أعلم
    1 point
  10. اخي محمد عندما نقول غريب فهو في صالحك اولا ! لان المسالة لابد ان تقبل منطقيا فقد يكون تصورك للحل ليس منطقي وهناك حل منطقي وفي حدود مجال البرمجة وقواعد البيانات ! وهذا خلينا نستبدل كلمة غريب ب عجيب ! لكي ينطبق المثل اذا عرف السبب بطل العجب ! فهل ممكن تقول لنا السبب في هذه العمليات ؟ لدي استنتاج ان المسالة فيها قائمة مفضلة وسعر خاص ومتغير لها ! لذلك ياليت تشرح الفكرة وكيف تريد النتائج بعيدا عن استخدام النموذج وسجلاته في الشرح فهذه طريقة تنفيذية للفكرة ولا اريدها ! اريد اساس الفكرة كان تقول لدي قائمة مواد عندما تباع مع بعض يحصل كذا وكذا ! ومثلا تقول اذا تم بيع المادة الاولى من نفس المفضلة يحصل كذا وكذا ! تحياتي
    1 point
  11. حياك الله وللامانة كان هذا مفتاح الحل ومع اني اشرت اليه في مشاركة لا اعلم مكانها بانه يجب ان لا ننظر لمكان السجلات في الجدول ! ولكن هل ممكن تكون احد وسائل الحماية استاذ جعفر ؟؟ هل وصلت لك مايدور في ذهني ؟؟ تحياتي
    1 point
  12. شكرا جزيلا أستاذ رمهان الكود يعمل بشكل جيد
    1 point
  13. بصراحة اخي محمد اقول واؤكد يعني مانلوم السحر العماني تحياتي
    1 point
  14. مرحبا استاذ صالح مشاركة مع اخوتي جرب لكي تعرف اول سجل في الجدول وكما هو بدون تاثيرات الفرز و بعد الاستيراد استخدم =DLookUp("[nom]","tbl") ولكي تعرف اول سجل بعد الفرز (الترتيب) اعمل استعلام مطبقا به الترتيب حسب الاختيار ثم احفظه وليكن باسم query1 واستخدم =DLookUp("[nom]","Queryl") هذا والله اعلم
    1 point
  15. جرب أن تقوم بإضافة شرط إذا كانت قيمة المتغير المسئول عن الحلقة التكرارية يساوي 3 ينفذ المطلوب على التكست بوكس الثالث ويضعه كقيمة وإلا يتم التعامل بشكل عادي مع بقية التكست بوكس For I = 1 To 8 If I = 3 Then O1.Cells(LI + 13, I + 1).Value = Val(Me.Controls("TextBox_" & I)): Me.Controls("TextBox_" & I).Value = "" Else O1.Cells(LI + 13, I + 1).Value = Me.Controls("TextBox_" & I): Me.Controls("TextBox_" & I).Value = "" End If Next I تقبل تحياتي
    1 point
  16. كيف تبحث عن كل الخلايا التي تحتوي على شيء معين و تستبدلها بشيء اخر موضوع ليس بالجديد لكن يمكن تنفيذه بطريقة غير الكلاسيكية (أقصد غير Find and Replace العادية) Find & replace.rar
    1 point
  17. السلام عليكم أخي صالح: عمل قواعد البيانات ، بإختصار : ادخال بيانات ، فرز وتصفية لإخراج البيانات ، فلا يوجد شئ اسمه اول سجل ولا آخر سجل ، لإستخراج سجل معين ، يجب علينا الفرز / التصفية ، الفرز يكون بقيمة حقل / حقول ، والتصفية كذلك يكون بقيمة حقل / حقول ، لهذا السبب ، وجود حقل ترقيم تلقائي AutoNumber مفهرس ، مهم لهذا السبب ، حقل الرقم التلقائي في الواقع هو مهم في سرعة الوصول الى اي سجل ، ويجب ان يكون في كل جدول ، بالاضافة الى حقل تاريخ تلقائي (القيمة الافتراضية Now ) والآن الى سؤالك على اليمين جدولك كما هو ، وعلى اليسار نسخة من الجدول ، ولكن تم حفظه بعد فرز حقل الاسم تنازليا ، الظاهر ان اكسس يحتفظ بتسلسل الادخال ، حتى ولو تمت عملية الفرز ، واللي عملته اني وضعت حقلين في النموذج باسم nom_1 و nom_11 ، استعملت الكود التالي على زر cmd_1: Private Sub cmd_1_Click() Dim rst As DAO.Recordset mySQL = "SELECT TOP 1 nom FROM tbl" Set rst = CurrentDb.OpenRecordset(mySQL) Me.nom_1 = rst!nom mySQL = "Select * FROM tbl2" rst.MoveLast: rst.MoveFirst Me.nom_11 = rst!nom rst.close : set rst = nothing End Sub الكود الاول يأخذ قيمة واحدة من الجدول الاول (والذي بدون فرز) ، بينما الكود الثاني يأخذ الجدول الثاني ، ثم يأخذ اول قيمة منه ، والنتيجة كانت "صلاح" ولكن ، الافضل دائما اضافة حقل الرقم التلقائي ، والذي تستطيع ان تعمل الفرز عن طريقه ، للوصول الى اي سجل مطلوب ، والنتيجة تكون دقيقة فعند إضافة حقل الترقيم التلقائي ، فان اكسس يعطي الرقم حسب الادخال الاصل وليس حسب فرز الجدول ، فيكون الجدولان هكذا: هذا هو الكود للحقل nom_2 في النموذج ، وهي الطريقة الصحيحة في العمل: mySQL = "Select * From tbl2 Order by Auto_ID" rst.MoveLast: rst.MoveFirst Me.nom_2 = rst!nom جعفر 410.استخراج قيمة السجل الأول.accdb.zip
    1 point
  18. لعلهم بخير إن شاء الله نحن نرى هنا فى المنتدى الوجهة المشرقة للأعضاء لكن في الواقع لهم ما يشغلهم و يغيبهم أحيانا رد الله الجميع سالمين
    1 point
  19. اشكرك أخى الكريم ياسر خليل أبو البراء على مرورك تقبل تحياتى
    1 point
  20. اخى الكريمAlsaqr مشكور على كلماتك الرقيقة الفضل كله لله واساذتنا بالمنتدى
    1 point
  21. ربما يكون المطلوب تم نغيير اسماء الصفحات الى الاجنبية لسهولة التعامل مع المعادلات (تم حماية الخلايا التي تحتوي على معادلات لعدم العبث بها عن طريق الخطأ) ديناميكي مع زيادة عدد الصفحات والبيانات (شرط تسمية الصفحة حسب الاسم month والبيانات تكون في نفس الخلايا) جرب هذا الملف الصفحة Total جدول مرتبات salimالموظف Avancer.rar
    1 point
  22. فقط احذف هذا السطر من الكود (او ضع بأوله فاصلة عليا) target_sheet.Range("c6:n50").ClearContents
    1 point
  23. وعليكم السلام أخي الكريم اطلعت على ملفك ووجدت أن ورقة الإحصائيات النهائية تشبه ورقة البيانات المسماة "أعداد أولية" .. فيمكن ببساطة الربط باستخدام علامة يساوي ثم تحدد أول خلية في الورقة "أعداد أولية" أقصد بكلامي أن تضع المعادلة التالية في الخلية E4 في ورقة الإحصائيات النهائية ='اعداد اولية'!E3 ثم تقوم بسحب المعادلة إلى أسفل وإلى اليسار .. إذا لم يكن هذا هو المقصود فيرجى إرفاق شكل النتائج المتوقعة مع مزيد من التوضيح تقبل تحياتي
    1 point
  24. بارك الله فيك أخي الكريم علاء خفاجة وجزيت خيراً تقبل تحياتي
    1 point
  25. احسنت التوضيح اخي صالح ..نحن بانتظار الحل ..
    1 point
  26. شكرا لك أخي محمد نجار على الرد. هذا الكود هو لإستخراج قيمة الحقل [Fld] من الجدول Tbl عندما تكون قيمة الحقل id=1 هذا الكود ينفع في حالات و حالات أخرى لا ينفع. يعني أنه ليس بالضرورة id=1 هو السجل الأول.
    1 point
  27. لا أفضلية هذا حسب الحاجة و حسب الغرض من البحث و حسب ما نبحث عنه هل رقم الموظف معروف للبحث عنه هل الجزء الأول أو الأوسط أو الأخير من اسمه البحث بشرط واحد كما سبق أو البحث بشرطين أو ثلاثة برنامجك و هدفه هو ما يحدد طريقة البحث الأفضل هذه إحدى طرق البحث
    1 point
  28. السلام عليكم ورحمة الله بارك الله فيك أخي ياسر وأخي أبوعيد وجزاكم الله خيراً على رحابة صدركم وعذا على ما بدر مني لعدم علمي ولكني مع ذلك أدعوه إذا كان بالامكان أن يغير توقيعه فعلى سبيل المثال لو طلب منه أخوه أو قريبه أو عزيز عليه طلباً وقال له بعد أن أعطاه ما سأله هذا البيت ماذا سيكون رده وما معنى ذلك ؟؟ أسأل الله أن يعفو عنا أجمعين والسلام عليكم ورحمة الله وبركاته
    1 point
  29. اهلا بك اخي صالح ...لا اعلم ان كنت تقصد هذا فانت استاذنا . انا اضع هذه الدالة في مربع النص DLookUp("[Fld]","Tbl","id=1)= حيث Fld هو الحقل , Tbl اسم الجدول .
    1 point
  30. وعليكم السلام ورحمة الله وبركاته أساتذتي الكرام الأفاضل : الطريقة الشائعة : استخراج أعلى 10 مجاميع (يمكن تكرار الترتيب لأكثر من طالب في جميع المراكز وليس العاشر فقط) . ولذلك نضع استعلام إنشاء جدول يرتب المجاميع تنازليا ، ويتضمن حقل ترقيم تلقائي (يأخذ التقرير أعلى عشرة مجاميع بغض النظر عن عددهم) . مثال لتوضيح الفكرة : (أو المرفق الاستعلام4 لاحتساب المكرر في المركز العاشر فقط ، أما الاستعلام 3 فيحتسب المكرر في أيّ مركز على أنه واحد) DoCmd.RunSQL "DROP TABLE top", -1 DoCmd.RunSQL "CREATE TABLE top ([tr]autoincrement , [mjmo4] Double );", -1 DoCmd.RunSQL "INSERT INTO [top] ( mjmo4 ) SELECT m4dl.m4dl FROM m4dl GROUP BY m4dl.m4dl ORDER BY m4dl.m4dl DESC; ", -1 First_Ten.zip
    1 point
  31. جعله الله فى ميزان حسناتك أخى واستاذنا أبو عبدالبارى بارك الله فيكم كل من ساهم اخى واستاذنا أبو حنين واخى ابو عبدالبارى فى حل المشكله شكراً جزيلا فعلا أخى عبدالبارى هذا ما أريد .. تسلم اناملك
    1 point
  32. تفضل أخي هذا مثال بإمكانك أن تجربه و سوف تلاحظ النتيجة. لا وجود لتلك الرسائل أبدا. اخفاء الرسائل.rar
    1 point
  33. اخى الكريمابويوسف2020 السلام عليكم جرب المرفق التالى لعلك تجد فيه طلبك abo_abary_المقارنة.rar
    1 point
  34. وعليكم السلام أخي الكريم أبو يوسف هل المطلوب تظليل الرقم في الورقة الثانية أم الورقة الأولى؟ أقصد يتم البحث عن الرقم الموجود في الورقة الأولى (ونطاق البحث يكون الأرقام في الورقة الثانية) ، وإذا وجد الرقم يتم تظليله في الورقة الثانية .. هل هذا ما تقصد ؟
    1 point
  35. جرب المعادلة التالية في الخلية D3 بعد إلغاء دمج الخلايا .. =SUMPRODUCT(($H$3:$H$17=B3)*($I$3:$I$17=C3)*($M$3:$M$17)) الحضور والانصراف والاوفر تايم.rar
    1 point
  36. تفضل الجدول: الاستعلام ، ونتيجته: . والان إضافة حقل مادة المستوى . الان اصبح الترتيب صحيحا ، ولكننا نريد العشرة الاوائل فقط: . والنتيجة: جعفر 406.First_Ten.mdb.zip
    1 point
  37. السلام عليكم أخي صالح جربت الطريقة وما نفعت ، رسالة الخطأ لازلت تظهر حياك الله أخي الشاعر جعفر
    1 point
  38. جرب تستخدم كلمة VAL قبل هذا الجزء Me.Controls("TextBox_" & I) ليصبح بهذا الشكل VAL(Me.Controls("TextBox_" & I))
    1 point
  39. يمكنك وضع الكود التالي في زر تشغيل الاستعلام: DoCmd.SetWarnings False DoCmd.OpenQuery "namequery" DoCmd.SetWarnings True بحيث namequery هو اسم الاستعلام السطر الأول سيقوم بإيقاف رسائل التحذير لجميع انواع الإستعلامات السطر الثالث سيقوم بإعادة تشغيل رسائل التحذير لجميع انواع الإستعلامات
    1 point
  40. وعليكم السلام تفضل: Private sub .... on error goto err_No_2001 ..... ..... Exit_N0_2001: exit sub err_No_2001: if err.number=2001 then Resume Exit_N0_2001 else msgbox err.number & vbcrlf & err.description endif end sub جعفر
    1 point
  41. اخى العزيز معمرالراوي كل عام وانتم بخير وجزاك الله خيرا ولك بمثل ما دعيت
    1 point
  42. السلام عليكم ورحمة الله وبركاته سنتابع اليوم بعملنا بفضل الله وكرمه 1- تم اضافة رسائل التحذير لفاتورة الادخال بنفس الطريقة السابقة المستخدمة في تعريف المادة 2- اضفت فاتورة اخراج وتعمل على نفس مبدأ فاتورة الادخال لكن الفرق بينهما هو حقل type بحيث سيتم تخزين بداخله قيمة 2 بدل من 1 ليتم التفريق بين الفاتورتين 3- هناك سؤال يطرح نفسه بما انه جداول الفواتير نفسها ونماذج الفواتير مختلفة فحتما سيتم عرض سجلات فواتير الادخال ضمن نموذج فواتير الاخراج والعكس بالعكس لكن اذا عدنا الى البرنامج سنجد ان ذلك لم يتم هناك طريقة استخدمتها لعمل ذلك اريد مشاركتم في كشف هذه الطريقة accurate 16.rar
    1 point
  43. السلام عليكم ورحمة الله وبركاته الحمد لله على عودة الموقع من جديد نكمل معكم ان شاء الله ما بدأناه فىى هذا الموضوع وهو طريقة انشاء شريط ادوات بواسطة Xml وقد تعلمنا كيفية اضافة تبويب Tab جديد وكيفية اضافة المجموعات Groups الى التبويب Tab واليوم ان شاء الله نتعلم كيفية اضافة الادوات كالازار وغيرها الى التبويب كان هذا هو الكود الذى وصلنا اليه فى نهاية الموضوع السابق <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon startFromScratch="false"> <tabs> <tab id="customTb" label="MY NEW TAB" visible="true"> <group id="dbGroup" label="’My Group"> </group> </tab> </tabs> </ribbon> </customUI> وهو يقوم بانشاء تبويب جديد واضافة مجموعة جديدة بداخله وكما لاحظنا فان جميع الوسمة متداخله ف ribbon بداخلها Tab ثم Group واخيرا بداخله الاوسمة الخاصة بالادوات عندما نقوم باضافة ادوات نعرف الاداة كما يلى <سمات الاداة معرف الاداة اسم الاداة/> اسم الاداة هو تحديد اذا كانت زر او خانة اختيار او قائمة منسدلة وغيرها ثم معرف الاداة وينقسم معرف الاداة الى قسمين اما معرف مايكروسوفت اوفيس او معرف خاص فالمعرف الخاص بالاوفيس هو الادوات الموجودة فى الاوفيس اصلا كالنسخ واللصق والمحاذاة وغيرها اما ان اردنا انشاء اداة خاصة بنا نستخدم معرف خاص نختاره كيفما نشاء ثم سمات الاداة وهى باختصار تشبه خصائص الاداة كالحجم والتسمية التوضيحية والصورة وغيرها وهذه اكثرها استخداما Enabled تستخدم لمعظم الادوات Visible اظهار او عدم اظهار ID/IDMso المعرف الخاص بالعنصر Image/ImageMso الصورة الخاصة بالعنصر InsertAfterMso لتحديد مكان العنصر بعد عنصر آخر InsertBeforeMso لتحديد مكانه قبل عنصر آخر Lable التسمية التوضيحية Size الحجم والآن بعد هذا الطلاع على طريقة تعريف الاداة بشكل عام دعونا نعرف تفاصيل اكثر بالتطبيق العملى <button idMso="Cut" label="My Cut Button"/> هذا هو كود انشاء زر قص Cut وكما قلت سابقا اسم الاداة button وبعد ذلك المعرف وهنا استخدمنا المعرف الخاص بالاوفيس Cut ونستخدم هذه الطريقة عندما نريد ادراج اى من الادوات الموجودة بالاوفيس والاكسيس ولمعرفة المعرف الخاص باى اداة مثلا التصدير لاكسيل افضل طريقة هى كما بالصورة نجد ان المعرف مكتوب بين قوسين وهو فى هذه الحالة ExportExcel ويجب الانتباه لحالة الاحرف <button idMso="ExportExcel" label="Export To Excel By XML" /> وكما قلنا سابقا ان هناك العديد من الخصائص او السمات التى نقوم بتمريرها للعنصر وجيمعها اختيارى ما عدا ال ID فاذا ادخلنا مثلا الكود بهذه الطريقة دون تحديد خاصية Size لهذا الزر نلاحظ ظهوره بالشكل الافتراضى الصغير وكذلك صورة الامر Cut الافتراضية وهو هكذا اذا اردنا ان تجعل حجمه يظهر بشكل كبير علينا ان نقوم باضافة السمة Size الى الكود ليصبح بهذا الشكل والخاصية size= اما normal كما فى الصورة السابقة او large كما فى الصورة التالية <button idMso="Cut" label="My Cut Button" Size="large" /> وكذلك الخاصية Enabled <button idMso="Cut" label="My Cut Button" Size="large" enabled="false" /> واذا اردنا تغيير خاصبة Visible اخفاءالامر cut نكتب كما يلى <button idMso="Cut" visible="false" /> اما الخاصية InsertBeforeMso و insertAfterMso فتكون كالتالى <button idMso="ExportExcel" label="Export For EXC" size="large" insertBeforeMso="Cut" /> فهذا الكود يقوم بانشاء زر التصدير لاكسيل ويضعه قبل الامر Cut الذى انشاناه سابقا وان اردنا ان يضعه بعده فنغير InsertBeforeMso الى insertAfterMso وهكذا اعتقد اننا قد انتهينا من شرح اهم الخصائص فى الازرار وكيفية استخدامها وكيفية انشاء زر يقوم بمهمة مضمنة فى الاوفيس اما بالنسبة لعمل زر يقوم بتنفيذ امر مايكرو فيكون الكود هكذا <button id="Msg" label="Hello" Size="large onAction="اسم الماكرو" /> و onAction هو عبارة عن سمة نكتب بها ما يحدث عند التفاعل مع الاداة كالضغط على الزر فى هذه الحالة ويصبح الكود النهائى حتى الآن <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon startFromScratch="false"> <tabs> <tab id="customTb" label="MY NEW TAB" visible="true"> <group id="dbGroup" label="’My Group"> <button idMso="Cut" label="Cut" size="large" /> <button idMso="ExportExcel" label="Export For EXC" size="large" insertBeforeMso="Cut" /> <button id="RunMacro" label="Open" size="large" imageMso="ViewsFormView" onAction="OpenForm"/> </group> </tab> </tabs> </ribbon> </customUI> وان شاء الله فى الدرس القادم نتحدث عن ربط الازرار بالماكرو والكود بتفصيل اكثر مرفق لكم القاعدة وبها ما شرحته Ribbon Customizations.rar
    1 point
  44. بارك الله فيك استاذ نور الدين موضوع جميل وكما قال اخينا الحلواني يحتاجه الكثير ولي استفسار حول القوائم مع العلم انني لا اهتم بها كثيرا : لقد كان في الاصدار 2003 وبعد ان تنشء شريط الادوات الخاص او القائمة الخاصة تذهب لنافذة الاوامر لاضافة اي امر وكما اشرت استاذ وليد سابقا ! وكان احد الخيارات ياتيك كلمة "نماذج" حيث يتم توسيعها واختيار النموذج وتضيفه كامر للقائمة فيتم فتح النموذج وبدون ماكرو او كود ! واتوقع انها لم تعد موجودة في 2007 وما بعد ؟! تحياتي
    1 point
  45. السلام عليكم الآن ننتقل الى كود XML وكيفية انشاءه. كود XML لتخصيص شريط ادوات يبدأ ب <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon startFromScratch="false"> <tabs> هنا نضع الكود الخاص بانشاء شريط الادوات <tabs> </ribbon> </customUI> طبعا انا هنا لن اتطرق لمفاهيم لغة XML لان هذا ليس موضوعنا كما اننى لا اعرف عنها الكثير ساشرح فقط ما نحتاجه لتخصيص شريط الادوات اولا نفتح CustomUI ونغلقه كما بالكود اعلى وبداخله نفتح Ribbon ونغلقه وننتبه لحالة الاحرف فى بداية Ribbon نكتب "StartFromScratch="false وهذه الخاصية اذا ضبطت على False تقوم بعمل الشريط بعد الاشرطة الافتراضية اما True تقوم باخفاء الاشرطة الافتراضية بعد ذلك نكتب الكود التالى <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> rRibbon startFromScratch="false"> <tabs> <tab id="customTb1" Label="MY NEW TAB" visible="true"/> </tab> </tabs> </ribbon> <CustomUI> هذا الكود يقوم باضافة tab جديد حيث customTb1 المعرف الخاص بالشريط MY NEW TAB الاسم الذى يظهر للمستخدم Visible="true" عملية اظهار الشريط الجديد ثم نقوم باضافة المجموعات الخاصة بالشريط بنفس الطريقة حيث نستبدل TAB ب Group <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon startFromScratch="false"> <tabs> <tab id="customTb1" Label="MY NEW TAB" visible="true" > <Group id="CustomGR1" Lable="My Group"> </Group> </tab> </tabs> </ribbon> </customUI> نضيف المجموعة customGR1 المعرف الخاص بالمجموعة MY Group الاسم الذى يظهر للمستخدم قوموا بتنفيذ هذه الخطوات ثم اغلاق قاعدة البيانات ثم اعادة فتحه و قوموا بالذهاب الى options واختيار Current DataBase ومن ثم فى جزء Ribbon And Tool Bar Options اختار الشريط الذى قمنا بتصميمه ان شاء الله فى المشاركة القادمة نشرح كيفية اضافة الادوات والازرار الى الشريط والمزيد من خصائصها وبعدها ان شاء الله نشرح كيفية التحكم فى وقت فتح هذه الاشرطة سواء تخصيصها لفورم معين او فتحها عند فتح البرنامج وهذه القاعدة تنفيذ لما تعلمناه وهذا الكود النهائى <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <ribbon startFromScratch="false"> <tabs> <tab id="customTb" label="MY NEW TAB" visible="true"> <group id="dbGroup" label="’My Group"> </group> </tab> </tabs> </ribbon> </customUI> Ribbon Customization Using XML.rar ملاحظات : 1- يجب الالتزام بحالة الاحرف الكبيرة والصغيرة 2- <ribbon>,<tab>,<group> هذه الاشياء تسمى فى لغة XML الاوسمة ومعظمها يفتح ثم يغلق ويفتح <الاسم> ويغلق <الاسم/> 3- لغة XML ليس لها اوسمة مخصصة شجعونى بآرائكم ومن كانت عنده زيادة او انتقاد او سؤال فلا يبخل علينا به
    1 point
  46. بعد إذن إخوتى وأساتذتى الأعزاء هناك العديد من الطرق التى يمكن أن تستحدم للبحث عن المكرر منها الطرق الأتية : 1-عن طريق ( CONDETIONALFORMATTING ) وفيها يتم التعليم على المكرر 2-أو عن طريق البحث عن جزء من الأسم وإظهار كافة الأسماء المتشابهة في هذا الجزء 3-أو عن طريق عمل قائمة يتم فيها إظهار الأسماء الفريدة دون المكرر إختبار إذا كان العمود به مكرر أم لا.rar التأكد من تواجد الأسماء_2.rar قائمة بدون تكرار.rar معادلة تلوين المكرر الذي أريدة.rar مقارنة بين عموديين وتلوين المكرر بينهما.rar
    1 point
  47. مثال علي الجمع و الجمع الشرطي و جمع المضروب ٍsum sumif sumproduct sumIF.zip
    1 point
×
×
  • اضف...

Important Information