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

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

  1. Yasser Fathi Albanna

    Yasser Fathi Albanna

    06 عضو ماسي


    • نقاط

      6

    • Posts

      1,313


  2. ibn_egypt

    ibn_egypt

    الخبراء


    • نقاط

      6

    • Posts

      764


  3. طارق محمود

    طارق محمود

    أوفيسنا


    • نقاط

      4

    • Posts

      4,520


  4. فيصل الحربي

    فيصل الحربي

    عضوية شرفية


    • نقاط

      4

    • Posts

      109


Popular Content

Showing content with the highest reputation on 18 فبر, 2015 in all areas

  1. أحبائى وأعزائى وإخوانى أعضاء وأساتذة المنتدى العظيم الذى أكن له كل التقدير والإحترام فالفعل هذا المنتدى العظيم إستفدت منه الكثير والكثير وإلى الأن أقدم لكم اليوم كود إدراج نص متحرك داخل الإكسيل ومش عارف إن كان موجود من قبل أم لا ليستفاد الجميع يوضع الكود داخل موديول مرفق مثال Sub Tester1() Dim sp As String Dim sTxt As String Dim x As Integer, y As Integer Dim Start, delay sTxt = "مرحبا بكم فى هذا المنتدى العظيم والمفضل لدى الجميع" For y = 1 To 15 '15 Loops through the scrolling For x = 1 To 30 'Index number of times Start = Timer 'Set start to internal timer delay = Start + 0.15 'Set delay for .15 secs Do While Timer < delay 'Do the display routine [D6] = Space(x) & sTxt 'Show 1 str @ a time DoEvents 'do there things Loop 'Loop until delay is up DoEvents Start = Timer 'and reset the timer delay = Start + 0.15 'and the delay Next x 'Show the next str Next y 'Do this again - 15 [D6] = "" 'Reset End Sub Insert Moving Text.rar
    3 points
  2. إخوانى الأفاضل لا استطيع ان اعبر لكم عن مدى فرحتى وسعادتى بكلماتكم الرقيقة ومشاعركم الطيبة، جزاكم الله كل خير وخالص الشكر والتقدير لهذا الصرح العظيم وأعضائه الكرام الذين المس فيهم روح الاخوة والتعاون بشكل لم اراه من قبل .. ادام الله علينا المحبة والاخوة فإنى أحبكم جميعا في الله وما نحن الا اخوة نتشارك ونتبادل العلم فيما بيننا ويعلم الله انى استفدت من وجودى هنا بشكل اكبر بكثير من افادتى لغيري خالص تحياتي للجميع
    2 points
  3. بارك الله فيك أخي الحبيب أبو فارس على هذه اللفتة الطبية لأخونا الغالي ابن مصر جزاه الله خيراً على كل ما يقدمه من مساعدات ومن إبداعات متميزة .. وفقنا الله وإياه لما فيه الخير والمنفعة للإسلام والمسلمين ودي لأخي أحمد :fff: :fff: :fff: :fff: باقة ورود .. عارفه بيعز الورد حبتين
    2 points
  4. السلام عليكم ورحمة الله وبركاته اليكم أربعة دروس في قواعد البيانات الدرس الأول في المرفقات Ms_Access1.zip
    1 point
  5. أثناء مروري بأحد المواضيع في منتدانا الطيب ومن خلال المشاركات كان لأخي الحبيب أبو أحمد - عبدالله المجرب ، تعليق وطلب لشرح تركيب جملة SQL ، .... http://www.officena....=0 ومنها راودتني نفسي أن أجهز سلسلة لشرح ما يفتح عليّ ربي عن SQL ، وقد باشرت بالعودة لمراجعي ومواقعي المعتمدة ، وما لدي من ملاحظات و ( خرابيش ) في كشكولي ، وعقدت العزم ووجهت النية ... لوجه الله تعالى ، لا أبتغي منكم أجراً ولا (مديحاً) ، إن أجريَ إلا على الله ، وهو حسبي ، وهو المستعان . ورغم أن لغتي الإنجليزية ممتازة (أدعي) ، إلا أنني قررت الاستعانة بإبني البكر آدم في بعض الترجمات الفنية ، تخفيفاً على نفسي ، وتكثيفاً للجهد ، فأعينونا بالدعاء. راجياً من المولى عزّ وجلّ أن يعيننا على الخير ، وهو المستعان بحق وجزاؤه المرتجى ... والله من وراء القصد ... وهو حسبي ........................
    1 point
  6. بسم الله الرحمن الرحيم الحمد لله رب العالمين حمدا طيبا مباركا فيه دائما متواصلا حتى يرضى الحمد لله الذى وفقنى لإعداد هذا العمل حمدا كثيراطيبا لك يارب المَن و الفضل أن وفقتنى لمثل هذا العمل لينتفع به زملائى فى إدارة شئون الكنترول المدرسى ليكون لهم عونا فى استخراج النتيجة بدقة و يسر 0 البرنامج لجميع صفوف النقل ( الأول – الثانى – الثالث – الرابع – الخامس ) علما بأننى قد قمت بتعديلة طبقا للقرار الوزارى 230 لسنة 2010 إليكم[ الإصدار الخامس المعدل ]من برنامج الكنترول و قد راعيت إضافة نسختان للكنترول المدرسى و هما (أولا) نسخة برنامج كنترول مدرسى للمدارس الرسمية (ثانيا) نسخة برنامج كنترول مدرسى لمدارس التجريبيات و اللغات و فى الاصدار الخامس المعدل تم إضافه أوراق عمل جديدة بهذا الإصدار وهى كالأتى :- ( أولا ) شهادة تقديرات التلميذ و بها النسبة المئوية لكل مادة و كذلك ترتيب التلميذ (نصف العام و اخر العام و الدور الثانى ) ( ثانيا )الاحصاء العام للنتيجة (نصف العام و اخر العام و الدور الثانى ) لا يتم إدخال أعداد الدين المسيحى بل يتم الاحصاء كله بدون تدخل من مدخل البيانات 0 ( ثالثا ) الصفحة الرئيسية الثانية و تحتوى على :- 1- كشف مراجعة درجات الراسبين ( فصل أول + فصل ثان ) 2- كشف رصد تقديرات و النسبة المئوية للتلاميذ ( فصل أول + فصل ثان ) 3- إحصاء عام الفصول و المواد ( نجاح كل مادة على حدة و النسبة المئوية للنجاح ) 4- بيان نجاح/درجات الطالب ( فصل أول + فصل ثان ) 5- نتيجة الطلبة بالمجموع و النسبة المئوية و الترتيب ( فصل أول + فصل ثان ) 6- كشف تجميعى لدرجات ملف الإنجاز ( رابعا ) شئون الطلبة 1- سجل 5 سلوك 2- سجل إجمالى مرات التأخيرو الغياب 3- قوائم الفصول 4- إحصاء نوعيات التلاميذ ( مقيد ، مسلم ، مسيحى ، باق ) 5- الكارنية المدرسى 6- قوائم الفصول مصممة WORD 7- القرار الوزارى 219 لسنة 2009 و ذلك بالاضافة إلى جميع محتويات الاصدار الرابع و هى كالاتى:- ( أولا ) الفصل الدراسى الأول و يشتمل على 1. إدخال بيانات أساسية 2. أرقام جلوس التلاميذ 3. رصد درجات ملـف الإنجاز فصل أول 4. رصد درجات تحريرى فصل أول 5. كشـــف مناداة لجنة الامتحان 6. شيت نصف العـــــام 7. كشف رصد درجات و تقديرات نصف العام 8. شهادة تقديرات تلميذ فصل أول 9. شهادة درجات و تقديرات تلميذ فصل أول 10. إحصاء عام فصل أول 11. العشرة الأوائل فصل أول 12. نتيجة الطلبة نصف العام 13. لاصقات أرقام الجلوس ( ثانيا ) الفصل الدراسى الثانى و يشتمل على 1- رصد درجات ملـف الإنجاز فصل ثان 2- رصد درجات تحريرى فصل ثان 3- كشف الأنشطة التربوية 4- كشـــف مناداة لجنة الامتحان 5- شيت أخر العـــــام 6- كشف رصد درجات و تقديرات أخر العام 7- شهادة تقديرات تلميذ فصل ثان 8- شهادة درجات و تقديرات تلميذ فصل ثان 9- إحصاء عام فصل ثان 10- العشرة الأوائل فصل ثان 11- نتيجة الطلبة أخر العام ( ثالثا ) الدور الثانى و يشتمل على 1- إدخال بيانات أساسية 2- كشف مناداة دور ثان 3- رصد درجات الدور الثانى 4- أرقام جلوس دور ثان 5- شيت الدور الثانى 6- كشف تقديرات دور ثان 7- شهادة تقديرات دور ثان 8- إحصاء عام دور ثان ( رابعا ) التعليمات ( هامة جدا ) و يشتمل على تعليمات لكل صفحة من صفحات البرنامج و يجب إتباع التعليمات بدقة للحصول على نتائج صحيحة0 علما بأن كتابة البيانات و رصد الدرجات فى هذا الاصدار تتم فى صفحة إدخال البيانات و صفحة رصد درجات ملف الانجاز و صفحة رصد درجات تحريرى فقط و لا يتم الرصد فى الشيت الرئيسى 0 و هذا لتسهيل إدخال البيانات فى البرنامج و بعد ذلك يتم طباعة هذه الكشوف 0 و قد قمت بعمل حماية على جميع الصفحات حتى لا يستطيع أحد تغير معادلاتها عن طريق الخطأ و للحفاظ على صحة البرنامج فعند رصد الدرجات ( ملف + تحريرى ) يظهر المجموع و كذلك التقدير بدون تدخل من مدخل البيانات 0 مدة فتح البرنامج تتراوح بين ( 31 ثانية و 32 ثانية ) تقريبا برجاء تجربة برنامج الكنترول المدرسى ( الإصدار الخامس المعدل ) جيدا للإطمئنان على أنه صحيح و إرسال أى مشكلة تواجهونها على البريد الإلكترونى ashhma*live.com و ذلك للتواصل للوصول إلى أفضل شيت كنترول للمرحلة الإبتدائية 0 و برنامج الكنترول المدرسى موجود بالروابط حمل البرنامج ثم قم بفك ضغط البرنامج ثم أستخدم كلمة السر لفتح البرنامج 0 وتذكرقول المصطفى صلى الله عليةوسلم ﴿من دل على خير فله مثل أجر فاعله﴾ ولاتنسى أخى العزيز بعد تنزيل البرنامج من احد الروابط الأتية إعطاءنسخةهديةمن البرنامج إلى أقرب مدرسة لتنال الاجر إن شاء الله 0 و أنا على استعداد لاعطاء أى زميل نسخة من البرنامج إذا استطاع الوصول إلى مدرسة الخلفاء الراشدين الإبتدائية و عنوانها ( 1 ش بن تومارت غيط الصعيدى محافظة الاسكندرية ) مصمم البرنامج الأستاذ : أحمد السيد محمد معلم أول أ الرياضيات مدرسة الخلفاء الراشدين الإبتدائية محافظة الاسكندرية وفى الختام أرجو الدعاء لوالدي و أسرتى بالرحمة و المغفرة و لاتنسونا من دعائكم http://www.multiupload.com/VY70X91FBV http://www.multiupload.com/RS_VY70X91FBV http://www.multiupload.com/MU_VY70X91FBV http://www.multiupload.com/DF_VY70X91FBV http://www.multiupload.com/HF_VY70X91FBV http://www.multiupload.com/ZS_VY70X91FBV http://www.multiupload.com/UP_VY70X91FBV علما بأننى كنت حريص علىتنفيذ القرار كما جاء و لكن البرنامج أكبر من ان يستطيع فرد واحد فقط أن ينفذه ويراجعه لوحدة و شيت الصفين الثانى و الثالث للمدارس الرسمية سليم فى احتساب الأوائل لاخر العام بدون النشاطين 0 وفى الختام أرجو الدعاء لوالدي و أسرتى بالرحمة و المغفرة و لاتنسونا من دعائكم منقول للفائده الكبرى
    1 point
  7. بسم الله الرحمن الرحيم فكرت كثيرا كيف يمكنني ان اشكر هذا المنتدى الرائع بمشرفيه واعضائه وما السبيل لاعبر عن شكري وامتناني للمهندس احمد (ابن مصر) الذي ساعدني وساعد الكثير في هذا المنتدى دون تردد وعن علم ومعرفة وابداع لما يقدمه فما وجدت سوى ان اكتب له هنا كلمة شكر من القلب حيث ان الرسول صلى الله عليه وسلم يقول «لَا يَشْكُرُ اللَّهَ مَنْ لَا يَشْكُرُ النَّاسَ» شكرا استاذ احمد وبارك الله بعلمك وعملك ادعوا الله ان يجعل ما تقدمه من خير للجميع تطبيق للحديث النبوي الشريف : "إذا مات ابن آدم انقطع عمله إلا من ثلاث صدقة جارية أو علم ينتفع به أو ولد صالح يدعو له"
    1 point
  8. جزاك الله كل خير وامدك بالعافيه ورزقك الذريه الصالحه
    1 point
  9. اخى الحبيب ياسر أنا من أشد المعجبين والمتابعين لمواضيعك كلها بارك الله فيك وأطال الله عمرك وزادك الله من العلم الكثير والكثير وجعلت زخرا لهذا المنتدى العظيم سر على بركة الله
    1 point
  10. بالفعل أخونا الفاضل والحبيب الغالى / بن مصر يستحق منا كل تقدير وإحترام فهو لا يبخل بعلمه على أحد بارك الله فيه وجزاه الله عنا كل خير مع الشكر الوافر لكل أعضاء المنتدى الأفاضل على كل ما يقدمونه من علم ينتفع به كل أعضاء المنتدى
    1 point
  11. ابن مصر..أستاذي القدير..بارك الله فيه و في أمثاله
    1 point
  12. اخونا الحبيب نيابة عن جميع اعضاء منتدانا الحبيب ....نشكرك اخونا وحبيبنا فى الله ... ابن مصر هو بحق استاذ كبير .. وخبير بارع متمكن من ادواته ...وكريم فى عطائه لا يبخل بعلمه ابدا .... فهو بحق اهل للشكر والامتنان جزاه الله خيرا
    1 point
  13. الشكر لكم جميعا ماشاء الله تنشرون العلم والمعرفة دون مقابل اسأل الله ان يجزيكم الخير الكثير في الدنيا والاخرة ولك سيارة ورد
    1 point
  14. منتدى أوفيسنا الحبيب إضغط على Officena Officene.rar
    1 point
  15. بارك الله فيك عمل رائع وبديع
    1 point
  16. اخى الفاضل أ.أحمد مرفق الملف بعد الإنتهاء ولله الحمد من كافة التعديلات التى طلبتها .. تم اضافة زر حفظ لحفظ صفحة الاختبار في مجلد ثابت على القرص C وكذلك زر استدعاء اى اختبار باى وقت .. وزر الطباعة بالإعدادات التى تستطيع التغيير فيها اما بطباعة الاختبار في صفحة او اثنين وتحديد عدد النسخ خالص تحياتي Exam-Quran-Updated.rar
    1 point
  17. اخى الفاضل جرب الملف المرفق .. سيتم حفظ الملف على سطح المكتب بالإسم الموجود في الخلية J1 تحياتي ExportTOtxt.rar
    1 point
  18. أعذرني لم أفهم المطلوب بشكل جيد ممكن توضح أكثر والعفو
    1 point
  19. اخى الفاضل تفضل الملف المرفق لعل به طلبك تحياتي Label-Move.rar
    1 point
  20. اخى الفاضل تفضل الملف المرفق ... لربما به طلبك تحياتى تعديل كود نص متحرك.rar
    1 point
  21. السلام عليكم تفضل اخي الكريم ولكن لي سؤال لو سمحت ماهي فائدة جمع السعر فانا لم اجد اي فائده تذكر من جمع السعر ولو تكرمت ان تشرح لي ما تريده من جمع السعر اخي الكريم نستفاد من السعر لنخرج معدل سعر البيع فيه فائده معدل سعر الشراء نستفيد منه اعلى سعر نستفيد منه اقل سعر ايضا ينستفاد منه ولكن مجموع سعر -------- ؟؟؟؟؟؟ بالتوفيق Zehor_try (1).zip
    1 point
  22. اذا كانت قاعدة البيانات من صنع شخص آخر و عليها كلمة مرور فنحن نعتذر عن تقديم مثل هذه المساعدة لأنها تختص بحقوق الملكية و لايصح استخدامها الا باستئذان صاحبها
    1 point
  23. تفضل اخى الحبيب هل المرفق هو طلبك هو من اعمال الرائع ابن مصر المهندس احمد الغالى Public Const backupfolder As String = "c:\حسام\" هذا السطر هو اول سطر بالكود قم بتغيير من c الى D او اى فولدر تحب وايضا غير اسم الملف من حسام الى الى اسم ملف عندك لى استفسار بعد اذن حضرتك انت شغال على الملف اكثر من مستخدم كما ذكرت /ممكن اعرف ازاى / هل بيكون الملف مفتوح من قبل اكثر من مستخدم على اكثر من جهاز بنفس الوقت وجميعهم يستطيعون الاضافه والتعديل ؟؟؟ تقبل تحياتى 7ن المجمع نجع حمادي.zip
    1 point
  24. أخي الكريم تم حل المشكلة بالمرفق طبعا ممكن ضم المعادلات في عمود واحد أو إثنين ولكني أفضلها هكذا للبساطة كما أنك تستطيع إخفاء (وإظهار) كل الأعمدة المساعدة (AC..AH) بالضغط علي علي علامة السالب "-" التي تعلو العمود AI تفضل المرفق Book2_3.rar
    1 point
  25. عزيزي انصحك بالبحث عن مواضيع ومشاركات عن فواتير البيع والشراء . فهي معروف بشكلها العادي تتكون الفاتورة من راس وتفصيل . الراس يحتوي على رقم الفاتورة والتاريخ ورقم العميل في حالة البيع ورقم المورد في حالة الشراء . اما المواد وكمياتها فتاتي في التفصيل وكذلك سعر الوحدة .... الخ . كما انه ليس من الصح وضع الحقول المحسوبة في الجدول الا في حالات خاصة وفي الإصدار 2010 حيث احتوى على نوع بيانات جديد اسمه "محسوب" . ذكرت لك هذا حتى لا تصل الى طريق مسدود في المستقبل . بالتوفيق
    1 point
  26. الحلقة الرابعة عشر ***************** السلام عليكم ورحمة الله وبركاته وحشتكم !! أكيد لا .. لأني لو وحشتكم كنتو فتحتوا الباب وسألتوا عليا .. عموما إنتو وحشتوني ، وعشان وحشتوني هاقدم لكم حلقة جديدة يمكن تفتكروني. النهاردة هتكلم عن حاجة ناس كتير شرحوها ، وشرحوها بشكل ممتاز ، ودا خلاني مش عارف أشرح إزاي ، لأن اللي شرحوها وفوا شرحها صراحة .. هنتكلم عن الحلقات (بس مش حلقات افتح الباب) الحلقات اللي هنتكلم عنها الحلقات التكرارية ، ومن اسمها هي عبارة عن حلقات بتتكرر (إضافة عظيمة!) اسمها بالإنجليزي Loops ودي مهمة جداً في عالم الأكواد ، محدش يقدر يستغنى عنها تقريباً .. نفترض إني دخلت الفصل (بما إني معلم) ولسه دي أول مرة أتعرف على الطلبة اللي في الفصل ..يا ترى أنا عندي استعداد أخلى طالب طالب يقوم وأنا أقوله قول اسمك والطالب اللي بعديه قول اسمك .. أعتقد إن ريقي هينشف ودماغي هتصدع ودا طبعا مش يرضيكم (مش كدا ولا ايه) ..أنا من النوع الكسول فكل اللي هعمله هعمل تكرار من أول طالب في الفصل لآخر طالب ، وأعطي الأمر مرة واحدة .. من أول طالب إلى آخر طالب قووووول اسمك يا حبيبي الطالب التالي هو دا شكل الحلقة التكرارية .. نبرمجها بلغة الـ VBA ... هنقول إن الفصل فيه 60 طالب (معلش دا واقع الفصول في مصر) .. نقطة مهمة مننساش إن الطالب متغير مش ثابت ، فنرمز للطالب المتغير بالرمز X مثلاً ... Sub Loops() Dim X As Long For X = 1 To 60 'Say your name Next X End Sub طبعاً الكود دا شوية له علاقة بالبرمجة وشوية هتش .. ايه اللي هنعمله ..زي ما اتعودنا (دايما) إننا نعرف المتغير .. ونركز في السطر الثاني بدأ بكلمة For متبوعة باسم المتغير اللي هو X وبعدين علامة يساوي عشان نحدد قيمة X المتغيرة (أو الطالب المتغير) وهنا القيمة ليها بداية وليها نهاية (كل شيء له بداية ونهاية) وبيفصل بين البداية والنهاية حرف الجر To وفي آخر الحلقة التكرارية جملة Next X وممكن نقول Next ونسكت ، ومحرر الأكواد هيفهم لوحده .. بس أنا تقليدي شويتين فخلينا نكتب المتغير ، عشان الكود ممكن يكون فيه أكتر من حلقة تكرارية .. الجزء المهم هو الجزء اللي بين السطرين ، وهو دا الأمر المطلوب تكراره ، السطر اللي هنا مجرد تعليق وهتش وملوش علاقة بالبرمجة .. بس حبيت أقرب لكم الفكرة بأسلوب جديد.. كدا لما أنفذ الكود اللي فات ، كل اللي عملته إني أعطيت الأمر مرة واحدة وبس (وأنا حاطط رجل على رجل ... الدورة تلف على طالب طالب ، ويقول اسمه ، ولما يخلص ، الدورة تنتقل للطالب اللي بعديه وهكذا إلى أن ينتهي الطلاب ، ولما الـ 60 طالب يخلصوا ..يتم إيقاف تنفيذ الكود... ناخد أول مثال بجد عشان نقدر نتعلم إزاي نستفيد من الحلقات التكرارية :: لنفترض أننا عايزين نرقم النطاق A1:A10 بالأرقام من 1 إلى 10يعني الخلية A1 = 1 والخلية A2=2 وهكذا ..طبعا الموضوع بسيط جدا Sub NumberRange() Range("A1").Value = 1 Range("A2").Value = 2 Range("A3").Value = 3 Range("A4").Value = 4 Range("A5").Value = 5 Range("A6").Value = 6 Range("A7").Value = 7 Range("A8").Value = 8 Range("A9").Value = 9 Range("A10").Value = 10 End Sub كود في منتهى الروعة .. شايف حسام بيضحك ويقولي عايزك ترقم النطاق من A1:A100 (وابتسم ابتسامة فيها شماته !!) نفكر شوية .. بقول نفكر شوية (بلاش تكمل الحلقة غير لما تبص في الكود وتفكر شوية .. فكر شوية واكسب التوفير في الوقت والجهد) ايه المشترك في أسطر الكود .. وايه المختلف .. المتشابه في كل الأسطر Range("A ").Value = والمختلف هو الرقم بعد حرف الـ A ، والقيمة اللي بعد علامة يساوي .. في السطر الأول الرقم اللي بعد حرف الـ A هو 1 ، والقيمة بعد علامة يساوي بردو 1 ، ونفس الكلام مع السطر رقم 2 ، ورقم 3 وهكذا يبقا أول حاجة تفكر فيها إنك المختلف أو المتغير أو الشيء الغير ثابت تضعه في متغير ، ودا لأنه مش ثابت ومتغير .. فنضع متغير باسم X مثلاً ونعمل حلقة تكرارية من 1 إلى 10 (دي القيم اللي هيحملها المتغير) Sub NumberRange() Dim X As Long For X = 1 To 10 Range("A" & X).Value = X Next X End Sub نفس الكود اللي شرحناه من شوية ، الاختلاف في السطر اللي بين سطري التكرار .. الحلقة هتدور 10 مرات ، وفي كل مرة المتغير X بيحمل قيمة مختلفة (نرررررركز في الجزئية اللي جاية لأنها مهمة جداً جداً ) مش هنفذ الكود مرة واحدة .. سنقوم بعملية التنفيذ واحدة واحدة ، اللي مستعجل يروح ينفذ الكود مرة واحدة ، واللي مش مستعجل أنا معاه ..عشان يعرف حاجة مش هيعرفها الأخ المستعجل ... ضع مؤشر الماوس في أي مكان في الكود .. جميل >> اضغط F8 من لوحة المفاتيح ، وجمد قلبك وقول يا رب .. لاحظت ايه يا عبد المحسن؟ عبد المحسن ناااااااام مني (الله يسامحك) ..عبد المحسن : شايف الدنيا صفرا ليه ، هو فيه عاصفة النهاردة كمان؟ .. رديت عليه : لا يا عبد المحسن كمل نومك ، السطر الأصفر اللي ظهر ده سببه إننا ضغطنا F8 .. ودا فايدته إننا هنقوم بعملية التنفيذ واحدة واحدة .. سطر سطر .. السطر الأصفر على أول سطر في الكود Sub NumberRange() اضغط F8 مرة تانية ، ايه اللي حصل انتقل السطر الأصفر للسطر التالت ، طيب والسطر التاني يا معلم .. ملوش لازمة !!! أكبر خطأ إنك تعتقد إنه ملوش لازمة ، لما ضغطنا F8 للمرة التانية ، محرر الأكواد خزن في الذاكرة كل المتغيرات الموجودة في الكود عايز تتأكد من كلامي ، حرك مؤشر الماوس اللي على شكل حرف I (فيه شرطة فوق وشرطة تحت) حرك الماوس من غير ما تدوس كليك .. واقف على المتغير X هتلاقي تلميح في مستطيل صغير بيقولك المتغير X=0 ، دي كدا القيمة المبدئية للمتغير ... لما تضغط F8 للمرة التالتة ، روح شوف قيمة X مرة تانية هتلاقي قيمة X=1 (ايه اللي خلاها 1 مش كانت صفر من لحظة ) اللي حصل إننا انتقلنا من السطر For X = 1 To 10 والسطر دا هيبدأ في عمل الحلقة التكرارية اللي بنقول عليها ، والحلقة بدايتها 1 زي ما حددنا (وطبعاً ممكن نغير نقطة البداية يا شباب .. مش شرط 1) حرك مؤشر الماوس من غير ما تدوس على المتغير X في السطر المظلل بالأصفر Range("A" & X).Value = X هنلاقي زي ما قلت إن X =1 يعني محرر الأكواد هيعمل ايه دلوقتي ، هيشيل كل X ويحط مكانه القيمة 1 ، فيصبح السطر في الذاكرة بهذا الشكل Range("A1").Value = 1 لحد كدا تمام التمام ، صغر محرر الأكواد بحيث تكون ورقة العمل ظاهرة بالنسبة لك واتأكد إن النطاق A1:A10 فارغ ليس به أي بيانات ، وركز في ورقة العمل ، واضغط F8 عشان تنقل السطر الأصفر إلى هذا السطر ، ولاحظ ورقة العمل Next X لاحظت يا منصور الخلية A1 وضعت فيها القيمة 1 ، نخلي بالنا إن السطر الأصفر بيتم تنفيذه بعد الخروج منه ، فلما خرجنا من السطر تم تنفيذ الأمر وأعطى القيمة 1 للخلية A1 .. اضغط F8 مرة أخرى ، ونلاحظ إن السطر الأصفر انتقل للسطر اللي قبليه ، مش لبداية الحلقة التكرارية ، يعني ببساطة السطر اللي بيحدد بداية الحلقة ونهايتها بيعدي عليه مرة واحدة فقط .. أما سطر الأمر والسطر اللي فيه كلمة Next بيبدل السطر الأصفر عليهم... نبص دلوقتي على قيمة المتغير X هنلاقيها بقت 2 فيتم تنفيذ السطر بمجرد الضغط على F8 ويضع القيمة 2 في الخلية A2 وهكذا ..جرب واضغط F8 وفي كل مرة شوف قيمة المتغير X وشوف النطاق A1:A10 في كل مرة أول ما توصل قيمة المتغير X إلى الرقم 10 تتوقف الحلقة التكرارية ، وينتقل السطر الأصفر لجملة End Sub .. وينتهي عمل الكود .. عارف إني طولت في النقطة اللي فاتت ، بس كان لازم أطول فيها ، عشان أنا فاضي ومفيش ورايا شغل ، فقلت أصدعكم شوية!! ننتقل لمثال آخر --------------- عشان نقدر نفهم إزاي نستفيد من الحلقات التكرارية .. عايزين نعد الاسم (أحمد) في النطاق A1:A10 نفترض إني عندي الأسماء دي في النطاق A1:A10 أحمد ياسر سليم حسام عيسى أحمد أحمد خليل عبد الله أحمد المطلوب : نشوف الاسم (أحمد) كم مرة تم تكراره .. المعطيات : استعن بالله ثم بالحلقة التكرارية .. الفكرة : هنعمل اختبار صغير بقاعدة IF وهنقول لو قيمة الخلية بتساوي "أحمد" .. زود المتغير Counter بقيمة واحد Sub CountName() Dim X As Long Dim Counter As Long For X = 1 To 10 If Range("A" & X).Value = "أحمد" Then Counter = Counter + 1 Next X MsgBox Counter End Sub عملنا متغير جديد باسم Counter عشان لما يتحقق الشرط ويلاقي الاسم "أحمد" يقوم يخلي المتغير Counter يساوي نفسه + 1 طيب ليه يساوي نفسه ، عشان في كل مرة يلاقي أحمد قيمته هتتغير فلازم نضيف واحد لكل Counter جديد النتيجة في الآخر هتظهر في رسالة ، وهي 4 .. طيب نجرب نشيل الواحد في هذا السطر Counter = Counter + 1 لو شيلنا الواحد هتكون النتيجة 0 ، لأن المتغير قيمته المبدئية صفر ، فلما يتحقق الشرط مش هيزيد المتغير إلا لما نضيف واحد في كل مرة يتحقق الشرط. هناخد مثال آخر ---------------- عندنا درجات في النطاق A6:A15 ، عايزين نكتب ناجح أوراسب في الخلية المجاورة للدرجة ، لو الدرجة أكبر من أو يساوي 50 يبقا ناجح ، مكانش يكون راسب ... نخلي بالنا أنا غيرت بداية النطاق عشان الحلقة التكرارية بردو هتتغير بدايتها ونهايتها طبقاً للصفوف الجديدة 58 41 88 40 50 40 98 94 60 35 نجرب الكود التالي .. Sub LoopsTest() Dim X As Long For X = 6 To 15 If Cells(X, 1).Value >= 50 Then Cells(X, 2).Value = "ناجح" Else Cells(X, 2).Value = "راسب" End If Next X End Sub نلاحظ الحلقة التكرارية بدأت من 6 إلى 15 (ودا متغير للصفوف من الصف رقم 6 إلى الصف رقم 15) ووضعنا الشرط بين سطري الحلقة التكرارية ، لو الخلية اللي في الصف X والعمود الأول أكبر من أو يساوي 50 يقوم يعمل ايه؟ يضع القيمة النصية "ناجح" في الخلية اللي في العمود الثاني والصف X (نفس الصف بالطبع لأن قيمة X في الحالة دي هي هي نفس القيمة لأننا في نفس اللفة) .. إذا لم يتحقق الشرط قام بتنفيذ الجزء الثاني بأن يكتب النص "راسب" ثم إغلاق جملة IF بالجملة End IF ومننساش القفلة زي ما اتعودنا.. ننتقل لآخر مثال في الحلقة دي (عشان أنا تعبت وإنتو كمان أكيد تعبتو) في الأمثلة اللي فاتت عملنا حلقات تكرارية للصفوف .. واحد بيقولي طيب والأعمدة ملهاش نصيب في الدوخة اللي إحنا فيها دي .. أقوله أكيد ليها نصيب .. المطلوب إننا في الصف الرابع ، نكتب معادلة =COLUMN() بس في الأعمدة من العمود رقم 1 إلى العمود رقم 15 (A To O) نعقدها شوية ونقول في الأعمدة اللي رقمها فردي بس (الأعمدة اللي رقمها زوجي مش محتاجينها) يعني ببساطة عايزين نحط المعادلة في الأعمدة A C E G I K M O Sub ColumnsLoop() Dim X As Long For X = 1 To 15 Step 2 Cells(4, X).Formula = "=COLUMN()" Next X End Sub الحلقة التكرارية بدأت من العمود الأول حتى العمود رقم 15 (البداية والنهاية) معلومة جديدة Step 2 (دي معناها إننا هنقفز ..والقفز هيكون بمقدار 2 أي خطوتين) بدأنا بـ 1 فلما نقفز بمقدار 2 ، هنروح لرقم 3 ، أي أن المتغير سيكون رقم فردي في كل مرة 1 ، 3 ، 5 ، 7 ، 9 ، 11 ، 13 ، 15 (وهو دا المطلوب بالضبط) سطر الأمر فيه الخاصية Formula ودي عشان نقدر نضع معادلة من خلالها .. والمعادلة ببساطة زي ما شفناها من شوية بس بتكون بين أقواس تنصيص .. طيب الجزء الأول من السطر نلاحظ إننا استخدمنا Cells ودي بتكون متبوعة بقوسين ، وبين القوسين رقم الصف ثم فاصلة ثم رقم العمود ، وبما إن رقم الصف ثابت اللي هو رقم 4 ، فكتبناه زي ما هو .. اما رقم العمود فمتغير فوضعنا رقم العمود X ... جرب الكود وشوف النتيجة بنفسك أرجو أن أكون قد وفقت في توصيل المعلومة بأسلوب مبسط كان معكم أخوكم أبو البراء من تراك أوفيسنا (لف على الحلقات من الحلقة رقم 1 إلى الحلقة رقم 14 .. لو عايز تتعلم الـ VBA) ويا رب ميكونش فيه حد جاله دووووووووخة من كتر اللف .. والله أنا اللي دوخت أستودعكم الله .. دمتم في رعاية الله تقبلوا تحياتي .. دمتم بود
    1 point
  27. مبدئيا جدولي الأساتذة و الطلاب لا اشكالية فيهما كذلك جدول الصفوف أما جدول المواد احذف حقل اسم المدرس منه لأنه المفروض عرضة للتغير من سنة الى سنة أما جدولي الامتحانات - و جدول تحتاج شرح مالذي تريده من كل جدول منها ( ماهي فائدة كل جدول و كل حقل من حقول ذلك الجدول )
    1 point
  28. اخى ابا ماريه راجع الرابط الاتى http://www.officena.net/ib/index.php?showtopic=59097#entry377979 تقبل تحياتى
    1 point
  29. السلام عليكم أخي الكريم أهلا بك ومرحبا بين إخوانك تفضل الحل بالمعادلات وليس الأكواد إن شاء الله تجده يسيرا سهلا Book2_2.rar
    1 point
  30. السلام عليكم أخي العزيز تفضل المرفق به ماطلبت خزينة تجربة.rar
    1 point
  31. السلام عليكم والله احيانا احزن على نفسي لهذا التجمد الذي اصابني ولكن الان ان شاء الله سنبدا رويدا شدوا على يدي علشان استمر لديا الكثير من الاعمال واخرج من عمل الى اخر بدون اكمالي التشطيب للعمل السابق وكانني ادور في دوامة لانني قد اكون في حالة نفسية -- هذه محفظه لجمع الاكواد وعمل لها تعليمات اخبرونا ما النقص فيها ======================================= كلمة السر لاي شي مغلق في الملف هي الرقم 1 ======================================= محفظة اكواد.rar
    1 point
  32. السلام عليكم أخي العزيز صيغة CSV كما قال الغالي أبو أحمد إن لم يقبل جهازك هذه الصيغة فلتلجأ للصيغة الأخري VCF وهذه الاخيرة تحتاج خطوات أكثر ويلزم أن يكون عندك برنامج أوتلوك ستنقل محتويات الأسماء بالأوتلوك إلي مكان آخر مؤقت ثم تستورد إلي الأوتلوك من الملف الإكسل أو الـCSV ثم من الأوتلوك يمكنك إرسال جميع الأسماء إلي صيغة VCF إلغي الأسماء من الأوتلوك وإسترجع أسماء الأوتلوك الأصلية لمكانها مرة أخري في الخطوة 4 ،يلزمك كود صغير علي الأوتلوك وليس علي الإكسل ليمكن الأوتلوك من إرسال جميع الأسماء إلي صيغة VCF وليس إسما بإسم كما هو العادي هذا الكود هو Sub Save_all_Contacts_as_VCF_format() Dim ns As NameSpace Dim foldContact As Folder Dim itemContact As ContactItem Dim colItems As Outlook.Items Dim myProperty As Outlook.UserProperty Set ns = Application.GetNamespace("MAPI") Set foldContact = ns.GetDefaultFolder(olFolderContacts) Set colItems = foldContact.Items.Restrict("[MessageClass]='IPM.Contact'") For Each itemContact In colItems i = i + 1 itemContact.SaveAs "D:\AAA\" & i & ".vcf", olVCard Next End Sub ستلاحظ كما بالسطر قبل الأخير بالكود itemContact.SaveAs "D:\AAA\" & i & ".vcf", olVCard أنك لابد أن تكون مجهز قبل تشغيل الكود مجلد وليكن AAA علي الدرايف D إن أردت إرسل لي الملف مهما كان كبيرا وسأحوله لك بإذن الله
    1 point
  33. شكرا لكم على المشاركة والتشجيع والتثبيت ويرجى تصحيح عنوان الموضوع إلى (سلسلة الأمثلة المشروحة) المثال الثاني كيفية فتح مثيلات متعددة من نموذج MultipleInstance المقدمة هذا المثال يوضح كيفية استخدام VBA : Visual Basic for Applications لفتح المثيلات المتعددة لنموذج (نسخ عن النموذج) ويمكنك هذا من الاستفادة من هذه المثيلات باستطلاع عدة سجلات معا في آن واحد وبالتأكيد فإن الفائدة ستكون كبيرة في مجالات عدة. التقاصيل إن فتح مثيلات النموذج يتضمن بناء الجملة Set وذلك بواسطة عبارة تعيين الكلمة الأساسية (جديد) ومرجع للنموذج كما في المثال الآتي : Set x = New Form_Form1 لأنك لا تستتخدم الكلمة الأساسية New لإنشاء مثيل جديد من كائن خفيف (lightweight Object)، فيجب تعيين الخاصية HasModule الخاصة به إلى True يعني للنموذج الذي تنوي استخدام الكلمة الأساسية جديد New له. عندما تقوم بفتح المثيلات المتعددة من نموذج فإن المثيل الأصلي (النموذج الأصلي) هو الكائن (النموذج) الوحيد الذي يتم تخزينه في قاعدة البيانات في النهاية عند اغلاقه. المثيلات الأخرى هي مؤقتة ويتم إزالتها من الذكرة عندما تقوم بإغلاقها. ملاحظة : عند إغلاق المثيل الأصلي (النموذج) سيتم إغلاق كافة المثيلات الأخرى منه كذلك. ولفهم تطبيق هذا المثال وكيفية فتح المثيلات المتعددة من نموذج، يجب ملاحظة الخطوات الآتية : 1. تعيين خاصية HasModule له كائن إلى true كما ذكرنا سابقا كالآتي : 2. حدث الضغط على زر أمر فتح مثيل جيد عن النموذج Private Sub cmdOpen_Click() Set frmNewForm = New Form_frmMultipleInstance frmNewForm.SetFocus intInstanceNum = intInstanceNum + 1 frmNewForm.Caption = "المثيل رقم - " & intInstanceNum End Sub لاحظ هنا أننا أولا نطلب مثيل جديد عن النموذج وما مكننا من ذلك هو التعريف في الخطوة 1 وثم ننقل التركيز إلى النموذج الجديد ونطلق عليه (المثيل رقم - ؟) حيث يستخدم المتغير intInstanceNum لمتابعة ارقام المثيلات التي تفتح. 3. حدث فتح النموذج الأصلي Private Sub Form_Open(Cancel As Integer) DoCmd.MoveSize xPos, yPos xPos = xPos + 300 yPos = yPos + 300 End Sub يتم تعريف المتغير xPos و yPos و intInstanceNum في الوحدة النمطية بشكل Public لتعرف في كل مكان ويتم تحديد موقع ظهور النموذج ومثيلاته بإزاحة بالإتجاه الأفقي من اليسار إلى اليمين والعمودي من الأعلى للأسفل بمقدار 300 نقطة (pixel) لئلا تفتح النماذج فوق بعضها. 4. ما الذي يغلق المثيلات عندما يغلق الأصيل علما أنه لا يوجد في حدث الأغلاق أي كود يتعلق بذلك ؟ Private Sub Form_Close() xPos = 300 yPos = 300 intInstanceNum = 0 End Sub من المعروف أنه في البرمجة الكينوينة عندما ننشأ كائنا (مثيلا أو أبنا) من آخر فإنه عند إنهاء التعامل مع الكائن الأصلي سيتم إنهاء المثيلات كذلك، واعتقد غير جازما أن هذا الأمر يتعلق بخاصية تعدد الأشكال أو ما يسمى في أدبيات أخرى تعدد الأوجه وبالانجليزية polymorphism ولا اعتقد جازما أن هذه من خصائص التوارث inheritance . إليكم المثال بعد تعريبه : MultipleInstance.rar تحياتي
    1 point
  34. مرحلة التطبيق والتجربة ما زلنا في موضوعنا الأول وهو محاكاة قدرات الجر والإفلات drag-and-drop في أكسيس المقدمة هذه من أهم المراحل بعدما نتعلم شيء معين يجب أن نطبقه ونستخدمه ولذلك قمت بعمل مثال يقوم بالتلوين باستخدم فكرة الجر والإفلات كما في الصورة وفي هذا المثال البسيط قمت باستثمار ما تعلمناه سابقا وجدير بالملاحظة هنا ما يأتي الإجراءات الأحداث التي نستخدمها هي ثلاثة لكل لون حيث يعتبر هو العنصر المراد جره ومثال ذلك احداث اللون الأحمر c1 وهي : Private Sub c1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) DragStart Me End Sub Private Sub c1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) DropDetect Me, Me![c1], Button, Shift, X, Y End Sub Private Sub c1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) DragStop End Sub وحدث مربع النص المستقبل الذي سيتم عنده الإفلات وهو Private Sub dropto_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) DropDetect Me, Me![dropto], Button, Shift, X, Y End Sub وطبعا في النهاية لا ننسى وضع الكود المناسب في الوحدة النمطية لإجراء عملية التلوين ويتم ذلك كالأتي : Sub Example3(DragFrm As Form, DragCtrl As Control, DropFrm As Form, DropCtrl As Control, _ Button As Integer, Shift As Integer, X As Single, Y As Single) DropCtrl.ForeColor = DragCtrl.ForeColor DropCtrl.Requery End Sub هذا كل شيء، كما ترون أن الأمر بسيط بعد أن تم فهمه المثال التطبيقي : DragDrop123.rar وظيفة محبي العلم : عمل مثال خاص بكم يستخدم ما تعلمناه ورفعه إن احببتم تحياتي
    1 point
  35. المثال الأول كيف نحاكي قدرات الجر والإفلات drag-and-drop في أكسيس . المقدمة في أكسيس لا يوجد حدث معرف لعملية الجر والإفلات (DragDrop) كما هو الحال في فيجوال بيسك، في هذا المثال سيتم شرح كيفية عمل اجراء يعمل في أكسيس لعملية الجر والإفلات من عنصر تحكم لأخر وتحديدا من مربع قائمة لأخر وإذا تمت العملية مع استمرار الضغط على زر Ctrl فإن جميع البيانات الموجودة في القائمة الأولى سوف تنقل إلى القائمة الثانية. الإجراءات الاجراءات الأربعة الآتية سيتم استخدامها في هذا المثال وهي : Sub DragStart(SourceFrm As Form) هذا الاجراء يستخدم النموذج المصدر sourceFrm الذي يحتوي على عنصر التحكم الذي سيتم جره (يعني جر البيانات التي فيه) Sub DragStop() هذا الإجراء لإيقاف عملية الجر Sub DropDetect(DropFrm As Form, DropCtrl As Control, _ Button As Integer, Shift As Integer, _ x As Single, Y As Single) حيث : DropFrm النموذج الذي ستفلت فيه البيانات DropCtrl العنصر الذي ستفلت فيه البيانات Button، X، Y المعلمات التي سنحصل عليها من حدث MouseMove هذا الإجراء يمكن عنصر تحكم من أن يكون عنصر الإفلات (الذي سنعبىء البيانات فيه) ، يجب أن يطلب هذا الإجراء في حدث MouseMove للعنصر للذي يمكن أن يكون الهدف (الذي ستفلت عنده البيانات) Sub DragDrop(DragFrm As Form, DragCtrl As Control, DropFrm As Form, DropCtrl As Control, _ Button As Integer, Shift As Integer, x As Single, Y As Single) حيث : DragFrm النموذج الذي سنجر منه DragCtrl العنصر الذي سنجر منه DropFrm النموذج الذي سنفلت فيه البيانات DropCtrl العنصر الذي سنفلت فيه البيانات Botton وضع أزرار الماوس عند عملية الإفلات وضع زر Shift ALt Ctrl عند إجراء الإفلات X,Y إحداثيات الماوس عند تنفيذ عملية الإفلات هذا الإجراء سيتم طلبه للإستجابة على عملية الجر والإفلات من عنصر مفعل لأن يكون عنصر جر إلى عنصر مفعل لأن يكون عنصر إفلات. في هذا الإجراء يمكن أن نعدل في الكود كي يتناسب مع ما نحتاجه أو ما نريد عمله على سبيل المثال يمكن أن تنسخ محتويات العنصر المجرور في العنصر المستقبل (عنصر الإفلات) ملاحظات حول تطبيق المثال 1. ملاحظة الوحدة النمطية basdragdrop والتي تحتوي على الإجراءات المشار إليها أعلاه 2. لاحظ حقل ysnSelected الموجود في الجدول tblDragListBox 3. ملاحظة جميع الإحداث المعرفة على عنصري التحكم مربع قائمة list1 و list2 في النموذج frmDragDropListBoxes وربما تتسألون لماذا كان هناك تعريف للنموذج المصدر الذي سنجر منه وللنموذج الهدف الذي سنفلت فيه البيانات، والجواب هو أننا في مثالنا الثاني سوف نقوم بعملية الجر من نموذج والإفلات في نموذج أخر DragDrop.rar تحياتي
    1 point
  36. شهركم مبارك من عدة جداول مرتبطه بعلاقات كونت استعلام يحتوي على الحقول الاتيه: الاسم الصف الماده الدرجه النسبه استطعت من خلال الاستعلام ان اجعله يطالبني برقم الصف ورقم الماده والنسبه المطلوبه فيظهر الطلاب مثلا.... في الصف الخامس في مادة الرياضيات الحاصلين على 90% او اي اختيار اخر.. لكن هذا يجعلني مطالب بادخال الارقام في كل مره فهل استطيع عمل ذلك من نموذج بحيث اختار من قوائم ماريد من رقم صف وماده ونسبه فيظهر لي الاسماء التي تحقق تلك الشروط علما ان للمواد والصفوف والنسبه جداول معده. كل عام وانتم بخير
    1 point
  37. من وضع تصميم الاستعلام فى حقل المعايير فى الاستعلام نستخدم المعالج لاختيار مربع النص من علي النموذج الذي يحوي حقل المعرف للسجل ( الايقون الذي يشبه العصا السحرية ) أو نكتبه مباشرة فى المعيار [Forms]![Form1]![StudentID] حيث Form1هو اسم النموذج و StudentIDهو اسم مربع النص علي النموذج و نفس الوضع بالنسبة لباقي الشروط و بالنسبة لقيمة الدرجة يمكنك استخدام علامة أكبر من أو = >=[Forms]![Form1]![grade]
    1 point
  38. السلام عليكم ورحمة الله وبركاته الدرس الرابع Ms_Access4.zip
    1 point
  39. السلام عليكم ورحمة الله وبركاته الدرس الثالث Ms_Access3.zip
    1 point
  40. السلام عليكم ورحمة الله وبركاته الدرس الثاني Ms_Access2.zip
    1 point
×
×
  • اضف...

Important Information