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

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

  1. ابوبسمله

    ابوبسمله

    الخبراء


    • نقاط

      17

    • Posts

      918


  2. متقاعد

    متقاعد

    الخبراء


    • نقاط

      17

    • Posts

      583


  3. Eng.Qassim

    Eng.Qassim

    الخبراء


    • نقاط

      11

    • Posts

      2,298


  4. Moosak

    Moosak

    أوفيسنا


    • نقاط

      11

    • Posts

      1,854


Popular Content

Showing content with the highest reputation on 13 يون, 2022 in all areas

  1. وهنا الدالة الأخيرة ( علشان ما أغار ) 😂 حساب العمر.rar
    5 points
  2. السلام عليكم مشاركه مع اخى واستاذى الغالى جزاه الله عنا كل خير Private Sub Form_Current() If Not Me.NewRecord Then Me.AllowEdits = False Else Me.AllowEdits = True End If End Sub
    4 points
  3. جزاك الله خيرا اخى ومعلمى العزيز الحمد لله اصبحت معكم ع قائمه المسنين 😀 فقمت بعمل نفس الاجابه ولكن وردنى اتصال وانشغلت به ولما عدت وجدتك وضعت الحل 💐 ربنا يبارك فيك وفى عمرك وادامكم الله واسعد اوقاتكم
    4 points
  4. وعليكم السلام-يمكنك استخدام هذه المعادلة لطلبك =INDEX(القائمة!$C:$F,MATCH(C6,القائمة!$B:$B,0),MATCH(D5,القائمة!$C$6:$F$6,0)) المطلوب1.xlsx
    4 points
  5. السلام عليكم ورحمة الله وبركاته .. اليوم جايب لكم موقع وظيفته يقرأ أو يشرح لك الكود بلغة إنجليزية مفهومة ، ويمكنك عن طريق المترجم تحويلها إلى اللغة العربية 🙂 وهذا هو الموقع : https://denigma.app الموقع بفضل الله يتعامل مع معظم اللغات البرمجية تقريبا ، ومن ضمنها الفيجوال بيسك VBA .. وهذا شرح مبسط للاستخدام .. بعد فتح الموقع ننزل تحت إلى هذي الخانة، يوضع الكود في الخانة اليسرى ويظهر التفسير في الجهة اليمنى : نجرب نلصق دالة حساب العمر بالسنة والشهر واليوم ونضغط على [Explain it!] : ولترجمته باللغة العربية ، تأخذ النص لمترجم جوجل فيعطيك النتيجة هكذا : 🙂 هذا وسلامتكم ☺️🌹
    3 points
  6. الطريقة الاسهل في حدث في الحالي للنموذج ضع الامر التالي Dim intnewrec As Integer intnewrec = Form.NewRecord If intnewrec = 0 Then Me.AllowEdits = False Else Me.AllowEdits = True End If تحياتي
    3 points
  7. ههههههههههههههههه اضحك الله سنك مهندسنا العزيز بارك الله فيكم اخوانى واساتذتى وجزاكم الله خيرا
    3 points
  8. المرفقات النهائية وسبق الشرح تفصيلا واجمالا لكل جزئية بالكود Anti Copy 3.accdbKey.accdb
    3 points
  9. ههههههه الحقيقة اذا كان بنعمل بالكود في كافة نماذج البرنامج نحول الكود الى وحدة نمطية اي ان الكود نفسه بيبقى 7 اسطر و باقي اسطر المهندس قاسم الاشارة في النمادج المطلوبة تحياتي نفس ردكم اخي احمد
    2 points
  10. لازم يفوز طبعا استاذى مش تعليمكم فهذه بركاتكم وتعليمكم لنا جزاكم الله عنا كل خير طبعا يحيا المسنون ونقبل ايديهم ورؤسهم والحمد لله انضممت لهم 😀 اضحك الله سنك مهندسنا العزيز بس ممكن نختصرها عادى لو حبيت 5 فى مديول ونستدعيهم فى سطر واحد فى 3 نماذج وبقوا 8 اسطر ههههههههههههه جزاكم الله عنا كل خير
    2 points
  11. بس لو كان لدينا 3 نماذج ...كودك حيأخذ 10 اسطر وكود استاذ احمد بياخذ 15 سطر يحيا المسنون 🤣
    2 points
  12. سيدي الفاضل /مبرمج سابقا - الف رحمه على والديك - هو المطلوب - تذكر ان الصدقة تطفئ غضب الرب وصلة الرحم تزيد في العمر وفعل المعروف يقي مصارع السوء اللهم اني اسألك من فضلك ورجمتك ان تجزي عني اخي (مبرمج سابقا ) خير الجزاء . فإنه لا يملك ذلك الا انت.
    2 points
  13. ممكن ومادمت مسن مثلي نعملها على طريقة المسنين DoCmd.SetWarnings 0 DoCmd.RunSQL "UPDATE tblA SET tblA.ATHHAR = 3;" DoCmd.RunSQL "UPDATE tblA SET tblA.ATHHAR = 6 WHERE (((tblA.IDA)=[Forms]![FtblAA]![IDA]));" Me.ATHHAR.Requery DoCmd.SetWarnings -1 نوقف رسائل التحذير ننفذ استعلام تحديث الى رقم ثلاثة ننفذ استعلام تحديث الى رقم سته للسجل الحالي نحدث الحقل ATHHAR في النموذج نعيد تفعيل رسائل التحذير هذه اسهل طريقة حسب اعتقادي الملف مرفق مع ان ارفاق اي ملف ضد توجهي ولكن طلب من مسن لا يرد تحياتي اظهار السجل الحالي فقط.accdb
    2 points
  14. مشاركة معكم دالة لحساب السنوات ويمكن تعديلها لتحقيق المطلوب Function Age(varBirthDate As Variant) As Integer Dim varAge As Variant If IsNull(varBirthDate) Then Age = 0: Exit Function varAge = DateDiff("yyyy", varBirthDate, Now) If Date < DateSerial(Year(Now), Month(varBirthDate), _ Day(varBirthDate)) Then varAge = varAge - 1 End If Age = CInt(varAge) End Function هذه الدالة ☝️ من موقع مايكروسوفت الموقع غني بالامثلة ولكن امثلة عامة يمكن التعديل عليها وتكييفها وفقا لحاجتنا تحياتي
    2 points
  15. هو انا بحكي ايه من الصبح انا وضعت كودك لفوق ...وكود الفرنجة لتحت حتى تقارن بينهم بالمناسبة استاذ محمد ..انا اعتمد عليه كثيرا في حساب مدد المشاريع (التي ليس فيها عطل او جمع )
    2 points
  16. تاكد جيدا ..الكود مضبوط 100% وقد جربته كثيرا هؤلاء الفرنجة لايخطأون ياطويل العمر😄
    2 points
  17. فورم المخزن البحث فى جميع الشيتات بالحرف واظهار النتيجة فى الليست والتكست
    1 point
  18. نعم صحيح هو نابغه وذو خلق ومتواضع هو وجميع اخوانى واساتذتى واتشرف بل هو وسام ع راسى وصدرى ان اناديكم اخوانى وابائى واقبل ايديكم ورؤسكم وهنبعد عن الكود بقى من خصائص النموذج تبويب بيانات السماح بالتحرير لا 🌹
    1 point
  19. استغفر الله العظيم ..اخي او ابني احمد حقيقة ..في هذا المنتدى الرائع ...تعلمت الاخلاق منكم قبل العلم أسأل الله العظيم لنا ولكم الرحمة ...ثم الرحمة ..ثم الرحمة فلا شفيع لنا ذالك اليوم العظيم غير رحمته ...العزيز الرحيم
    1 point
  20. كما تفضل به استاذي ومعلمي @احمد الفلاحجي ضع في استعلام الالحاق تحت التاريخ معيار = التاريخ الموجود في (الحقل المحدد) في النموذج Forms![myForm]![textDate]
    1 point
  21. ان شاء الله دكتورنا الحبيب سأعمل نموذجا بذلك رغم انه موجود في المنتدى .. بصراحة هذا الموضوع يستغله بعض المبرمجين لصالحهم يسمح بالنسخ لجهاز اوعميل اخر ..لكن المسكين لايعلم انه بعد مدة سيتوقف البرنامج لانه سيقوم بتفعيل قراءة الهارديسك وسيضطر الزبون الثاني لمراجعة المبرمج ويدفع له ليفتح له البرنامج علىرقم هارديسك حاسبته بصراحة انا لا الوم المبرمج ...لكنه يجب ان يعطي تحذيرا بعدم النسخ لا اعلم ربما هي فهلوة من المبرمج
    1 point
  22. شايف كيف ياعم احمد الشباب يفوز 5 اسطر كودك افضل واسهل من كود الشايب 7 اسطر
    1 point
  23. استاذى الفاضل احمد الفلاحجي / سلمت يمينك وجعل الله ذلك في ميزان حسناتك
    1 point
  24. امين ولك بالمثل اخي الفاضل يونس جزاك الله كل خير على الدعاء الطيب تحياتي وتقديري لك
    1 point
  25. ويبارك في اخي العزيز احمد لا ياعم احمد انت مازلت شاب اسال الله يبارك لك في عمر وعلمك تحياتي لك يا ابا بسمله 🌹
    1 point
  26. السلام عليكم و رحمة الله و بركاته هذا تعديل حسب فهم مسن آخر اظهار السجل الحالي فقط.zip
    1 point
  27. يشرفنى بمنادتكم لى بابنكم والحمد لله ان الموقع فتح معاك مره اخرى والحمدلله على تمام العمل معك بفضل الله ثم بفضل اخى العزيز ابوجودى جزاه الله خيرا اخى ومهندسنا العزيز قاسم ما هو ال fbi ؟ وفيك بارك الله اخى ابوالحسن قام ابوجودى جزاه الله خيرا بوضع المثال لاستخراج كود التفعيل بالتوفيق
    1 point
  28. جزاك الله خيرا اخى العزيز محمد عصام @ابو جودي لم اقم بشىء يذكر د محمد @الحلبي جزاه الله خيرا ابوجودى ع طرحه الرائع اممممم راى فى محله اخى العزيز ابو البشر فهذه الحاله سنحتاج لشى اخر لتمييز كل مفتاح لكل برنامج ع حده بالتوفيق اخوانى
    1 point
  29. الموضوع يحتاج ايضاح اكثر مثلا السجل الحالي للعميل يونس عندما نفتح الاستعلام تحتاج الى عرض سجلات يونس يونس لديه 9 سجلات ومثله لباقي الاسماء اذا كان هذا الفهم صحيح ما نحتاج الى حقل اظهار ولا اي تعديل على استعلام QAAAA فقط نفتح استعلام QCCC في وضع التصميم ثم في المعايير للحقل IDA نضع التعبير التالي ⬇️ [Forms]![FtblAA]![IDA] وفي النموذج نعمل زر امر ونضع الكود ⬇️ DoCmd.OpenQuery ("qccc") اعتذر ان لم اوفق في فهم المطلوب فانا رجل مسن وفهمي على قدي تحياتي
    1 point
  30. جميعنا كذلك نتعلم ونكتشف طرق جديد ونكتسب الخبرات من بعضنا البعض احسن الله اليك اخي قاسم
    1 point
  31. الف شكر على المجهود و سرعة الرد مشكور جدااا للمرة الثانية الرد كان مفيد جداا
    1 point
  32. استاذنا ومعلمنا وبشمهندسنا / @ابو جودي ايوه كده ياسلام عليك يااخى هو ده الكلام الان ارفقت مفتاح التفعيل الله ينور عليك الشرح السابق مفيد جدا وواضح جدا والاستاذ / @احمد الفلاحجيقام بتوصيل كل هذه المعلومات لنا ربنا يبارك فيه ويرزقه ولكن لى سؤال صغير استاذ / محمد عصام لو احد العابثين دخل وكتب اى رقم فى خانة التفعيل تظهر له رسالة باللغة الانجليزية تقول : "انت مخئ الرقم خطأ حاول الاتصال بمبرمج البرنامج " من اين اضع هذه الرسالة باللغة العربية وفى اى سطر من الكود اقوم بتغيرها ـ يعنى كيف اغير الرسالة باللغة العربية وفى اى سطر من الاكواد جزاك الله كل خير واعطال الصحة والعافية وبارك فى علمك ورزقك من غير حساب ـ اللهم امين
    1 point
  33. لا أعتقد أن هذا يتم بمعادلة يمكنك استعمال هذا الكود في حدث تغيير الشيت Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column > 1 And Target.Column < 6 Then Range("f" & Target.Row) = Date End Sub كلك يمين على اسم الشيت ثم view code ثم لصق هذا الكود في الناحية اليمنى مع حفظ الملف بامتداد يدعم الأكواد مثل xls أو xlsb أو xlsm بالتوفيق
    1 point
  34. استغفر الله ..انت استاذي ومعلمي في هذا العلم وما انا الا مبتديء وطالب علم وانت سابق ...وحالي ...ولاحق جزاك الله خير جزاء المحسنين
    1 point
  35. الملف فيه حسبتين الى فوق غلط و الى تحت مظبوطة بالملى @Eng.Qassim
    1 point
  36. تفضل today: Int((Date()-[تاريخ الميلاد])/365) & " سنة - " & Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12) & " شهر - " & Int((((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12-Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12))*30) & " يوم
    1 point
  37. وعليكم السلام-جرب هذه المعادلة =IF(COUNTIF($B$1:$D$3,A8),A8," هذ الاسم غير موجود") Search+Vlookup1.xlsx
    1 point
  38. حياك الله اخي واستاذي ابو البشر والشكر لله اخي وجودكم انتم واخوننا الكرام هو الدافع لعودتنا بعد طول انقطاع من المؤكد ان الموقع يزخر بالامثلة للترقيم في الاستعلام مع ذلك ساتحدث عن طريقتين ربما تفيد احد من رواد الموقع الطريقة الاولى اذا كان لدينا في الجدول حقل ترقيم ولكن توجد ارقام محذوفة Expr1: DCount("[id]";"tbl_1";"[id]<=" & [id]) الطريقة الثانية اذا كان الجدول لا يحتوي اي حقل ترقيم وانما حقول نصية فقط ⬇️ Expr2: (Select Count(1) FROM [tbl_1] A WHERE A.item <=[tbl_1].[item]) item حقل نصي هنا ☝️من الافضل استخدام تسمية توضيحية حتى لا تظهر لنا رسالة بطلب قيمة معلمة . توجد طرق اخرى عديدة بعضها يعتمد على وحدة نمطية وبعضها بدون ولكن هذه من اسهل الطرق. والى لقاء في موضوع اخر باذن الله تحياتي
    1 point
  39. الطريقة الاسهل بدون تحريك دماغ ( هذا على افتراض وجوده) 😄 نجعل المصدر استعلام ونظيف له حقل ترقيم تلقائي ونكمل بنفس الطريقة
    1 point
  40. شكرا لك أخي مبرمج سابق مبدع بالفطرة ..🙂 أرى أنك أعتمدت على فرضية أن الحقل Id موجود ومرتب تصاعديا بدون وجود نواقص (حقول محذوفة) .. ماذا لو أن حقل ال Id مكتوب هكذا xml0620220856 ؟ كيف نستطيع الحصول على ال 100 سجل الأولى ؟ ثم المائة التالية ؟ ولو كان لدينا 3 قوائم ListBox مثلا في نفس النموذج نريد فيها تقسيم السجلات إلى 3 أقسام متساوية .. كيف نفعل ذلك ؟؟ طبعا الهدف من السؤال هو تحريك الدماغ .. والاستفادة من خبراتكم .. وإثارة روح التحدي .. 👍🏼😁
    1 point
  41. اما انا سوف اعملها بطريقة الطيبين بدون الحاجة الى عدة استعلام فقط استعلام واحد ويكون مصدر للنموذج ويتم كتابة جملة الاستعلام في مربع نص مخفي في النموذج في البداية نحتاج الى نموذج فارغ ونضع فية ثلاث حقول نصية وزري امر ونموذج فرعي لعرض السجلات مصدر سجلات النموذج الفرعي الجدول ولايهمنا كثير لكوننا سوف نتحكم بالمصدر عن طريق الكود مربع النص الاول اسميته tx2 وقيمته الافتراضية 1والثاني tx3 وقيمته الافتراضية 100 والثالث tx10 تسمية الحقول امر راجع لك المهم تسمية الحقل تكون نفسها في الكود الحقل النصي tx10 قيمته تساوي ="SELECT tbl_1.id, tbl_1.id_item FROM tbl_1 WHERE (((tbl_1.id) Between " & [tx2] & " And " & [tx3] & "));" tbl_1 هو اسم الجدول الذي يحتوي على البيانات tx2 و tx3 هي الحقول التي اشرنا اليها سابقا ووضعنا لها قيمة افتراضية الان زر الامر الاول اسميناه التالي ووضعنا فيه الكود If Me.tx2 = 1900 Or Me.tx3 = 2000 Then: Exit Sub Me.tx2 = Me.tx2 + 100 Me.tx3 = Me.tx3 + 100 Me.sub_frm.Form.RecordSource = [tx10] Me.sub_frm.Requery وزر الامر الثاني اسميناه السابق ووضعنا فيه الكود If Me.tx2 = 1 Or Me.tx3 = 100 Then: Exit Sub Me.tx2 = Me.tx2 - 100 Me.tx3 = Me.tx3 - 100 Me.sub_frm.Form.RecordSource = [tx10] Me.sub_frm.Requery والنتيجة يعرض لنا عند النقر على التالي 100 سجل ثم عند النقر الـ 100 التاليه وهكذا ومثله ايضا في زر الامر السابق تحديد الحد الاعلى للسجلات ممكن اخذه بطريقة اليه ولكن انا كتبته بشكل مباشر حاولت ان اكتب الاكواد بطريقة بسيطة لسهولة ايصال المعلومة ولم اضع مثال لكوني اهتم فقط بالجانب النظري تحياني
    1 point
  42. أهلا بك أخي .. تستطيع عمل ذلك من خلال إنشاء عدة استعلامات، ومن لوحة الخصائص Top Values تكتب النسبة أو عدد السجلات المطلوب عرضها .. ثم تنشيء استعلام آخر تكتب فيه نسبة السجلات ومن المعايير تستخدم دالة ()Not In لإخباره بأن يظهر السجلات غير الموجودة في الاسعلام الأول .. وهكذا ( ملاحظة ظريفة 🙂 : عدم إرفاق السائل لملف للتطبيق عليه ، يعني أنه يكتفي بالشرح النظري ولا يحتاج للتطبيق العملي )
    1 point
  43. 1 point
  44. وعليكم السلام-يمكنك استخدام هذه المعادلة =IF(YEAR($B4)<YEAR(Table1[[#Headers],[Jan-22]]),1,IF(AND(YEAR($B4)=2022,MONTH(Table1[[#Headers],[Jan-22]])>=MONTH($B4)),1,"")) 1مقارنة التاريخ.xlsx
    1 point
  45. ممتاز استاذ مجدى بارك الله فيك وجزاك الله كل خير
    1 point
  46. ايه الروائع ديه؟ ... أحسنت استاذ مجدى وجزاك الله كل خير
    1 point
  47. جزاك الله خيرا اخى ومهندسنا العزيز @Eng.Qassim ع مشاركتك معنا الحلول واثراء الموضوع 🌹 ويوجد طريقه اخرى من باب اثراء الموضوع وتنوع الحلول باستخدام TempVar انشى مديول جديد وضع تعريف المتغير فقط Public intID As TempVar ثم فى حدث الحالى للنماذج قم بالاسناد كالتالى TempVars!intID = Me.ID.Value ثم فى الاستعلام وفى المعيار للمعرف [TempVars]![intID] بالتوفيق
    1 point
×
×
  • اضف...

Important Information