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

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

  1. أ / محمد صالح

    أ / محمد صالح

    أوفيسنا


    • نقاط

      15

    • Posts

      4479


  2. د.كاف يار

    د.كاف يار

    الخبراء


    • نقاط

      14

    • Posts

      1681


  3. Eng.Qassim

    Eng.Qassim

    الخبراء


    • نقاط

      13

    • Posts

      2387


  4. ناقل

    ناقل

    الخبراء


    • نقاط

      6

    • Posts

      658


Popular Content

Showing content with the highest reputation on 07/29/21 in all areas

  1. السلام عليكم استاذ ابو عبد الله طلبك هو تسلسل يعتمد على تغير الرقم والحرف بهذه الحالة هناك طريقتين الاولى : ثبات الحرف وتغير الرقم وصولا الى الرقم 99999 ثم يبدا الترقيم من جديد مع حرف جديد الثانية : ثبات الرقم وتغير الحروف وصولا الى zzzzz ثم يبدا الترقيم من جديد مع رقم جديد فالامر يشبه ورقة الاكسل الاولوية للصف ام للعمود احد الامثلة يشير الى الطريقة الاولى لكن للتاكد اي الطريقتين طلبك وعذرا للاطالة DB.rar
    3 points
  2. جرب هذا الكود: Function NextCode(PrevCode As String) As String Dim fL As String Dim sL As String Dim No As Byte 'Validation NextCode = PrevCode If Len(PrevCode) <> 4 Then Exit Function If Not IsNumeric(Right(PrevCode, 2)) Then Exit Function fL = Mid(PrevCode, 1, 1) sL = Mid(PrevCode, 2, 1) No = Mid(PrevCode, 3, 2) If Not fL Like "[A-Z]" Then Exit Function If Not sL Like "[A-Z]" Then Exit Function 'Start Coding ---------------------------------- If No < 99 Then No = No + 1 NextCode = fL & sL & Format(No, "00") Exit Function End If If sL < "Z" Then No = 1 sL = Chr(Asc(sL) + 1) NextCode = fL & sL & Format(No, "00") Exit Function End If If fL < "Z" Then No = 1 fL = Chr(Asc(fL) + 1) NextCode = fL & sL & Format(No, "00") 'Exit Function End If End Function Sub test() Dim Seq As Integer Dim NewCode As String NewCode = "AA00" For Seq = 1 To 10000 NewCode = NextCode(NewCode) Debug.Print NewCode If NewCode = "ZZ99" Then Exit For Next Seq End Sub في حالة أن أردت الرقم يبدأ من صفر بدل السطرين من No = 1 إلى No = 0
    2 points
  3. جرب هذا التعديل Private Sub CommandButton2_Click() Dim i As Long Me.ListBox1.CLEAR 'لعمل رأس الاعمدة For a = 1 To 6 Me.ListBox1.AddItem Sheet3.Cells(1, a) Next a Me.ListBox1.Selected(0) = True End Sub
    2 points
  4. وعليكم السلام-يمكنك استخدام هذه المعادلة وبما انك لم تقم برفع الملف.. على سبيل ان الرقم موجود بالخلية A2 , فستكون الإجابة أيضاً بدون ملف =CEILING(A2,0.5)
    2 points
  5. اعتقد المشكلة ايضا عند حدث فتح النموذج Private Sub Form_Open(Cancel As Integer) 'DoCmd.GoToRecord , , acNewRec Me.ass.SetFocus End Sub جربت سجل جديد ولم يحذفه
    2 points
  6. السلام عليكم - يمكنك استخدام هذه المعادلة =COUNTIF($A$2:$A$57,$H2) test.xls
    2 points
  7. المطلوب غير منطقي أريد كود (هذا اعتراف بأنه كود) وجميع الأكواد لن تعمل إلا إذا قام المستخدم بتفعيل الماكرو ربما أن يفتح الملف على شيت به صور وشرح لطريقة تفعيل الماكرو يؤدي الغرض مثل هذه الصور مع كتابة عبارات مثل : حتى يعمل الملف بصورة صحيحة يجب الضغط على زر تمكين المحتوى Enable content أو ضبط الإكسل على الموافقة على تشغيل جميع الأكواد بهذه الطريقة بالتوفيق
    2 points
  8. اتفضل هذا التعديل يابو الحسن فانت بحاجة الى مقارنة التاريخ بنطاق تواريخ السنوات المالية ملاحظة يجب ان لا يكون حقل السنة المالية متاحا لكي يتم تنفيذ الشرط سوف تظهر السنة المالية اذا كان التاريخ ضمن نطاق التواريخ في الجدول و غير ذالك فإن القيمة ستكون صفر 0 DATA14.zip
    2 points
  9. النموذج المرتبط هو النموذج الذي يربط أو يتصل بالجدول. جميع البيانات التي يتم عرضها في النموذج مرتبطة بالجدول. إذا قمت بتغيير أي بيانات في النموذج ، فسوف تتغير في الجدول أيضًا. النموذج غير المنضم هو نموذج فارغ غير متصل بأي جدول. عند فتح النموذج ، لن يتم عرض أي بيانات. نموذج تسجيل الدخول هو مثال على نموذج غير منضم.
    2 points
  10. رءوس الأعمدة لا يتم إضافتها إلى عناصر القائمة وإنما تكون عبارة عن تسميات labels أعلى القائمة تفضل هذا ملفك بعد التعديل إظهار نتائج البحث في listbox.xlsb
    1 point
  11. تكمن المشكلة في أن الأرقام التي يصدرها البرنامج لا يعتبرها الإكسل أرقاما نظرا لأنها تحتوي على رموز غريبة غير مرئية char(254) لذلك ينبغي علينا : أولا إصلاح تنسيق الأرقام ثانيا: إيجاد المفقود من سلسلة الأرقام تفضل هذا كود إجرائين للغرضين السابقين Sub mas() lr = Cells(2, 2).End(xlDown).Row Range("A1:L" & lr).NumberFormat = "General" Range("D1:D" & lr).NumberFormat = "@" Range("L1").Value = "القيم المفقودة" For n = 2 To lr Range("b" & n).Value = Replace(Range("b" & n).Value, Chr(254), "") Range("c" & n).Value = Replace(Range("c" & n).Value, Chr(254), "") Range("d" & n).Value = Replace(Range("d" & n).Value, Chr(254), "") Next n FindMissingNumbers Range("b2:b" & lr), Range("l2") End Sub Sub FindMissingNumbers(InputRange As Range, OutputRange As Range) For i = WorksheetFunction.Min(InputRange) To WorksheetFunction.Max(InputRange) If InputRange.Find(i, LookIn:=xlValues, LookAt:=xlWhole) Is Nothing Then OutputRange.Cells(j + 1, 1).Value = i j = j + 1 End If Next i MsgBox "Done" End Sub بعد تنفيذ الإجراء mas سيتم تعديل الأرقام والتواريخ وتغيير تنسيق رقم الحساب إلى نص لأنه يبدأ بصفر على اليسار ثم إيجاد الأرقام المفقودة ووضعها في العمود L ملحوظة: لا يوجد أرقام مفقودة في ملفك. ولتجربة الكود يمكنك حذف أي عدد من الصفوف بطريقة عشوائية وسيتم كتابتهم في العمود L بالتوفيق
    1 point
  12. خاÙ_ اخÙ_Ù_Ù_.xlsx
    1 point
  13. تم تعديل الملف جرب هذا خام اخميم.xlsx
    1 point
  14. شو نسوي يادكتورنا العزيز ..عملت المثال حسب فهمي ومجال اختصاصي فانا لست مبرمجا وانما مجرد محب للبرمجة .. والسائل لايعطي فهما واضحا ربي يفتحها على الجميع
    1 point
  15. هذا المثال لأخونا @Eng.Qassim انصحك فيه سهل للغاية و تستطيع فهمه و تطبيقه في برنامجك لا تبحث عن حلول معقدة
    1 point
  16. المشكلة انه بيضيف سجل فبمجرد الخطأ يقوم يفتح فورم جديد عبار عن رسالة اذا الغاء و التراجع عن التعديل لابد يكون من آخر نموذج الى على شكل رسالة
    1 point
  17. بالتأكيد .. عند الخروج من النموذج الفارغ سوف ينتقل الى رقم جديد ويحفظ السجل الفارغ لان انت معطي ايعاز عند الفتح يذهب لسجل جديد
    1 point
  18. كذلك توجد لديك نفس المشكلة في النموذج الفرعي تجنب وضع الأحداث عند التركيز تفضل هذا التعديل 2MyStore1.zip
    1 point
  19. شغلك صحيح بس فيه خطأ بسيط حقل السنة رقمي If Nz(DCount("[iPage]", "tbl_Items", "[YEAR] = " & [YEAR] & "[iBill_Number] Like '" & iBill_Number & "' AND [iPage]=" & iPage), 0) <> 0 Then
    1 point
  20. جرب هذا الحل التحديث مع عداد الوقت لكل ثانية لحقل محدد لكي لا يشعر المستخدم بوجود تحديث 😅 Nouveau Microsoft Access Database.accdb
    1 point
  21. تفضل If MsgBox("هل تريد حفظ التغيرات ؟", vbCritical + vbYesNo, "تنبيه") = vbNO Then Cancel = True SendKeys "{ESC}" Else DoCmd.RunCommand acCmdSaveRecord Exit Sub End If
    1 point
  22. على كل قمت لك بالتعديلات التالية في مثالك: - تحويل صناديق التسمية إلى صناديق نص لاستخدام القيم العليا في فحص صناديق درجات الطالب. - تسمية صناديق درجات المواد ودرجات الطالب. - عمل فحص للقيم المدخلة لصناديق الطالب. - عمل دالة الجمع وإضافتها لأحداث بعد التعديل لصناديق درجات الطالب. -------------------------------- - إعادة تنسيق صناديق درجات الطالب. - تم التعديل على فحص المدخلات بناء على ملاحظتك التي تم حذفها من طلبك قبل الأخير. - تم تعديل نوع مجموع درجات الطالب في الكود بعد طلبك الأخير وبعد فحصي للمثال مرة أخرى وألغيت رفعها في آخر لحظة. إن شاء الله تكون الأمور واضحة ، يعني كل مافي المثال هو جهدي ماعدا تبديل نوع المتغير Total2.
    1 point
  23. عشان لا تكون الأرقام صحيحة و لا تجبر الكسور يجب تحويل المتغيير الى Double مرفق الملف بعد التعديل دالة.accdb
    1 point
  24. 1 point
  25. السلام عليكم مشاركة مع استاذ ناقل ملاحظة : التعديل في حدث بعد التحديث للتاريخ تم التعديل في جدول المواد حيث تم تغيير حقل Year الى Year1 وعليه تم التغيير في النموذج اعلاه ارجو ان لا يسبب لك مشكلة DATA14-1.rar
    1 point
  26. وعليكم السلام ورحمة الله وبركاته بالاضافة الى ما تفضل به الاخوة الكرام ولهم جزيل الشكر وبحسب ترتيب حروف " ابجد هوز حطي كلمن " وكما هو موجود بالنموذج 14 حرف وكما هو موضح بمثالك ( الحرف الاول - الحرف الثاني ... الخ ) يكون الكود كالتالي Option Compare Database Option Explicit Private Sub XTotal_Exit() If Me.A = "ا" Then Me.A1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.A & "'") Else Me.A1 = 0 End If If Me.B = "ب" Then Me.B1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.B & "'") Else Me.B1 = 0 End If If Me.C = "ج" Then Me.C1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.C & "'") Else Me.C1 = 0 End If If Me.D = "د" Then Me.D1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.D & "'") Else Me.D1 = 0 End If If Me.E = "ه" Then Me.E1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.E & "'") Else Me.E1 = 0 End If If Me.F = "و" Then Me.F1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.F & "'") Else Me.F1 = 0 End If If Me.G = "ز" Then Me.G1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.G & "'") Else Me.G1 = 0 End If If Me.H = "ح" Then Me.H1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.H & "'") Else Me.H1 = 0 End If If Me.I = "ط" Then Me.I1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.I & "'") Else Me.I1 = 0 End If If Me.J = "ي" Then Me.J1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.J & "'") Else Me.J1 = 0 End If If Me.K = "ك" Then Me.K1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.K & "'") Else Me.K1 = 0 End If If Me.L = "ل" Then Me.L1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.L & "'") Else Me.L1 = 0 End If If Me.M = "م" Then Me.M1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.M & "'") Else Me.M1 = 0 End If If Me.n = "ن" Then Me.n1.Value = DLookup("[N]", "Query1", "[L] ='" & Me.n & "'") Else Me.n1 = 0 End If Me.tot.Value = Nz(A1) + Nz(B1) + Nz(C1) + Nz(D1) + Nz(E1) + Nz(F1) + Nz(G1) + Nz(H1) + Nz(I1) + Nz(J1) + Nz(K1) + Nz(L1) + Nz(M1) + Nz(n1) ' Debug.Print Me.tot End Sub Private Sub A_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub b_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub c_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub d_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub e_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub f_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub g_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub h_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub i_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub j_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub k_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub l_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub m_Exit(Cancel As Integer) Call XTotal_Exit End Sub Private Sub n_Exit(Cancel As Integer) Call XTotal_Exit End Sub 001.rar تحياتي
    1 point
  27. لقد عملت نسخة من النموذج وعدلت عليه وتركت الأصل كما هو للمقارنة. أبجد_هوز.mdb
    1 point
  28. الامر سهل انظر الى مواقع الاسهم في الصورة واضغط على النقاط الثلاث في الصورة مكان السهم يظهر لك استعلام لبيانات مربع القائمة ... طبق على مثالك ..
    1 point
  29. طبق هذا المثال لديك .... ناقل.accdb
    1 point
  30. حاول اختيار هذه القيمة لهذه الخاصية كما هو في الصورة ، فستتخلص من التداخل في تحرير نفس السجل لأكثر من مستخدم.
    1 point
  31. الشكر لله اخي ابو اشرف طيب بالنسبة للعميل هل ستطلب منه اجراء التعديل الافضل ان نعمل احد الامرين اذا كان لديك خبرة في التعامل مع ملفات الرجيستري ممكن نعمل ملف reg يتم تشغيله على جهاز العميل يقوم باجراء كافة التعديلات الخاصة باللغة والمنطقة والارقام وصيغة التاريخ جميعها او اي منها ** وللوصول للنتيجة الصحيحة عندما نرغب بعمل ملف ريجستري لتعديل تنسيق الارقام نحتاج الى تغيير قيمتين ضمن تبويب International في الرجيستري NumShape = 1 sNativeDigits = 0123456789 وهذة هي طريقتي اعمل ملف دفعي bat يعمل عن طريق نقطة الاوامر بنظام التشغيل dos يقوم بالاتي تغيير الاعداد المشار اليها اعلاه يقوم بعمل اختصار للبرنامج على سطح المكتب تخفيض امان الماكرو الطريقة الثانية عن طريق كود قام الاستاذ الفاضل @SEMO.Pa3x " د.حسنين " بتعديله ليشمل تعديل تنسيق الارقام اضافة الى امور اخرى 👇 في جميع الاحوال طريقة الدكتور حسنين اكثر امان وبالذات لمن ليس لديه خبرة كافية بالتعامل بالباتشات ومشاكل تعديلات الريجستري ـــــــــــــــــــــــــــــــــــــــــــــــــ * لا انصح باجراء التعديلات لمن ليس لديه الخبرة واخلي مسئوليتي عن اي خطأ ** احتفظ بنسخة من الريجستري قبل اي تعديل يجنبك عناء اعادة تنصيب نظام التشغيل
    1 point
  32. أشك في ضبط إعدادات اللغة العربية في الويندوز حاول تنفيذ هذه الخطوات Control panel --> clock and region --> change date, time, number formats --> administrative - current languge for non-Unicode programs تأكد أنها اللغة العربية وإذا قمت بتغييرها سيتم عمل إعادة تشغيل للجهاز بالتوفيق
    1 point
  33. العبارة مع الاستعلام يعملان بالتعدل الظاهر في الصورة لدي بدون مشاكل ... تفضل الملف بعد التعديل .... New (5).rar
    1 point
  34. اخي الحقل الذي تنحث فيه ليس فيه عبارات للباج فيها الاسم والعنوان فقط .... طبق الموجود في الصورة ...
    1 point
  35. الجداول بسيطة ويمكنك عمل ملف وارفاقه .. هل المستشفى (س) هو الذي يحيل المشروع الفلاني الى الشركة الفلانية بعقد رقمه كذا؟ اقصد مثلا لو في دائرة صحة معينة ولديها عدد من المستشفيات فتقوم تلك الدائرة بأحالة مشاريع لتلك المستشفيات فينبغي لديها نظام لمعرفة تلك المشاريع ومبالغها وارقام العقود واسماء الشركات المحال عليها العمل ولكل مستشفى.. وانت تقول استخدمت حقل محسوب فلأي غرض طالما ان مبالغ العقود ثابتة ام انك تريد ان تطرح منها المبالغ المستلمة لاي مرحلة من مراحل التنفيذ
    1 point
  36. السلام عليكم انت تريد عدد حقل prop وهذا الحقل غير موجود في جدول2 والصحيح ان يكون geab والمعادلة كالتالي abs: DCount("[geab]";"22";"[s]='" & [1]![S] & "'") ASD123.accdb تحياتي
    1 point
  37. يجب ان تكون الحقول غير منظمة حتى لا يتم تسجيل البيانات مباشرة الا بعد الضغط على حفظ
    1 point
  38. تفضل هذا مطلوبك الثاني Sub tar7eel() For n = 2 To Cells(Rows.Count, 9).End(xlUp).Row If Range("i" & n).Value = Range("d2").Value Then Range("j" & n).Value = Range("e2").Value Next n End Sub بالتوفيق
    1 point
  39. حسب فهمي للمطلوب يمكنك استعمال الإجراء التالي وربطه بزر أو شكل أو صورة Sub tar7eel() Range("j2").Value = Range("e2").Value End Sub ومتى تريد تحديث قيمة J2 يتم الضغط على الزر وتنفيذ الإجراء
    1 point
  40. اذا كان لديك حقل حسابي استخدم الدالة NZ لتجعل الحقل الفارغ صفر حتى لايسبب لك مشاكل اما اذا تقصد نفس الحقل فأستخدم IIf(IsNull([Feild1];0;[Field1]))
    1 point
  41. يفضل أن تبدأ في تصميم ملفك وتسمي فيه الشيتات كما ترغب وتنسق صفحة سجل القيد كما تشاء وترفق ملفك للتعديل عليه ثم تعرض هنا ما المطلوب بمنتهى التفصيل حتى يمكن للجميع مساعدتك
    1 point
  42. بعد إذن أخي الكريم سليم لعرض الشيتات الملونة باللون الأحمر فقط يمكنك تغيير الشرط الخاص بلون الشيت من If col Then إلى If col = RGB(255, 0, 0) Then وبالنسبة لعمل قائمة منسدلة للشيتات باللون الأزرق يمكنك استعمال نفس الكود مع تغيير اسم الكومبوبوكس وكود اللون If col = RGB(0, 0, 255) Then بالتوفيق
    1 point
  43. جرب هذا ..كل الطابعات ستكون في مربع التحرير وعند اختيار الطابعة ستكون هي الفعالة printerA.accdb
    1 point
  44. جرب هذا الكود.. لكنه يعطي خطأ اذا كانت الطابعة غير موجودة
    1 point
×
×
  • اضف...

Important Information