اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      22

    • Posts

      9,814


  2. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      12

    • Posts

      6,818


  3. essam rabea

    essam rabea

    الخبراء


    • نقاط

      11

    • Posts

      634


  4. kaser906

    kaser906

    الخبراء


    • نقاط

      6

    • Posts

      1,411


Popular Content

Showing content with the highest reputation on 13 نوف, 2019 in all areas

  1. تفضل سيدي الفاضل 🙂 - لا يوجد تعديل على التقارير ، فهي حسب تصميمك ، - النموذج frm_Do_Report_604 يقوم بإضافة السجلات المطلوبة الى الجداول المؤقته الثلاث ، والتي يبدأ اسمها بـ tbl_tmp_rpt ، والكود في النموذج حلو وسهل الفهم 🙂 ، - اعتمد في اخذ البيانات من الاستعلامات qry_604 و qry_tblPME ، لذلك فانت حر التصرف في عمل المعايير التي تريدها ، واذا اردت تغيير اسماء الحقول ، فيجب تغييرها في استعلامات الإلحاق والجداول المؤقتة 🙂 - عملي ليس له علاقة بالكود الموجود سابقا في التقارير . في الواقع ، الآن البرنامج صار عادي وسهل التعامل معاه 🙂 آه وقبل ان انسى: جعفر 1135.3.Consumable Material.accdb.zip
    3 points
  2. السلام عليكم هذه طريقة للحصول على الوقت و التاريخ الحاليين للأنترنت حسب توقيت غرينتش نستخدم هذه الوحدة النمطية: Function GetUCTTimeDate() As String Dim UTCDateTime As String Dim arrDT() As String Dim http As Object Dim UTCDate As String Dim UTCTime As String Const NetTime As String = "https://www.time.gov/" On Error Resume Next Set http = CreateObject("Microsoft.XMLHTTP") On Error GoTo 0 http.Open "GET", NetTime & Now(), False, "", "" http.send UTCDateTime = http.getResponseHeader("Date") UTCDate = Mid(UTCDateTime, InStr(UTCDateTime, ",") + 2) UTCDate = Left(UTCDate, InStrRev(UTCDate, " ") - 1) UTCTime = Mid(UTCDate, InStrRev(UTCDate, " ") + 1) UTCDate = Left(UTCDate, InStrRev(UTCDate, " ") - 1) GetUCTTimeDate = UTCDate & " " & UTCTime End Function و نقوم باستدعاء الناتج هكذا MsgBox GetUCTTimeDate()
    2 points
  3. وعليكم السلام 🙂 نعم ، هذا الكود سيخبرك عدد السجلات msgbox Dcount("*","اسم الاستعلام") جعفر
    2 points
  4. بس إجابة ساحقة ماحقه .. ولم نوفك حقك حبيبى جعفر
    2 points
  5. بل كل الشكر والتقدير والعرفان لكل اساتذتى الافاضل الذين لم يبخلوا بوقتهم وجهدهم وعلمهم قدر استطاعتهم وكل الشكر والتقديـر اليكم استاذى الجليل ومعلمى القدير و والدى الحبيب استاذ @jjafferr والله مهما وصفت لن تكفى الكلمات للتعبيـر عن مدى التعب والضرر الذى قد يتسبب به اقل خطأ لى او لأصدقائى بالعمل ومهما قدمت لكم من شكر ما حييت لن اوفيكم حقكم وقدركم وستقف الكلمات عاجزة بكل معانيها امام ما تقدمونه استاذى الجليل يعلم الله حجم الكرب الذى جعلكم الله سببا فى تفريجه اسأل الله تعالى ان يرزقكم البركة فى العمر والعلم والاهل والولد واعلى درجات الخلد فى الجنة ان شاء الله مع من تحبون شكـراً ساحر الأكسس ..
    2 points
  6. شكرا ابا جودي 🙂 يا جماعة الحقوا عليّ اريد شِبّه او بخور عن العين 🙂 حصلت على شهادتين من اجابة واحدة 🙂 جعفر
    2 points
  7. الشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و والدى الحبيب استاذ @jjafferr والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و اخى الحبيب استاذ @AlwaZeeR والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و اخى الحبيب استاذ @essam rabea
    2 points
  8. في الكثير من مواضيعي في الكود ، استخدم متغير اسمه mySQL مثلا ، حتى اعمل استعلام عن طريق الكود ، هكذا مثلا ، فلاحظ آخر سطر استعمله ، السبب اللي استعمل فيه هذا المتغير بهذه الطريقة ، حتى يكون لكل جزء من الكود السطر الخاص به (سهل التعامل مع كل سطر بطريقة منفصلة) ، وفي النهاية يتم جمعهم في الكود للخروج بالمتغير بصورته النهائية : mySQL = "SELECT TOP " & A & " sort_seq, Desc, IDPME, DueDate, SelectTo604, 1 AS Countr, iPage" mySQL = mySQL & " FROM ( " mySQL = mySQL & "SELECT 0 as sort_seq, Desc, IDPME, DueDate, SelectTo604, 1 AS Countr, iPage" mySQL = mySQL & " From tblPME" mySQL = mySQL & " WHERE SelectTo604 = True" mySQL = mySQL & " union" mySQL = mySQL & " Select id, null, null, null, null, 1 AS Countr, null" mySQL = mySQL & " From tblPME" mySQL = mySQL & " ) AS X" Debug.Print mySQL آخر سطر معناه ، اكتب لي نتيجة المتغير mySQL ، والنتيجة ستكون بالبيانات ، فمثلا نتيجة هذه الاسطر اعلاه هي: SELECT TOP 33 sort_seq, Desc, IDPME, DueDate, SelectTo604, 1 AS Countr, iPage FROM ( SELECT 0 as sort_seq, Desc, IDPME, DueDate, SelectTo604, 1 AS Countr, iPage From tblPME WHERE SelectTo604 = True union Select id, null, null, null, null, 1 AS Countr, null From tblPME ) AS X نفس الشيء ممكن نعمله في الكود اعلاه ، ممكن نضيف السطر الاخير هنا ايضا : myCriteria = "[detach]='موظف'" myCriteria = myCriteria & " Or [detach]='منتدب'" myCriteria = myCriteria & " Or [Payment_Month]=#" & Me.txtMonth & "#" myCriteria = myCriteria & " Or [EmployeeID]=" & Me.EmployeeID myCriteria = myCriteria & " Or [ID]=12" debug.print myCriteria ولما يعطيك الطريقة الصحيحة ، تقدر تنسخها الى امر Dlookup ، في الاستعلام 🙂 آه ، وين تنكتب هذه العيارة ، هنا : اولا الجواب الاوسع ، انه ما ممكن ، وخصوصا انك لما تشوف شرح يفتقد لمثال واقعي علشان تفهمه وتطبق عليه ، لذلك ، تابع الاجابات ، ومنها تفهم اكثر ، بطرق مقطعة ، ولكن تثبت في الدماغ 🙂 اما للشروحات ، فهناك الكثير منها في المنتدى ، واخونا صالح قام بهذا العمل الجبار : جعفر
    2 points
  9. ما شاء الله ... تبارك الله .... الله اكبــــــــــــــــر يا شمعة في زوايا المنتـدى تتألق فتنير درب المــعالي وهي تحترق لا أطفــــأ الله نــــــوراً أنت مصـدره يا صادق الفجر أنت الصبح والفلق أيا جعفراً يا رمــز الوفاء سلمت يمين أهـــل الوفاء يا خيــر من صدقوا
    2 points
  10. ما ممكن كتابة هذه الاسطر في استعلام ، لذلك ، يمكن ان تعملها وحدة نمطية ، ثم تناديها من الاستعلام 🙂 جعفر
    2 points
  11. لو فيه حاجة وقفت معاك حاول وابعت نتيجة محاولتك وسلملى على محمد احمد والشيخ وفيق لحد ماجى بالتوفيق
    2 points
  12. وعليكم السلام ورحمة الله وبركاتة أخي الكريم كان لك نفس الطلب في موضوع سابق لكن الفرق كنت تريده في التقرير وقد قمت بالرد عليك وتحقيق طلبك عن طريق كود vba وشاركني استاذي @jjafferr بوضع نفس الحل ولكن عن طريق الاستعلام الان لتحقيق طلبك الجديد ارجع للموضوع السابق وبالتحديد مشاركة الاستاذ جعفر قم بفتح ملف اكسل ثم اذهب على مصدر البيانات ثم اختر قاعدة البيانات حسب الصورة ستظهر لك نافذة اختر منها الاستعلام نتائج الاستعلام اصبحت بملف الاكسل قم بتغير مسميات رؤوس الاعمدة حسب ما تراه مناسب لك وحفظ الاستعلام وإذا لم ترد تغيير مسمسيات رؤوس الاعمدة بالاكسل قم بتغيرها من الاستعلام وستظهر بالاكسل نفس المسميات ::بالتوفيق::
    2 points
  13. أ.ashraf_ali هل هذا ما تقصدة ام فهمت خطأ بالتوفيق Test (1).zip
    2 points
  14. جرب هذا الملف Sharikat.xlsm
    2 points
  15. ممكن تستخدم الكود التالى Sub my_fill() cmb_Fill.Clear For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row cmb_Fill.AddItem (Cells(i, "A")) Next i End Sub و المجال مفتوح و قابل للتعديل مرفق ملف Fill_01.xls
    2 points
  16. تفضل استاذ حميد ولحسن عمل الكمبوبوكس يمكنك إضافة هذا الكود Private Sub ComboBox1_DropButtonClick() lrw = Sheets(2).Cells(Rows.Count, 4).End(xlUp).Row ComboBox1.List = Sheets(2).Range("D1:D" & lrw).Value End Sub تعبئة القوائم المنسدلة1.xlsm
    2 points
  17. السلام عليكم ايش رأيك في هذه الطريقة: سحب أكثر من حقل من سجل واحد في الجدول ، وهذا الرابط فيه المثال http://www.officena.net/ib/index.php?showtopic=61152&p=394338 جعفر
    2 points
  18. - موديول إخفاء إطار الأكسس - التوسيط - التصغير بجوار الساعة - تغيير الأيقونة - استدعاء بيانات ورسائل من جدول تم وضع التذكيـــر الاتى برأس الموديول لسهولة التعامل مع الأكودا واستدعائها 'icon path >>---> CurrentProject.Path &"\"&"\File Library\Fav Ico\Myicon.ico" 'Hide Access >>---> CallStartForm() 'CenterObjects >>---> Call CenterFrm(Me) 'Minimize To Systray >>---> Call AppMini() 'To Quit Application >>---> Call AppQuit() 'To Close Any Forms >>---> Call AppCloseFrm() 'Application Name >>---> Call AppName() 'Designer Name >>---> Call DesName() 'Designer Phone >>---> Call DesPhone() 'Designer Email >>---> Call DesEmail() 'call Any Message From Table '>>>>> StrMyCriteria = "MyCriteria ='xxxx'" '>>>>> MyMesg (txtOfMesg), vbOKOnly, strMsgTitle '>>>>> Change "xxx" By Criteria From Table >> UsystblUsefulData << By Criteria From Field [MyCriteria] '>>>>> Example MyCriteria >>---->> msgDesData '>>>>> StrMyCriteria = "MyCriteria ='msgDesData'" '>>>>> MyMesg (txtOfMesg), vbOKOnly, strMsgTitle هذا المرفق الاول بدون عمل اختصار للبرنامج Utilities Hide Ico Minimze To SysTray.zip --------------------------------------------------------------- هذا المرفق للإضافة إختصار أليا الى سطح المكتب وتحكم كامل فى كل ما يخص الاختصار من الجدول UsystblUsefulData اسم الاختصار الوصف مفتاح الاختصار من الكيبور لفتح التطبيق وفى حالة عدم وجود اى بيانات بالجدول تخص الاختصار او عدم وجود ايقونة فى المسار المخصص يتم استخدام البيانات الاساسية والايقونة الاساسية Utilities Hide Ico Minimze To SysTray V.02.zip
    1 point
  19. امثلة بسيطة ارجوا ان تنفعنا جميعا صيغة الدالة DLookup DLookup(expr, domain [, criteria] )‎ expr( مطلوب) اسم الحقل domain( مطلوبة) اسم الجدول/الاستعلام criteria( اختيارية) الشروط دا مثال بسيط : عازوين نعرف اسم الصنف الذي كوده 15 في جدول الاصناف اسم الجدول : items اسم الحقل الذي يحمل أرقام الاصناف : code_items اسم الحقل الذي يحمل أسماء الاصناف: items_Name كود: MsgBox DLookup("[items_Name]", "items", "code_items=15") ممكن ناخد كود الصنف من مربع نص موجود في نموذج بدلاً من التصريح في الدالة عن كود الصنف لنفترض مثلا أن مربع نص موجودٌ في النموذج باسم txtItemsCode كود: MsgBox DLookup("[items_Name]", "items", "code_items=" & Me.txtItemsCode) ممكن ناخد قيمة كود الصنف من نموذج آخر بس بشرط أن يكون مفتوحاً ، فلو كان txtItemsCode موجود في نموذج آخر باسمfrm1 فإن الكود سيأخذ الشكل التالي : كود: MsgBox DLookup("[items_Name]", "items", "code_items=" & Forms!frm1!txtItemsCode) ملحوظة بالنسبة للشروط يجب أن تأخذ في الاعتبار نوع بيانات الحقل الذي نعتمد عليه في الشرط ، في المثال السابق كان حقل نوع بياناته (رقم) ، فلو كان نوع بياناته (نص) سيكون الكود بالشكل التالي :code_items كود: MsgBox DLookup("[items_Name]", "items", "code_items='" & Me.txtItemsCode & "'") طب لو كان نوع بياناته (وقت/تاريخ) الكود هيبقى كدا كود: MsgBox DLookup("[items_Name]", "items", "code_items=#" & Me.txtItemsCode & "#") وشكر الله لكم جميعا
    1 point
  20. هل يوجد برنامج تسكين طلاب على قاعات الإختبار
    1 point
  21. عليكم السلام، جرب المرفق ووافني بالنتيجة. الضغط على الفرعى (1).accdb
    1 point
  22. بالفعل هو المطلوب بارغم أني كنت أتوقع أن الحل سيكون كود أكثر تعقيداً ألا أن ملفك كان به أبسط الأكواد الذي نتعامل معها بشكل يومي يبدو أن الأمر كان يتطلب مني صفاء الذهن .. حول التعامل مع المشكلة أكرر شكري لك أخي كاسر @kaser906 .. جزاك الله خير .. وجعل الله هذا في ميزان حسناتك
    1 point
  23. اللهم صلى على سيدنا محمد وعلى آل سيدنا محمد كما صليت على سيدنا ابراهيم وعلى آل سيدنا ابراهيم وبارك اللهم على سيدنا محمد وعلى آل سيدنا محمد كما باركت على سيدنا ابراهيم وعلى آل سيدنا ابراهيم فى العالمين انك حميد مجيد
    1 point
  24. لك ماتريد (معادلات مطاطة حتى 1000 اسم) SharikA_Salim.xlsx
    1 point
  25. استاذى انت ما مشكلتك مع الكود الذى وضعته انا فى مرفقى ما تتحدث انت عنه لم يحدث عندى ولا اعرق السبب بصرحة ثانيا انا من زمان واتجنب الاخفاء للاطار بتلك الطريقة لكثرة المشاكل التى صادفتنى من خلال استخدامها
    1 point
  26. ركز معى انا اضحك لان الفكرة تقريبا موجودة استطيع مساعدتك بتقديم رابط الموضوع واعتذر لان فى الوقت الراهن لا املك الوقت الكافى لظروف عملى الموضوع لاستاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذى @ابوخليل بارك الله فى عمره وعلمه اتفضل
    1 point
  27. تفضل اخي الكريم يا رب يكون المطلوب تماماً الضغط على الفرعى.accdb تحياتي عذرا يا ايو جودي يا غالي كنت مشغول عن ردك بالمطلوب عذرا مرة اخرى تحياتي
    1 point
  28. لا غنى لى عن استاذى الجليل ومعلمى القدير و والدى الحبيب بفضل الله تعالى ثم بفضلكم تقريبا تم التوصل الى النتيجة المطلوبة تقريبا بنسبة 100 % وان شاء الله تعالى بأمر الله غدا ان قدر الله وكان لى فى العمر بقيـة اوافيكم بالبشـرى وبالرد اليقين بعد التجربة مرار وتكرار من واقع العمل فعلياا اليوم فى العمل لم استطع التجربة لاكثر من 5 دقائق بسبب التفتيش ولكن تقريبا بفضل الله من الوهلة الأولى ان شاء الله الحمد لله تعالى كل شئ تمام
    1 point
  29. شوف كدة ظبط ولا فيه مشاكل new mohamed TEST(2).zip
    1 point
  30. تفضل لك ما طلبت استاذ ياسر وتم تنفيذ المطلوب على ملفك : اسم المستخدم : yasser كلمة المرور : 123456 FILE TEST.xlsm
    1 point
  31. الاخ الفاضل/ @محمد ابو عبدالله انا متاسف لك فعلا النموذج يعمل جيدا ـ جزاكم الله خير استاذ / محمد بارك الله فيك وجعله في ميزان حسناتكم ومادام حضرتك "محب الله ورسوله " فاللهم حبب الله فيكم ورحمكم في الدنيا والاخره بعيدا عن الدعاء لكم - لى طلب اخر ان سمحت لكم ظروفكم ووقتكم هل يمكن ان نضع مربع فارغ في النموذج الفرعى وعند الضغط على خانة الاختيار R1 في الرئيسي يتلون المربع في النموذج الفرعى باللون الاحمر ويكتب بداخله اتوماتيكيا "غير متعاقد" واذا ضغطنا على R1 مرة اخري يتلون المربع الفارغ الى اللون الابيض وتتحول الجملة الى " متعاقد" داخل المربع المنشأ ارجو ان لا اكون قد اثقلت عليك وحسب وقتك بارك الله فيك
    1 point
  32. باذن الله فى انتظارك اخى العزيز @kaser906 وجزاك الله خيرا تمنياتى لك وللجميع بالتوفيق طبتم واهتديتم
    1 point
  33. وعليكم السلام بما انك وضعت كود عند التحمل للحصول ع المجموع If Nationality = "Saudi" Then Gosi = (Val(BasicSalary) + Val(Housing)) * 0.11 Else Gosi = (Val(BasicSalary) + Val(Housing)) * 0 End If TotalSalary = Val(BasicSalary) + Val(Housing) + Val(Transportation) + Val(OtherBenefits) AccruedSalary = (Val(TotalSalary) / Val(DayMonth)) * (DayAttendees) NetSalary = (Val(AccruedSalary) + Val(Reward) + Val(Addition)) - (Val(Discount) + Val(Deduction) + Val(Gosi)) كان لازم تزيل مصدر تحكم الحقول الملونة بالاخضر لتصبح حقول غر منظمه ::بالتوفيق::
    1 point
  34. اخي الكريم انظر الموضوع التالي تجد به نفس طلبك حاول الاستفادة من الطريقة بالنموذج ::بالتوفيق::
    1 point
  35. الق نظرة على هذا الموضوع تقريبا نفس المطلوب
    1 point
  36. انت عامل شرطين الشرط الاول الاستعلام المركب والثاني "N3" وهو قام بشرط "N3" هذا والله اعلم
    1 point
  37. العفو منكم استاذى بل انا من يستوجب عليه الاعتذار لكم استاذى القدير ومعلمى القدير و والدى الحبيب الاستاذ @jjafferr الموضوع بالنسبة لى كان تقريبا شبة مستحيل لاننى بحث على الانترنت فى المواقع برسم الجداول برمجيا من خلال الـ vba وجدت القليل جدا بهذا الصدد وما لم استطع فهمه النتيجة الان بفضل الله تعالى ثم فضلكم استاذى الجليل رائعة باقى شئ بسيط وهو انت تظهر فقط البيانات فى الجزء العلوى او السفلى بناء على شرط true بما يتم اختياره والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و والدى الحبيب استاذ @jjafferr والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و اخى الحبيب استاذ @AlwaZeeR والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و اخى الحبيب استاذ @essam rabea
    1 point
  38. تعديل فقط على كود الاستاذ جعفر ليعمل بالمثال جزاك الله خيرا استاذى العزيز جعفر
    1 point
  39. وعليكم السلام 🙂 وبدون انزال المرفق ، رجاء جرب هذا التعديل: =Nz(DSum("[mone]";"table1";"[client]='" & [x2] & "' and [id]<>" & [id]);0) جعفر
    1 point
  40. السلام عليكم 🙂 الطريقة التي توصلت لها : 1. التقرير الرئيسي له جدول خاص به ، به رقم صفحات التقرير (سيتم عمل هذا تلقائيا) ، 2. التقرير الفرعي رقم 1 ، والتقرير الفرعي رقم 2 ، لكل تقرير فرعي مصدر بيانات خاص به (سيتم عمل هذا تلقائيا) ، ويحتوي على حقل رقم الصفحة ، 3. بيت القصيد ، ربط التقرير الرئيسي بالتقارير الفرعية عن طريق رقم الصفحة . يجب ان اقوم بتنظيف البرنامج ، واعادة عمله على اساس ما قلته اعلاه ، وللعلم فبعض بيانات التقارير الفرعية قد تم ادخالها يدويا حتى احصل على النتيجة 🙂 التقرير الذي يعمل حسب هذه الخطة هو Report2 🙂 ولا تحاول تعمل تغيير في بيانات الجداول الاصل ، فلن تتغير النتيجة في التقرير ، في هذه النسخة اخي ابا جودي ، اعتذر عن التأخير ، بس هذا كان تحدي 🙂 ورجاء ، اذا عندك اي ملاحظة او تغيير ، وبدون اي احراج ، رجاء تخبرنا عنه ، لأن العمل تقريبا انتهى 🙂 بكرة الصباح ان شاء الله اعمل البرنامج بصورته النهائية 🙂 جعفر 1135.2.Consumable Material Check List (40).accdb.zip
    1 point
  41. كفاك تشويقا أبا جعفر أبشر أبا جودى سيأتيك مطوِّع الأوفيس بالحلول العتيه .. للتقارير الفرعيه
    1 point
  42. ولقيت الحل ، بالاكسس 🙂 بس محتاج شوي علشان اعرضه ان شاء الله 🙂 جعفر
    1 point
  43. السلام عليكم 🙂 في آخر مرفق ، انا جعلت البرنامج يجهز عدد السجلات مسبقا ، للتقرير الاساسي (اللي في الاسفل) ، والتقرير الفرعي اللي في الاعلى ، التقرير في الاسفل ، وتم حل مشكلته ، اما التقرير في الاعلى فكذلك تم حل مشكلة السجلات ، ولكن لما التقرير الاساسي ينتقل الى الصفحة التالية ، ما قادر اخلي التقرير الفرعي ينتقل للصفحة التالية !! في حل برمجي بعمل قالب في الوورد ، ثم نصدر البيانات هناك ، والظاهر يمكن نضطر نأخذ هذا الاتجاه !! هل من مساعدة يا شباب 🙂 جعفر
    1 point
  44. بكرة الصباح ان شاء الله اكمل فيه 🙂 جعفر
    1 point
  45. السلام عليكم أخي أبو العلاء هذه محاولتين مني الأولى لإرسال صورة شكل بيضاوي أحمر والثانية لإرسال رسائل مختلفة , كأن تكون ( مثلا ) صاحب متجر أو دكان فترسل رسائل مختلفة لزبائنك تخبرهم فيها بما عليهم من الدين لاحظ المرفق إذا حدث خطا في الارسال فأرجو أن ترسل صورة للسطر الأصفر الذي توقف عنده الكود تحياتي Excel e whatapp1.xls
    1 point
  46. السلام عليكم أخي محمد انا لن اتطرق لطريقة عمل النموذج الجديد ، "لأننا" لم نلحظ المشكلة في النموذج الاصل ولكني دخلت في كود Combopn_AfterUpdate : pn = DLookup("pn", "code", "[pn]=forms!frm_dataentry!Combopn") size = DLookup("Size", "code", "[pn]=forms!frm_dataentry!Combopn") vendor = DLookup("Vendor", "code", "[pn]=forms!frm_dataentry!Combopn") Description = DLookup("Description", "code", "[pn]=forms!frm_dataentry!Combopn") Maxrl = DLookup("Maxrl", "code", "[pn]=forms!frm_dataentry!Combopn") Maxrlegyptair = DLookup("Maxrlegyptair", "code", "[pn]=forms!frm_dataentry!Combopn") ACType = DLookup("actype", "code", "[pn]=forms!frm_dataentry!Combopn") Pos = DLookup("pos", "code", "[pn]=forms!frm_dataentry!Combopn") BiasRadial = DLookup("biasradial", "code", "[pn]=forms!frm_dataentry!Combopn") code = DLookup("code", "code", "[pn]=forms!frm_dataentry!Combopn") لاحظت انك تنادي الجدول (اي تعمل استعلام للجدول) 10 مرات !! انا دائما لما اعمل برامجي ، اعمل البرنامج على اساس انه سيكون عبارة عن جزئين ، الواجهة FE ، والجداول BE ، وان الجداول BE ، ستكون في شبكة ، وان الواجهة FE ستكون لأكثر من مستخدم. لهذا السبب ، فيجب ان نقلل الزحمة في الشبكة ، وذلك بتقليل زيارة/استعلام الجداول قدر الإمكان ، وعند كل زيارة ، يجب ان نأخذ اكبر كمية من البيانات المطلوبة ، ثم نتعامل معها محليا في FE. لذلك ، فانا هنا اعطيك احد البدائل (والتي لا يعرفها الكثير ، لأنها تعمل على الاكسس 2003 فما فوق) ، فالكود التالي ، يقوم بزيارة/استعلام الجدول عن طريق DLookup مرة واحدة ، ويأخذ 10 بيانات مرة واحدة ، فلذا يمكن ان يستبدل كودك اعلاه: Dim x() As String A = DLookup("[pn] & '|' & [Size] & '|' & [Vendor] & '|' & [Description] & '|' & [Maxrl] & '|' & [Maxrlegyptair] & '|' & [actype] & '|' & [pos] & '|' & [biasradial] & '|' & [code]", "code", "[pn]=forms!frm_dataentry!Combopn") x = Split(A, "|") ' For i = LBound(x) To UBound(x) ' Debug.Print x(i) ' Next i Me.pn = x(0) Me.size = x(1) Me.vendor = x(2) Me.Description = x(3) Me.Maxrl = x(4) Me.Maxrlegyptair = x(5) Me.ACType = x(6) Me.Pos = x(7) Me.BiasRadial = x(8) Me.code = x(9) جعفر كل كلمات الشكر لا تعبر عما احس به نحوك استاذى الكريم ومعلمى الجليل فعلا فنان جزاكم الله خير الجزاء ان شاء الله
    1 point
  47. السلام عليكم أخي محمد انا لن اتطرق لطريقة عمل النموذج الجديد ، "لأننا" لم نلحظ المشكلة في النموذج الاصل ولكني دخلت في كود Combopn_AfterUpdate : pn = DLookup("pn", "code", "[pn]=forms!frm_dataentry!Combopn") size = DLookup("Size", "code", "[pn]=forms!frm_dataentry!Combopn") vendor = DLookup("Vendor", "code", "[pn]=forms!frm_dataentry!Combopn") Description = DLookup("Description", "code", "[pn]=forms!frm_dataentry!Combopn") Maxrl = DLookup("Maxrl", "code", "[pn]=forms!frm_dataentry!Combopn") Maxrlegyptair = DLookup("Maxrlegyptair", "code", "[pn]=forms!frm_dataentry!Combopn") ACType = DLookup("actype", "code", "[pn]=forms!frm_dataentry!Combopn") Pos = DLookup("pos", "code", "[pn]=forms!frm_dataentry!Combopn") BiasRadial = DLookup("biasradial", "code", "[pn]=forms!frm_dataentry!Combopn") code = DLookup("code", "code", "[pn]=forms!frm_dataentry!Combopn") لاحظت انك تنادي الجدول (اي تعمل استعلام للجدول) 10 مرات !! انا دائما لما اعمل برامجي ، اعمل البرنامج على اساس انه سيكون عبارة عن جزئين ، الواجهة FE ، والجداول BE ، وان الجداول BE ، ستكون في شبكة ، وان الواجهة FE ستكون لأكثر من مستخدم. لهذا السبب ، فيجب ان نقلل الزحمة في الشبكة ، وذلك بتقليل زيارة/استعلام الجداول قدر الإمكان ، وعند كل زيارة ، يجب ان نأخذ اكبر كمية من البيانات المطلوبة ، ثم نتعامل معها محليا في FE. لذلك ، فانا هنا اعطيك احد البدائل (والتي لا يعرفها الكثير ، لأنها تعمل على الاكسس 2003 فما فوق) ، فالكود التالي ، يقوم بزيارة/استعلام الجدول عن طريق DLookup مرة واحدة ، ويأخذ 10 بيانات مرة واحدة ، فلذا يمكن ان يستبدل كودك اعلاه: Dim x() As String A = Nz(DLookup("[pn] & '|' & [Size] & '|' & [Vendor] & '|' & [Description] & '|' & [Maxrl] & '|' & [Maxrlegyptair] & '|' & [actype] & '|' & [pos] & '|' & [biasradial] & '|' & [code]", "code", "[pn]=forms!frm_dataentry!Combopn"),"|||||||||") 'ويمكن استعمال اي شيء بدل عن | فمثلا الفاصلة 'A حتى اذا لم هناك قيمة للمتغير Nz نستعمل الدالة 'عدد مرات وضع العلامة | في نهاية السطر ، يكون نفس عددها في المعادلة 'لهذا السبب نرى اننا وضعنا 9 منها في نهاية السطر x = Split(A, "|") ' For i = LBound(x) To UBound(x) ' Debug.Print x(i) ' Next i Me.pn = x(0) Me.size = x(1) Me.vendor = x(2) Me.Description = x(3) Me.Maxrl = x(4) Me.Maxrlegyptair = x(5) Me.ACType = x(6) Me.Pos = x(7) Me.BiasRadial = x(8) Me.code = x(9) جعفر
    1 point
  48. اخي رضوان بارك الله فيك على هذه الملاحظة تم التعديل بموجبها قم بالتجربه الان وانظر هل تحسن الوضع الى الافضل zaChangeResolution2006_UP.rar اخي طارق العيد واصل تجاربك وان احتجت اي مساعده فلا تتردد في السؤال عنها
    1 point
×
×
  • اضف...

Important Information