نجوم المشاركات
Popular Content
Showing content with the highest reputation on 07/29/21 in all areas
-
وهذه مشاركتي مع اخواني Loop.accdb3 points
-
السلام عليكم استاذ ابو عبد الله طلبك هو تسلسل يعتمد على تغير الرقم والحرف بهذه الحالة هناك طريقتين الاولى : ثبات الحرف وتغير الرقم وصولا الى الرقم 99999 ثم يبدا الترقيم من جديد مع حرف جديد الثانية : ثبات الرقم وتغير الحروف وصولا الى zzzzz ثم يبدا الترقيم من جديد مع رقم جديد فالامر يشبه ورقة الاكسل الاولوية للصف ام للعمود احد الامثلة يشير الى الطريقة الاولى لكن للتاكد اي الطريقتين طلبك وعذرا للاطالة DB.rar3 points
-
جرب هذا الكود: 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 = 02 points
-
جرب هذا التعديل 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 Sub2 points
-
وعليكم السلام-يمكنك استخدام هذه المعادلة وبما انك لم تقم برفع الملف.. على سبيل ان الرقم موجود بالخلية A2 , فستكون الإجابة أيضاً بدون ملف =CEILING(A2,0.5)2 points
-
اعتقد المشكلة ايضا عند حدث فتح النموذج Private Sub Form_Open(Cancel As Integer) 'DoCmd.GoToRecord , , acNewRec Me.ass.SetFocus End Sub جربت سجل جديد ولم يحذفه2 points
-
السلام عليكم - يمكنك استخدام هذه المعادلة =COUNTIF($A$2:$A$57,$H2) test.xls2 points
-
المطلوب غير منطقي أريد كود (هذا اعتراف بأنه كود) وجميع الأكواد لن تعمل إلا إذا قام المستخدم بتفعيل الماكرو ربما أن يفتح الملف على شيت به صور وشرح لطريقة تفعيل الماكرو يؤدي الغرض مثل هذه الصور مع كتابة عبارات مثل : حتى يعمل الملف بصورة صحيحة يجب الضغط على زر تمكين المحتوى Enable content أو ضبط الإكسل على الموافقة على تشغيل جميع الأكواد بهذه الطريقة بالتوفيق2 points
-
اتفضل هذا التعديل يابو الحسن فانت بحاجة الى مقارنة التاريخ بنطاق تواريخ السنوات المالية ملاحظة يجب ان لا يكون حقل السنة المالية متاحا لكي يتم تنفيذ الشرط سوف تظهر السنة المالية اذا كان التاريخ ضمن نطاق التواريخ في الجدول و غير ذالك فإن القيمة ستكون صفر 0 DATA14.zip2 points
-
النموذج المرتبط هو النموذج الذي يربط أو يتصل بالجدول. جميع البيانات التي يتم عرضها في النموذج مرتبطة بالجدول. إذا قمت بتغيير أي بيانات في النموذج ، فسوف تتغير في الجدول أيضًا. النموذج غير المنضم هو نموذج فارغ غير متصل بأي جدول. عند فتح النموذج ، لن يتم عرض أي بيانات. نموذج تسجيل الدخول هو مثال على نموذج غير منضم.2 points
-
1 point
-
رءوس الأعمدة لا يتم إضافتها إلى عناصر القائمة وإنما تكون عبارة عن تسميات labels أعلى القائمة تفضل هذا ملفك بعد التعديل إظهار نتائج البحث في listbox.xlsb1 point
-
1 point
-
تكمن المشكلة في أن الأرقام التي يصدرها البرنامج لا يعتبرها الإكسل أرقاما نظرا لأنها تحتوي على رموز غريبة غير مرئية 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
-
1 point
-
1 point
-
شو نسوي يادكتورنا العزيز ..عملت المثال حسب فهمي ومجال اختصاصي فانا لست مبرمجا وانما مجرد محب للبرمجة .. والسائل لايعطي فهما واضحا ربي يفتحها على الجميع1 point
-
هذا المثال لأخونا @Eng.Qassim انصحك فيه سهل للغاية و تستطيع فهمه و تطبيقه في برنامجك لا تبحث عن حلول معقدة1 point
-
1 point
-
بالتأكيد .. عند الخروج من النموذج الفارغ سوف ينتقل الى رقم جديد ويحفظ السجل الفارغ لان انت معطي ايعاز عند الفتح يذهب لسجل جديد1 point
-
1 point
-
شغلك صحيح بس فيه خطأ بسيط حقل السنة رقمي If Nz(DCount("[iPage]", "tbl_Items", "[YEAR] = " & [YEAR] & "[iBill_Number] Like '" & iBill_Number & "' AND [iPage]=" & iPage), 0) <> 0 Then1 point
-
1 point
-
جرب هذا الحل التحديث مع عداد الوقت لكل ثانية لحقل محدد لكي لا يشعر المستخدم بوجود تحديث 😅 Nouveau Microsoft Access Database.accdb1 point
-
تفضل If MsgBox("هل تريد حفظ التغيرات ؟", vbCritical + vbYesNo, "تنبيه") = vbNO Then Cancel = True SendKeys "{ESC}" Else DoCmd.RunCommand acCmdSaveRecord Exit Sub End If1 point
-
على كل قمت لك بالتعديلات التالية في مثالك: - تحويل صناديق التسمية إلى صناديق نص لاستخدام القيم العليا في فحص صناديق درجات الطالب. - تسمية صناديق درجات المواد ودرجات الطالب. - عمل فحص للقيم المدخلة لصناديق الطالب. - عمل دالة الجمع وإضافتها لأحداث بعد التعديل لصناديق درجات الطالب. -------------------------------- - إعادة تنسيق صناديق درجات الطالب. - تم التعديل على فحص المدخلات بناء على ملاحظتك التي تم حذفها من طلبك قبل الأخير. - تم تعديل نوع مجموع درجات الطالب في الكود بعد طلبك الأخير وبعد فحصي للمثال مرة أخرى وألغيت رفعها في آخر لحظة. إن شاء الله تكون الأمور واضحة ، يعني كل مافي المثال هو جهدي ماعدا تبديل نوع المتغير Total2.1 point
-
1 point
-
1 point
-
السلام عليكم مشاركة مع استاذ ناقل ملاحظة : التعديل في حدث بعد التحديث للتاريخ تم التعديل في جدول المواد حيث تم تغيير حقل Year الى Year1 وعليه تم التغيير في النموذج اعلاه ارجو ان لا يسبب لك مشكلة DATA14-1.rar1 point
-
وعليكم السلام ورحمة الله وبركاته بالاضافة الى ما تفضل به الاخوة الكرام ولهم جزيل الشكر وبحسب ترتيب حروف " ابجد هوز حطي كلمن " وكما هو موجود بالنموذج 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
-
لقد عملت نسخة من النموذج وعدلت عليه وتركت الأصل كما هو للمقارنة. أبجد_هوز.mdb1 point
-
1 point
-
1 point
-
1 point
-
الشكر لله اخي ابو اشرف طيب بالنسبة للعميل هل ستطلب منه اجراء التعديل الافضل ان نعمل احد الامرين اذا كان لديك خبرة في التعامل مع ملفات الرجيستري ممكن نعمل ملف reg يتم تشغيله على جهاز العميل يقوم باجراء كافة التعديلات الخاصة باللغة والمنطقة والارقام وصيغة التاريخ جميعها او اي منها ** وللوصول للنتيجة الصحيحة عندما نرغب بعمل ملف ريجستري لتعديل تنسيق الارقام نحتاج الى تغيير قيمتين ضمن تبويب International في الرجيستري NumShape = 1 sNativeDigits = 0123456789 وهذة هي طريقتي اعمل ملف دفعي bat يعمل عن طريق نقطة الاوامر بنظام التشغيل dos يقوم بالاتي تغيير الاعداد المشار اليها اعلاه يقوم بعمل اختصار للبرنامج على سطح المكتب تخفيض امان الماكرو الطريقة الثانية عن طريق كود قام الاستاذ الفاضل @SEMO.Pa3x " د.حسنين " بتعديله ليشمل تعديل تنسيق الارقام اضافة الى امور اخرى 👇 في جميع الاحوال طريقة الدكتور حسنين اكثر امان وبالذات لمن ليس لديه خبرة كافية بالتعامل بالباتشات ومشاكل تعديلات الريجستري ـــــــــــــــــــــــــــــــــــــــــــــــــ * لا انصح باجراء التعديلات لمن ليس لديه الخبرة واخلي مسئوليتي عن اي خطأ ** احتفظ بنسخة من الريجستري قبل اي تعديل يجنبك عناء اعادة تنصيب نظام التشغيل1 point
-
1 point
-
العبارة مع الاستعلام يعملان بالتعدل الظاهر في الصورة لدي بدون مشاكل ... تفضل الملف بعد التعديل .... New (5).rar1 point
-
1 point
-
1 point
-
الجداول بسيطة ويمكنك عمل ملف وارفاقه .. هل المستشفى (س) هو الذي يحيل المشروع الفلاني الى الشركة الفلانية بعقد رقمه كذا؟ اقصد مثلا لو في دائرة صحة معينة ولديها عدد من المستشفيات فتقوم تلك الدائرة بأحالة مشاريع لتلك المستشفيات فينبغي لديها نظام لمعرفة تلك المشاريع ومبالغها وارقام العقود واسماء الشركات المحال عليها العمل ولكل مستشفى.. وانت تقول استخدمت حقل محسوب فلأي غرض طالما ان مبالغ العقود ثابتة ام انك تريد ان تطرح منها المبالغ المستلمة لاي مرحلة من مراحل التنفيذ1 point
-
السلام عليكم انت تريد عدد حقل prop وهذا الحقل غير موجود في جدول2 والصحيح ان يكون geab والمعادلة كالتالي abs: DCount("[geab]";"22";"[s]='" & [1]![S] & "'") ASD123.accdb تحياتي1 point
-
1 point
-
يجب ان تكون الحقول غير منظمة حتى لا يتم تسجيل البيانات مباشرة الا بعد الضغط على حفظ1 point
-
تفضل هذا مطلوبك الثاني 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
-
حسب فهمي للمطلوب يمكنك استعمال الإجراء التالي وربطه بزر أو شكل أو صورة Sub tar7eel() Range("j2").Value = Range("e2").Value End Sub ومتى تريد تحديث قيمة J2 يتم الضغط على الزر وتنفيذ الإجراء1 point
-
اذا كان لديك حقل حسابي استخدم الدالة NZ لتجعل الحقل الفارغ صفر حتى لايسبب لك مشاكل اما اذا تقصد نفس الحقل فأستخدم IIf(IsNull([Feild1];0;[Field1]))1 point
-
يفضل أن تبدأ في تصميم ملفك وتسمي فيه الشيتات كما ترغب وتنسق صفحة سجل القيد كما تشاء وترفق ملفك للتعديل عليه ثم تعرض هنا ما المطلوب بمنتهى التفصيل حتى يمكن للجميع مساعدتك1 point
-
بعد إذن أخي الكريم سليم لعرض الشيتات الملونة باللون الأحمر فقط يمكنك تغيير الشرط الخاص بلون الشيت من If col Then إلى If col = RGB(255, 0, 0) Then وبالنسبة لعمل قائمة منسدلة للشيتات باللون الأزرق يمكنك استعمال نفس الكود مع تغيير اسم الكومبوبوكس وكود اللون If col = RGB(0, 0, 255) Then بالتوفيق1 point
-
جرب هذا ..كل الطابعات ستكون في مربع التحرير وعند اختيار الطابعة ستكون هي الفعالة printerA.accdb1 point
-
1 point