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

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      9

    • Posts

      9,814


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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      7

    • Posts

      8,723


  3. husamwahab

    husamwahab

    الخبراء


    • نقاط

      6

    • Posts

      1,047


  4. Ahmed_J

    Ahmed_J

    04 عضو فضي


    • نقاط

      3

    • Posts

      734


Popular Content

Showing content with the highest reputation on 14 نوف, 2020 in all areas

  1. جرب هذا الملف Option Explicit Sub test() Dim ar Dim i%, Formul$, K ar = Array("+", "-", "'", "?", """""", ",", "/", "@") For K = 1 To Range("a1").CurrentRegion.Rows.Count Formul = Trim(Replace(Range("A" & K), ar(0), ",")) For i = 1 To UBound(ar) Formul = Replace(Formul, ar(i), ",") Next Cells(K, 3) = Evaluate("sum(" & Formul & ")") Formul = "" Next End Sub shoaip.xlsm
    2 points
  2. وعليكم السلام 🙂 اخي الفاضل ، في المرات القادمة ، رجاء مراعاة قوانين المنتدى بوضع عنوان يدل على محتوى السؤال 🙂 اما سؤالك : خطأ Over Flow معناه ان القيمة اكبر من حجم المتغير ، المتغير x و i عندك integer ، فيجب تكبير هم الى Long . جعفر
    2 points
  3. وعليكم السلام 🙂 طريقة العمل: 1. انا بعمل حقل جديد ، ونوعه لازم يكون رقم . 2. في النموذج ، نختار نعمل "اختيار مجموعة" . نعمل مربع ، ونلغي بقية العملية . وعندك الاختيار في اختيار احد هذه الاشكال . نلاحظ انه لما يجي الماوس على المربع ، تلقائيا لونه يتغير للأسود ، مما يعني ان المربع تعرف على ان هذا الكائن الجديد هو تابع للمربع . ونعمل تغيير في اسم الكائن ، ونجعله مرتبط بالحقل Paid . الشيء الاخير اللي لازم نعمله هو ، نعطي لكل اختيار رقمه ، والاختيار الثاني ممكن يكون 2 ، والثالث 3 ، والرابع 4 ، ولا يكون لإختيارين نفس الرقم ، ولا يهم الاسم Option36 . نلاحظ الآن عند الاختيار ، فتلقائيا يعطينا اختيار واحد فقط : . وبما اننا في النهاية اخترنا الاختيار الثالث ، نرى في الجدول انه تم حفظ الرقم 3 : . هذه الطريقة تُغنينا عن مجموعة من الحقول 🙂 جعفر 1284.officna_q.accdb.zip
    2 points
  4. الكود اللازم مع التنسيق بعد الترحيل Option Explicit Dim Source As Worksheet Dim Target As Worksheet Dim Mx%, i%, rO% Dim Ar_S Dim Ar_T '++++++++++++++++++++++++++++++++++++++++++++ Sub Fayez() Set Source = Sheets("sheet1") Set Target = Sheets("sheet2") Mx = Target.Cells(Rows.Count, 2).End(3).Row + 1 Ar_S = Array("D7", "D9", "D11", "G7", "G9", "G11", "G13") Ar_T = Array("B", "C", "D", "E", "F", "G", "H") For i = LBound(Ar_S) To UBound(Ar_S) Target.Cells(Mx, Ar_T(i)) = Source.Range(Ar_S(i)) Source.Range(Ar_S(i)) = vbNullString Next 'هذا السطر لحذف البيانات المكررة اذا لا تريده يمكنك حذفه '+++++++++++++++++++++++++++++++++++++++ Target.Range("A1:H" & Mx).RemoveDuplicates _ Columns:=Array(1, 2, 2, 2, 5, 6, 7), Header:=1 '++++++++++++++++++++++++++++++++++++++++ rO = Target.Range("b2").CurrentRegion.Rows.Count If rO > 1 Then With Target.Range("b2").CurrentRegion. _ Offset(1).Resize(rO - 1) .HorizontalAlignment = 1 .Borders.LineStyle = 1 .InsertIndent 1 .Font.Bold = True .Font.Size = 16 .Cells(1, 1).Resize(rO - 1).Value = _ Evaluate("row(1:" & rO - 1 & ")") End With End If End Sub الملف مرفق esam1983.xlsm
    2 points
  5. صراحة لا أعرف عن اي يوزر تتكلم هناك اكثر من 15 يوزر ارفع نموذج عن الملف مبسط (صفحتين فقط واحدة للترحيل واخرى للاستقبال) ولا يحتوي على كل هذه اليوزر ولا كل هذه الـــ Modules التي عددها بفوق اللــ 20
    2 points
  6. السلام عليكم ورحمة الله وبركاته طرح في موضوع سابق موضوع رسائل الواتس اضع بين يديكم برنامج يقوم بارسال رسائل الواتس بدون حفظ الرقم في جهات الاتصال ويمكن استخدامه وتطويره لارسال رسائل للعملاء مثلا جربوه واعطونا انطباعكم حوله لتطويره والاستفادة منه ملاحظة هامة يجب تنصيب رنامج الواتس في جهازك ليعمل البرنامج هناك مدة زمنية وضعتها في الكود للتنفيذ مقدارها 40 يمكنك تغييرها ليتناسب مع سرعة جهازك ...... الطريقة سهله أوضحها باختصار مع اقتران كل شرح بالصورة ..... أولا : الذهاب للرابط https://www.whatsapp.com/download وتحميل برنامج الواتس حسب نسخة الويندوز لديك ( 64 - 32 )bit ثانيا: تشغيل برنامج الواتس والتسجيل عن طريق حسابك في الواتس وذلك بمسح البركود الظاهر في البرنامج من خلال البرنامج ( حسب الصورة ) ثالثا : عند اول تشغيل تظهر لك من خلال المتصفح رسالة بالسماح بفتح الارتباط بهذا النوع ( ضع علامة صح مثل الصورة ) رابعا : عند عمل البرنامج للمرة الثانية لا يحتاج تكرار هذه العمليات ( فقط انتظر اتمام المهمة ) هناك في الكود زمن افتراضي وضعته هو 40 ثانية أن رأيت جهازك والنت سريع حاول تقليل الزمن لكسب سرعة في الارسال أو العكس بالعكس تسجيل الارقام بالصيغة الدولية .... منتظر انطباعاتكم حول البرنامج ؟؟؟؟ WhatsApp_kan.accdb هنا تجدون الموضوع السابق ......
    1 point
  7. السلام عليكم اخي احمد 🙂 رجاء الالتزام بقوانين المنتدى ، وعمل موضوع منفصل لكل سؤال 🙂 تمت الاجابة على السؤال اصل الموضوع ، لذلك ، رجاء فتح موضوع جديد لبقية اسئلتك ، ولا مانع من ان يرد الاخ حسام على آخر حيثية من سؤالك 🙂 جعفر
    1 point
  8. هاي سهلة ، برنامجي يدخل تاريخ اليوم عن طريق الدالة Date في الاستعلام الالحاقي ، فبدلا عنه يمكننا استعمال طريقتك ، وشفت ان الحقل TxtUm يعطي اليوم كاملا ، فممكن نستعمل هذا اليوم الهجري من تقويم ام القرى ، ولكن ، شفت ان عندك تواريخ ام القرى وتواريخ ميلادية ، فهل سيكون عندك خلط بينهم ، وكيف؟ ممكن اضافة حقل في الجدول Emp يدل على وجود ان الموظف مداوم لذلك اليوم ، حقل نعم/لا مثلا ، وفي جميع الاستعلامات مثل qry_1 ، نصفي الموظفين المداومين في ذلك اليوم. اشرح لي هذه النقطة وبالتفصيل ، فعسى ان نتوصل الى طريقة سهلة ومرضية ان شاء الله 🙂 جعفر
    1 point
  9. انا في اكسل صف ابتدائي فإذا لم تجدي رد من الاعضاء هنا ، فأرى ان تنقلي سؤالك مع مثالي المرفق ومثالك الاخير الى منتدى اكسل اعتقد بأنك ستجد بغيتك هناك ان شاء الله
    1 point
  10. 1 point
  11. تفضل اخي الكريم مع تعديل ما يلزم Dim msg1, msg2 As String msg2 = "يجب عدم ترك حقول فارغة للاستمرار" Dim ctl As Control For Each ctl In [اسم النموذج الفرعي].Controls If TypeName(ctl) = "TextBox" Then If IsNull(ctl) Or ctl = "" Or ctl = 0 Then If msg1 = "" Then msg1 = ctl.Name Else msg1 = msg1 & vbNewLine & ctl.Name End If End If End If Next ctl If msg1 = "" Then DoCmd.RunCommand acCmdSaveRecord MsgBox "تم الحفظ بنجاح", vbInformation, "تأكيد" Else MsgBox msg2 & vbNewLine & msg1, vbCritical + vbMsgBoxRight, "تنبيه بوجود حقول فارغة" End If
    1 point
  12. الله يرحم والديك يا أخ أحمد هي الإجابة
    1 point
  13. هذا مثال من عمل معلمي الأستاذ القدير عبدالله باقشير ( خبور ) ارجوا ان تجدي به ما يحقق حاجتك استيراد وتصدير اكسل إلى اكسس.rar
    1 point
  14. طريقة العمل : عند عمل يوم جديد ، نقوم بإدراج جميع الموظفين من الجدول Emp الى الجدول tbl_Shifts ، ويكون رقم الشفت امام كل سجل = 0 ، في النموذج : كل نموذج فرعي يأخذ بياناته من الجدول tbl_Shifts ، ومن نفس الحقل (لا توجد جقول مختلفة لكل شفت) ، ويعتمد على رقم النموذج الفرعي (رقم الشفت) ، فيُظهر رقم الشفت الخاص به ، او صفر (ومعناه السجلات التي لم يتم اختيارها بعد) ، ولما نختار اسم الموظف في النموذج الفرعي ،فهو يغير رقم الشفت من صفر الى رقم الشفت ، بإستخدام الدالة De_Select(1) مثلا ، والتي تدل على اننا في الشفت 1. هناك الكثير من الاختصارات في الكود ، فمثلا ، بدل ان نعمل كود خاص لكل نموذج فرعي ، عند اختيار الاسم : نغير الشفت من صفر الى رقم الشفت ، نحفظ السجل ، نطلب البيانات من اول وجديد لجميع هذه النماذج الفرعية ، حيت ان الاختيار سيغير مكان الموظف الى شفت الذي ينتمي (وهذه كانت المعضلة في برنامجك السابق) ، ثم نجمع الحقول التي تم اختيارها في كل نموذج فرعي ، ونضع القيمة في الاسفل ، هنا الدالة De_Select تقوم بجميع هذه الخطوات ، ولكل النماذج 🙂 وتلاحظ ان النماذج الفرعيه لا يوجد بها كود اصلا ، وذلك لأننا ننادي الكود من اعدادات الحقل nSelected (بدل ان نعمل حدث بعد التحديث 🙂 ) . جعفر
    1 point
  15. السلام عليكم حبيب قلبي استاذ @husamwahab والله انا تعبتك معي كثير بس شو اعمل محتاج لهذا الملف في عملي جدا جدا لو مافيها اي احراج الك ممكن تعمل لي الطريقتين كل طريقة في ملف منفصل واكون شاكر لك جدا جدا حتى نختار الاسهل والافضل انت عدل على الملف براحتك المهم النتائج وشكرا كثيرا test-9.accdb
    1 point
  16. عليكم السلام استاذ Ahmed_J ترتيبك للتاريخ غير صحيح حيث ان المبلغ في جدول وتاريخه في جدول اخر وليس هناك اي علاقة بين الجدولين هناك طريقتين صحيحتين الاولى : ان تكون الاضاقة وتاريخها في الجدول الثالث فقط والجدول الثاني للمبلغ الاول فقط وسبق وان اقترحت عليك هذه الطريقة وهي مرنة بادخال البيات والتعامل معها بالاضافة الى دقتها الثانية : ان تجعل حقل التاريخ في الجدولين مثل حقل المبلغ المضاف ويتم التعامل معه بالكود كما في المبلغ المضاف فاي الطريقتين انسب بالنسبة لك
    1 point
  17. أهلا بالاستاذ @ابو عارف وشكرا لردك الطيب .. اعتذر عن تاخر الرد بالنسبة Refrish تم عملها من قبل وكذلك Requery دون فائدة وبالنسبة الفاصل الزمني تم تجربته قبل ايام دون فائدة
    1 point
  18. تفضل التعديل تعريف الاعداد الكبيرة يكون ب Long بدل Integer Database2.rar تفضل التعديل تعريف الاعداد الكبيرة يكون ب Long بدل Integer
    1 point
  19. حبيبي استاذ Ahmed_J انا بالخدمة ارسل تعديلك الاخير للعمل على التاريخ الطريقة ستكون بنزول التاريخ مع المبلغ اذا كانت جيدة بالنسبة لك فساجري التعديل على الملف الذي سترسله
    1 point
  20. جرب المرفق انظر التجربة بالصور عندي المكتبه 1 (2).xlsm
    1 point
  21. جزاكم الله كل خير اخي حسام هذا المطلب تماما شكراً جزيلاً
    1 point
  22. السلام عليكم @husamwahab مابعرف شو اقول لك , الشكر قليل بحقك الله يبارك فيك ويحفظك من كل مكروه يارب كل سجل هو مبلغ لوحدة في حقل المبلغ المضاف الغاية منه معرفة المبلغ الذي تم اصافتة في اي تاريخ فقط وليس له علاقة بالعمليات الحسابية بالنموذج (هو توضبحي فقط) الملف هيك شغال تمام فقط ملاحظه : عند اضافة اي مبلغ بتاريخ معين يستمر المبلغ المضاف بالنزول لاسفل السجلات هل ممكن تثبيته امام التاريخ الذي اضيف فيه ام لا
    1 point
  23. الكتابة في اكسل والتخزين في اكسس مباشرة بمجرد الكتابة ، هذه لا اعلم لعلك تجد مطلوبك من الخبراء في منتدى اكسل ولكن الذي اعلمه ويمكنني مساعدتك فيه هو انه يمكن من خلال العمل على اكسل الاستيراد والتصدير الى جدول في اكسس
    1 point
  24. تفضل هذه المحاولة ارجو ان تكون مفيدة لك test-8.rar
    1 point
  25. السلام عليكم اذهب الي خيار اللغة من اسفل الصفحة واختار اوفيسنا
    1 point
  26. عليكم السلام استاذ Ahmed_J حسب توضيحك ان هناك مبلغين مضافين هل الامر سيقتصر على مبلغين مضافين فقط ام لا واذا كان هناك اكثر من مبلغين مضافين كيف ستكون مخرجات البيانات في النموذج
    1 point
  27. السلام عليكم جرب أمر Refrish في حدث في الحالي اوقم بتقليل مدة الفاصل الزمني للتحديث في اعدادات عميل
    1 point
  28. تفضل 🙂 1. اضفنا الزر ، وحقل آخر ، يأخذ استعلام الالحاقي بأخذ قيمته (اقرأ ملاحظات تفاصيل الكود ) : . 2. هذا كود الحدث على الزر : Private Sub cmd_Append_Click() 'نأخذ اكبر قيمة من الجدول B Me.Which_Invoice_no = DMax("[Invoice_no]", "A") 'نعمل مقارنة بين القيمتين ، ونأخذ الاكبر If Me.Invoice_no > Me.Which_Invoice_no Then Me.Which_Invoice_no = Me.Invoice_no End If DoCmd.SetWarnings False 'نضيف هذه القيمة والتاريخ الى الجدول A DoCmd.OpenQuery "qry_Append_to_tbl_A" 'نحذف هذا السجل من الجدول B DoCmd.OpenQuery "qry_Delete_from_tbl_B" DoCmd.SetWarnings True Me.Requery End Sub . 3. هذا استعلام الالحاقي الى الجدول A . 4. وهذا استعلام الحذف من الجدول B . ولكن اذا تأخذ رأيي ، فلا داعي لوجود جدولين ، واستعلام الحاقي وآخر حذف ، وكود وووو ، فقط استعمل جدول واحد ، مثلا الجدول A ، واضف اليه حقل جديد بإسم "هل تم التدقيق" ، نوع نعم/لا ، بحيث المدقق يعمل اشارة صح على السجل ، بأنه تم تدقيقه ، وبهذه البساطة 🙂 جعفر 1283.New Microsoft Access.accdb.zip
    1 point
  29. الخطوات اللي اتبعتها : 1. إلغاء اخذ القيمة الافتراضية من اعدادات الحقل : . 2. عملنا وحدة نمطية لعمل التسلسل ، ونناديها كلما احتجنا الى اضافة رقم جديد : . 3. والسر في نجاح هذه العملية ، هي حفظ السجل مباشرة بعد اخذ رقم التسلسل الجديد : . جعفر 1282.InvoiceSale_6.accdb.zip
    1 point
  30. السلام عليكم عندي ملف ارجو النظر ما فيه السلام عليكم عندي خلية تحتوي على عدة ارقام مثل (1+2+7+10+15) هل ممكن الجمع - وكما مبينة النتائج بالملف المرفق ................ تـــم تعــديل الــمـــلف جمع خلايا.xlsx
    1 point
  31. بارك الله فيك استاذ محي ... ولإثراء الحل -يمكنك استخدام هذه المعادلة , مصفوفة (Ctrl+Shift+Enter) =SUMPRODUCT(0+(0&TRIM(MID(SUBSTITUTE(B2,"+",REPT(" ",10)),ROW($A$1:$A$10)*10-9,10)))) معادلة جمع1.xlsm
    1 point
  32. حسب فهمي للموضوع: فقط اضغط على المربع الأزرق جمع خلايا.xlsm
    1 point
  33. اخي الكريم حسب فهمي للموضوع تريد ان الخلايا التي بها الرقم ( 2+1+7+10+15) تجمع مع باقي الخلايا في العمود F وكلا حسب الرقم الموضح امامه يعني 65 = 700 وهكذا دي مقبلتنيش قبل كده ( المعادلة لازم تبدا = في البداية علشان يتعرف الاكسل عليها كرقم ) بس انت ممكن تفصل الاعداد في كل صف بدل ما تكتبهم في صف واحد وفي العمود F تستخدم ليهم SUMIF او SUMIFS زي المعادلة التالية =SUMIF($A$1:$B$12,E2,$B$1:$B$12) انا عملتلك شيء بسيط اتمنى يكون المطلوب جرب الاكسل المرفق جمع خلايا.xlsx
    1 point
  34. جرب هذا الكود في كل من الملفين (يمكن ان يكون مفتاج الحل) و تكتشف الفرق Sub difference() Dim my_rg As Range Set my_rg = Range("a10").CurrentRegion my_rg.Select End Sub
    1 point
  35. السلام عليكم عليكم اخواني واخواتي اليوم حاب اقدم لكم برنامج المقارنة بين قاعدتين اكسس طبعا البرنامج معمول بالفجول بيسك للصديق العزيز واخونا الغالي بالعمل المبرمج ابو وديع طبعا البرنامج يقوم بالمقارنه بين قاعدتين اكسس ويقوم بإستخراج الفروقات التاليه الجداول غير الموجوده الحقول المتطابقه الحقول غير الموجوده جداول ليست في القاعده الجديده جداول ليست في القاعده القديمه حقول ليست في القاعده الجديده حقول ليست في القاعده القديمه حقول متطابقه مع اختلاف نوع البيانات وللتحميل من خلال الرابط التالي https://up.top4top.net/downloadf-1236awwgg1-rar.html ولمعرفة كيفية استخدام البرنامج يرجى الدخول على رابط الشرح الموجود بالاسفل
    1 point
  36. تصدير قاعدة بيانات التلاميذ من الاكسيل إلى قاعدة البيانات الخاصة بالحكومة الاكترونية الملف في الرابط التالي https://drive.google.com/file/d/1DP739A1BdYCGxTzIN_WYc_EFKYIcKvsq/view?usp=sharing وللاستفسار أنا في الخدمة وسوف أقوم بعمل فيديو لشرح كيفية تسجيل البيانات في الاكسيل ثم رفع على موقع الوزارة دفعة واحدة وذلك في حال طلب ذلك من الاعضاء الكرام إن شاء الله تعالى
    1 point
  37. اخي يمكنك ذلك بطريقتين الاولى الدخول الى خصائص النموذج - بيانات - ادخال بيانات \ حول القيمة الى نعم وبهذه الطريقة لا يمكنك استعراض السجلات السابقة في النموذج فقط ادخال بيانات جديدة الثانية وضع كود الانتقال الى سجل جديد عند الفتح والكود هو DoCmd.GoToRecord acDataForm, , acNewRec
    1 point
×
×
  • اضف...

Important Information