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

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

  1. Shivan Rekany

    Shivan Rekany

    الخبراء


    • نقاط

      13

    • Posts

      3,491


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      7

    • Posts

      9,814


  3. رمهان

    رمهان

    الخبراء


    • نقاط

      4

    • Posts

      2,390


  4. sandanet

    sandanet

    الخبراء


    • نقاط

      3

    • Posts

      1,366


Popular Content

Showing content with the highest reputation on 01 مار, 2017 in all areas

  1. بالعكس اخي أوس ، انا اتعمد فك الكود الى اسطر بالتفصيل ، حتى يكون الكود سهل الفهم (بس الظاهر جبت اسمي وقصدك @رمهان بكوده المختزل) واليك شرح الكود: Dim rst1 As DAO.Recordset Dim rst2 As DAO.Recordset نحتفظ ببيانات الجدول1 في هذا المتغير#1 في ذاكرة الكمبيوتر المؤقته Set rst1 = CurrentDb.OpenRecordset("Select * From tbl1") بينما نحتفظ ببيانات الجدول2 في هذا المتغير #2 في ذاكرة الكمبيوتر المؤقته Set rst2 = CurrentDb.OpenRecordset("Select * From tbl2") من الآن ، تقريبا كل شغلنا على #1 ، حيث سنقرأ سجلات الجدول جميعها ، ثم نقارن حقلي الاسم والشهادة فاذا وجدنا القيم متساوية في #2 ، فاننا نحذف سجل #2 علشان نبدأ من اول سجل ، يجب ان نذهب الى آخر سجل ، ثم نرجع لأول سجل rst1.MoveLast: rst1.MoveFirst الآن نستطيع حساب عدد السجلات الموجودة في #1 RC1 = rst1.RecordCount الآن سنقرأ جميع سجلات #1 For i = 1 To RC1 اسم حقل الاسم يختلف في الجدولين ، فانتبه له ، بينما اسم الشهادة هو نفسه بين الجدولين لذا الذي نعمله هنا هو اننا نقارن حقلي الاسم والشهادة في السجل في #1 ، ونختبر وجودهما في الجدول #2 rst2.FindFirst "[degree]='" & rst1!degree & "' And [names]='" & rst1!fullnames & "'" اذا "عدم المطابقه" خطأ ، معناه انه في مطابقة بين الحقلين في هذا السجل ونستخدم هذه الطريقة ، لأنها الاسهل If rst2.NoMatch = False Then اذن ، احذف هذا السجل من #2 rst2.Delete End If انتقل الى السجل التالي في الجدول #1 rst1.MoveNext Next i هذه الجزئية جدا مهمة ، لأننا جعلنا الجدولين في ذاكرة الكمبيوتر المؤقته ولكي نُخلي الذاكرة ، يجب عمل التالي rst1.Close: Set rst1 = Nothing rst2.Close: Set rst2 = Nothing جعفر
    4 points
  2. وبدون تعليق : http://www.pruittfamily.com/paul/MDE2MDB.htm http://www.everythingaccess.com/mdeconversion.asp جعفر
    2 points
  3. جرب هذا الملف يمكن زيادة البيانات والمبالغ قدر ما تريد (يعد ذلك اضغط الزر Run) وتنتقل المعلومات (مفصلة) الى الصفحة الاخرى AMAN salim.rar
    2 points
  4. لسلام عليكم ورحمة الله تعالى وبركاته اصدقاء الغالي لدي هدية صغيرة لكم اتمنى ان يستفيد من هذا المرفق تفعيل و تعطيل مفتاح الشفت برقم السري رقم سرى ( 2017 ) وبأمكانكم ان اغير هذا الرقم في وحدة النمطية (Shift disable mode) الحطوة اولى : اضغط على 2017 واكتب رقم 2017 وثم اقفل البرنامج بعد افتح سيعطل شفت الخطوة الثاني : اضغط على 2017 في فورم رئيسي اكتب رقم غلط او لا تكتب اي شيء اطغط على ok سيعطل شفت بعد خروج من البرنامج وبامكانم اخفاء 2017 في فورم رئيسي مع العلم هذا الرقم 2017 للفورم او نموذج رئيسي فقط للشرح بامكانكم ان اكتب اي شي مثلا (. او - او x ) وبعد مع التقدير ريباز سلام Lock shift.rar
    1 point
  5. ما شاء الله هذا جميل ورائع الف الف شكر لك استاذ سليم كود ممتاز وهو كما اريد اشكرك اخي وجزاك الله خيرا تحياتي
    1 point
  6. السلام عليكم سأرد عليك بلسان أستاذنا ومعلمنا جعفر (فقد استعرته منه قليلا مالم يمانع) في اعتقادي ، مشاركة أكثر من شخص في الرد على السؤال ، هو فائدة للجميع ، فمنه نتعلم الطرق الاخرى للإجابة على السؤال ، ونتعلم خبايا البرمجة عود أحمد أبا آلاء (وان ماكنش يعجبك أحمد فمحمود ) الآن سأطرح مالدى من فكرة وأدع لك التطبيق لعلها تفيد بشىء قد اطلعت على المرفق منذ قليل وقد استنتجت أنك تريد أن تضيف البيانات الى الثلاثة جداول من فورم واحد (يعنى ثلاثة عصافير بحجر ) ما رأيك أن نجعل حجرك كما هو ولكن نجعل له ثلاثة رؤوس بشكل أوضح نجعل على نموذجك الرئيس فورمين فرعيين وليكن مصدر سجلات الرئيس الجدول الآكثر حقولا ثم الفرعى 1 ومصدر سجلاته الجدول ... طبعا انت عارف اسمه وكذلك الفورم الفرعى 2 ومصدر سجلاته الجدول .... ونربط الفورم الفرعى بالرئيس بالحقل الذى تريد وكد انتهت الفكرة لو أعجبتك شاركنا بتنفيذها هنا لنقيم النتيجة ونضع الدرجات وطبعا بننتظر حلا آخر من أستاذنا جعفر
    1 point
  7. البركة في استاذنا القدير "جعفر" فالحلول السحرية متوفرة لديه دائماً
    1 point
  8. وعليكم السلام أخي أبو الآء الظاهر الحياة اخذتك بعيدا عن الاكسس جعفر
    1 point
  9. السلام عليكم اخي سليم دائما تجعلنا سعداء يكفيني اهتمامك بموضوعي ساجرب وارد
    1 point
  10. حدد مربع اللي تريد ان يكون الارقام فيها بالعربيه‌ وغير الخاصيه‌ Numeral Shapes الى National كما مبينة في الصوره‌
    1 point
  11. من الافضل لك ان تستخدم وضع عادي كما قلت لك اولا
    1 point
  12. احنا بالخدمة عزيز والان عندك اربع طرق واحد بالاستعلام ثاني بالكود if ثالث بالكود iif رابع في مصدر مربع نصي اتفضل مع طريق الاربعة mr.rar
    1 point
  13. اسف شوية غيرت الطريق اليك كودين اي واحد تستخدمة راح يشتغل عادي باذن الله الاولى Me.Text11 = IIf([t2] = Format$([t2], "0"), [t2], Format$([t2], "0.000")) والثانية If Me.t2 = Format$(Me.t2, "0") Then Me.Text11 = Me.t2 Me.Text11 = Format$(Me.Text11, "0") Else Me.Text11 = Me.t2 Me.Text11 = Format$(Me.Text11, "0.000") End If واليك ملفك وبها نموذجين الاول بها طريقة استعلام مع مربع نصي وبيشتغل تمام والثاني بها كودين اللي في الاعلى واحد في الحالي والثاني بعد تحديث واذا تستخدم اي واحد منها في اي حالة راح يعمل جيدا باذن الله تحياتي mr.rar
    1 point
  14. اعتقد ان سبب مشكلتك هو ان النموذج مصدره استعلام يحتوي على اكثر من علاقة بين مجموعة من الجداول لذلك لايمكنك ادراج بيانات جديدة بهذا الشكل
    1 point
  15. السلام عليكم ورحمة الله في هذه الحالة نستعمل الدالة SUBTOTAL (وبالفرنسية SOUS.TOTAL) مع الرقم المناسب للترقيم (أول وسائط هذه الدالة)... بن علية
    1 point
  16. اي نعم تكدر في نموذج تستخدم هكذ IIf([t2] = Format([t2], "0"), [t2], Format([t2], "0.000")) اي بس راح يغير ( ; ) الى ( , ) ------- لكن تكدر تعمل استعلام بيكون مصدر النموذج وبعدين ما تحتاج الكود في النموذج تحياتي
    1 point
  17. ليش ما تنحذف تنسيق وتخلي بشكل نورمال اي اذا كان رقم بدون كسر مثلا 96 يظهر 96 74.700 يظهر 74.7 75.801 يظهر 75.801 اعمل استعلام و في حقل فارغ اكتب dd: IIf([t2]=Format([t2];"0");[t2];Format([t2];"0.000"))
    1 point
  18. ::: شكري وتقديري لك استاذنا الغالي رمهان . :::الحل تمام لقد كنت افكر في تفكيك عناصر nv لتسهل عملية المقارنة مع كل عنصر على حدة . ::: اما الاخ الرائع الاستاذ شيفان وبطريقته الخاصة للحل استفاد من عملية التفكيك . ::: اصبح هناك طريقتان للحل طريقة استاذ رمهان و كذلك طريق استاذ شيفان . والى مزيد من التالق والنجاح .... عزيزي استاذ شيفان شكرا لك ادعوا الله ان يفنح لك ابواب الخير ::: نعم الحل تمام 100 % ممتاز وخفيف الضل احسنت ووفقت لمزيد من النجاح والخير ..
    1 point
  19. اتفضل شوف المرفق ان شاء الله بها المطلوب Compair_No (1).rar
    1 point
  20. اخي ابو جاسم السلام عليكم ورحمة الله وبركاته على خاطرك انا مسحت اوفيس اصدار 2010 و نصبت اوفيس اصدار 2016 وكان مفتاح الشيفت مقفلة تماماً 100% لكن اذا قصدك بمفتوحة عادي ان يفتح النموذج البداية وفي خلفها واجهة اكسس وبها شريط صفراء !! خفض مستوى امان لاكسس وشوف النتيجة لكن حتى في ذلك الوضع ما تكدر توصل الجداول والكائنات الاخرى الا اذا كان في نمموذج البداية بها زر اغلاق النموذج فقط او مالغيت كليك ماوس الايمن والان راح امسح اوفيس 2010 وانصب اوفيس 2010 من جديد تحياتي
    1 point
  21. تمام اعود لك عزيزي وقبل العودة هل الطريقة تمام لو تمت النتائج صحيحة؟
    1 point
  22. اخي Rebaz شكراً لك على هذه الطريقة ولكن للأسف هنالك برامج كثيرة تقوم بتمكين مفتاح الشيفت مهما حاولت وللاطلاع عليها انظر المرفق تحياتي فتح أو إلغاء الشفت.zip
    1 point
  23. أخى الكريم من رابع المستحيلات يتم التنفيذ فى حالة اختيارك NO لأنها الزامية ومرفق لكم ملف به الكود بعد اضافة الرسالة واختر NO سيتم التراجع عن تنفيذ الكود وهذا حسب طلبك الأول وتقبل منى وافر الاحترام والتقدير test.rar
    1 point
  24. نعم اعمل جدول اخر باسم table4 وادخل البيانت لكن خلي الرقم اي دي بيكون غير مكرر مع الجداول الاخرى وفي استعلام توحيد اكتب select * from table1 UNION select * from table2 UNION select * from table4;
    1 point
  25. جرب تعديل السطر الذي بكود الاضافة Me.نص57 ="" الى Me.نص57 = Me.نص57 +1 بالتوفيق
    1 point
  26. توهتنا اخي محمد اول مشاركة pos اقل من العدد واخر مشاركة تقول pos دائما اكبر من وظهرت بحاجة جديده في اخر مشاركة وهي ال Equ لو تشرح الموضوع من اساسه وفكرته ؟ والاستاذ شبفان به البركه مع كل التقدير
    1 point
  27. أخي ابو البراء ... بعد السلام اذا كان النص 17 نأخذ 5 5 6 اذا كان النص 18 نأخذ 6 6 6 اذا كان النص 19 نأخذ 6 6 7 و هكذا نقسم طول النص على 3 (عدد الكومبو) باستعمال (int)نأخذ اول حصتين للأول والثاني والباقي للثالث هذا ما يريد صاحب السؤال ولا ادري ما الغاية
    1 point
  28. ماذا لو كان طول النص 17 ؟ ماذا لو كان طول النص 18؟ ماذا لو كان طول النص 19؟ ماذا لو كان طول النص 20؟ وسؤال : ما الغرض من تقسيم النص بهذه الطريقة؟ مجرد فضول
    1 point
  29. ::: نعم يمكن ذلك بشرط وجود علاقات بين الجداول ..... او جمع حقول الجداول المطلوبة في استعلام ويكون مصدر بيانات النموذج .
    1 point
  30. هناك سؤال هل بيتغير بيزيد حقل NV من اللي بيظهر في الصورة ؟ ام بس هم فقط
    1 point
  31. غدا ان شاء الله راح اشوفه الان ان عم استخدم موبايل وايضا محتاج اعرف ماتريد بالضبط اي معلومات عن الشغل
    1 point
  32. اتفضل استخدم هذا الكود في النموذج بعد تحديث لحقل result Private Sub result_AfterUpdate() If Len(nv) < 11 Then If Me.result >= 10 Then Me.case = "Neg" If Me.result < 10 Then Me.case = "Pos" Else If Me.result < 12 Then Me.case = "Low" If Me.result > 16 Then Me.case = "High" If Me.result >= 12 And Me.result <= 16 Then Me.case = "Nil" End If End Sub وهذا ملفك بعد تعديل جرب ووافيني بالنتيجة Compair_No.rar
    1 point
  33. السلام عليكم ورحمة الله وبركاته والآن مع الكود في نافذة كود ThisWorkbook نكتب الكود Private Sub WorkBook_Open() Application.Visible = False Range("A3:h10000").Sort Key1:=Range("B3:B10000"), Order1:=xlAscending, Header:=xlYes User_Data.Show End Sub وفي نافذة كود كود User_Data نكتب الكود Private Sub CommandButton1_Click() Dim LRow As Long Dim ws As Worksheet Set ws = Worksheets("Data") LRow = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row If Trim(Me.TxtBox1.Value) = "" Then Me.TxtBox1.SetFocus MsgBox ("من فضلك أدخل الكود") Exit Sub End If If Trim(Me.TxtBox2.Value) = "" Then Me.TxtBox2.SetFocus MsgBox ("من فضلك أدخل الاسم") Exit Sub End If ws.Cells(LRow, 1).Value = Me.TxtBox1.Value ws.Cells(LRow, 2).Value = Me.TxtBox2.Value ws.Cells(LRow, 3).Value = Me.TxtBox3.Value ws.Cells(LRow, 4).Value = Me.TxtBox4.Value ws.Cells(LRow, 5).Value = Me.TxtBox5.Value ws.Cells(LRow, 6).Value = Me.TxtBox6.Value ws.Cells(LRow, 7).Value = Me.TxtBox7.Value ws.Cells(LRow, 8).Value = Me.TxtBox8.Value ws.Cells(LRow, 9).Value = Me.TxtBox9.Value Me.TxtBox1.Value = "" Me.TxtBox2.Value = "" Me.TxtBox3.Value = "" Me.TxtBox4.Value = "" Me.TxtBox5.Value = "" Me.TxtBox6.Value = "" Me.TxtBox7.Value = "" Me.TxtBox8.Value = "" Me.TxtBox9.Value = "" Me.TxtBox1.SetFocus End Sub Private Sub CommandButton2_Click() Unload Me ActiveWorkbook.Close True End Sub Private Sub CommandButton3_Click() Unload Me User_Query.Show End Sub Private Sub CommandButton4_Click() Unload Me User_Password.Show End Sub Private Sub Label10_Click() End Sub Private Sub UserForm_QueryClose(cancel As Integer, closeMode As Integer) If closeMode = 0 Then cancel = True MsgBox "عذرا الخروج من زر إغلاق" End If End Sub وفي نافذة كود User_Password نكتب الكود Private Sub Cmd_Sheet_Click() If Txt_User_Name.Value = "roaa" And Txt_Password.Value = "123" Then Application.Visible = True Unload Me Exit Sub End If MsgBox "المدخلات غير صحيحة - ادخل المطلوب مرة ثانية" Txt_User_Name.Value = "" Txt_Password.Value = "" Txt_User_Name.SetFocus End Sub Private Sub CmdClose_Click() Unload Me ActiveWorkbook.Close True End Sub Private Sub UserForm_QueryClose(cancel As Integer, closeMode As Integer) If closeMode = 0 Then cancel = True MsgBox "عذرا الخروج من زر إغلاق" End If End Sub وفي نافذة كود User_qwery نكتب الكود Private Sub ComboBox1_Change() Set sh12 = Sheets("Data") LR = sh12.[A10000].End(xlUp).Row For Each cl In sh12.Range("A4:I" & LR) If Me.ComboBox1 = cl Then Me.TextBox1 = cl.Offset(0, -1) Me.TextBox2 = cl.Offset(0, 0) Me.TextBox3 = cl.Offset(0, 1) Me.TextBox4 = cl.Offset(0, 2) Me.TextBox5 = cl.Offset(0, 3) Me.TextBox6 = cl.Offset(0, 4) Me.TextBox7 = cl.Offset(0, 5) Me.TextBox8 = cl.Offset(0, 6) Me.TxtBox9 = cl.Offset(0, 7) End If Next End Sub Private Sub CommandButton1_Click() Dim z As Integer If Trim(TextBox2.Value) = "" Then TextBox2.SetFocus MsgBox ("من فضلك ادخل لاسم") Exit Sub End If For z = 1 To 10000 If (TextBox2.Value) = Cells(z, 2) Then Cells(z, 1) = TextBox1.Text Cells(z, 3) = TextBox3.Text Cells(z, 4) = TextBox4.Text Cells(z, 5) = TextBox5.Text Cells(z, 6) = TextBox6.Text Cells(z, 7) = TextBox7.Text Cells(z, 8) = TextBox8.Text Cells(z, 9) = TxtBox9.Text End If Next Unload Me User_Query.Show ComboBox1.SetFocus End Sub Private Sub CommandButton2_Click() Unload Me User_Data.Show End Sub Private Sub CommandButton3_Click() Unload Me ActiveWorkbook.Close True End Sub Private Sub UserForm_QueryClose(cancel As Integer, closeMode As Integer) If closeMode = 0 Then cancel = True MsgBox "عذرا الخروج من زر إغلاق" End If End Sub وهذا هو الملف كاملا كلمة المرور للشيت "roaa" ، "123" كملة المرور للكود "0" Transport.rar
    1 point
  34. البرنامج مرة اخرى وان شاء الله تعالى بعمل على اكسس 2010 Shift2002-2010 فتح وإغلاق شفت.rar
    1 point
×
×
  • اضف...

Important Information