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

jjafferr

أوفيسنا
  • Posts

    9998
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    406

كل منشورات العضو jjafferr

  1. همممم مسكتني من يدي اللي توجعني 🙂 مو كل شيء في قاعدة البيانات استعمله ، وهاي منهم 🙂 جعفر
  2. السلام عليكم 🙂 في الواقع احد اهم الاشياء في هذه الدالة هي التفرقة بين الحروف الكبيرة والصغيرة (بالانجليزي طبعا) ، لكلمة السر 🙂 ?Strcomp("A","a",vbBinaryCompare) -1 ?Strcomp("a","a",vbBinaryCompare) 0 ?Strcomp("Jj","jj",vbBinaryCompare) -1 ?Strcomp("jj","JJ",vbBinaryCompare) 1 فإذا النتيجة = 0 ، فتكون كلمة السر مطابقة ، وإلا ، فكلمة السر غلط 🙂 جعفر
  3. وعليكم السلام 🙂 واهلا وسهلا بك في المنتدى 🙂 رجاء مراجعة قوانين المنتدى : قواعد المشاركة فى الموقع اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف اما انا ، فما احب اعمل تغيير في اعدادات العميل ، لأنها تطبق على جميع برامج اكسس اللي يتم تشغيلها في ذلك الكمبيوتر ، ممكن عمل اللي تريده هكذا: على حدث "التركيز" للحقل ABC ، اكتب: me.ABC.sellength = 0 جعفر
  4. السلام عليكم 🙂 لوسمحت افتح موضوع جديد لهذا السؤال ، حفاظا على قوانين المنتدى 🙂 جعفر
  5. شكرا جزيلا على التوضيح 🙂 جعفر
  6. شو كانت المشكلة ؟ وكيف حليت المشكلة ؟ جعفر
  7. الامر SelLength معناه Selected Length ، اي البيانات التي تم اختيارها وتظليلها ، فإذا كانت القيمة في حقل او كومبوبوكس = "123456" ، ثم تم اختيار/تظليل الرقمين 34 ، فقيمة SelLength ستكون 2 ، ولكن لو لم يتم اختيار/تظليل اي رقم ، فقيمة SelLength ستكون صفر !! لذلك ، فهذه الدالة لا علاقة لها بطول النص في الحقل 🙂 جعفر
  8. هذا معناه ان البرنامج معمول على وندوز ليس عربي !! فما هي اللغة اللي كان عليها الكمبيوتر لما عملت البرنامج؟ هل هناك حروف اجنبية (مو انجليزية) في البرنامج ؟ اعمل التالي: اعمل بملف اكسس جديد ، 1. استورد جميع الكائنات من الملف القديم ، وشغل البرنامج ، اذا اشتغل بدون مشاكل ، فقد تم حل المشكلة 🙂 وإلا ، اعمل بملف اكسس جديد ، 2. استورد الجداول فقط من الملف القديم ، وشغل البرنامج ، اذا اشتغل بدون مشاكل: ثم استورد الاستعلامات فقط من الملف القديم (طبعا الجداول ستكون موجودة) ، وشغل البرنامج ، اذا اشتغل بدون مشاكل: ثم استورد نموذج واحد فقط من الملف القديم ، وشغل البرنامج ، اذا اشتغل بدون مشاكل: تابع في استيراد النماذج والتقارير ، واحدا واحد ، الى ان تعرف النموذج/التقرير اليي فيه المشكلة ، فيجب عليك ان تعيد صنعه مرة ثانية. جعفر
  9. همممم ، كنت اعتقد ان شرحي كان واضح ، ولكن مافي مانع من المحاولة مرة خرى : Debug.Print Len("234") = 3 Debug.Print Len("") = 0 Debug.Print Len(Null) = Null Debug.Print Len(Null & "") = 0 في مثالك If Len(Text) < 0 Then Text = "123456" Len(Text) = 6 Text = "انا جعفر" Len(Text) = 7 Text = "" Len(Text) = 0 Text = Null Len(Text) = Null يعني ما نحصل على طول الكلمة ، وانما نحصل على هذه الكلمة ولكن في مثالي If Len(Text & "") < 0 Then Text = "123456" Len(Text & "") = 6 Text = "انا جعفر" Len(Text & "") = 7 Text = "" Len(Text & "") = 0 Text = Null Len(Text & "") = 0 لهذا السبب ، جرب المثال على كمبيوترك ، واحكم بنفسك 🙂 جعفر
  10. جرب واعطنا النتيجة : Debug.Print Len(Null)
  11. وعليكم السلام 🙂 استخدم فاصل الاسطر : vBCrLf مثلا : السطر الاول & vBCrLf & السطر الثاني Constant Value Description ---------------------------------------------------------------- vbCr Chr(13) Carriage return vbCrLf Chr(13) & Chr(10) Carriage return–linefeed combination vbLf Chr(10) Line feed vbCr : - return to line beginning Represents a carriage-return character for print and display functions. vbCrLf : - similar to pressing Enter Represents a carriage-return character combined with a linefeed character for print and display functions. vbLf : - go to next line Represents a linefeed character for print and display functions. جعفر
  12. نعم انا فهمت السؤال ، وجوابي كان ، اذا ABC = Null فسيكون الجواب len([ABC]) = Null ، بينما نحن نريد الجواب ان يكون len([ABC]) = 0 جعفر
  13. الهدف من استعمال سطر واحد بدل عن مجموعة اوامر ، هو لتسهيل الامر والكود علينا ، ومعرفتنا اذا الحقل فيه قيمة ، معناه ان طول القيمة والتي نعرفها عن طريق الامر Len فإننا نريد ان نعرف اذا طول الحقل = 0 او لا اليك نتائج هذه العمليات : Debug.Print Len("234") = 3 Debug.Print Len("") = 0 Debug.Print Len(Null) = Null Debug.Print Len(Null & "") = 0 فالامر Len اعطانا قيمة 0 لما قيمة الحقل تكون "" ولكنه اعطانا Null لما قيمة الحقل تكون Null ، ولكن Null ليس رقم ،مما يجعلنا نضطر نرجع الى الامر IsNull ، معناه انه يجب ان نستخدم اكثر من امر في السطر الواحد (كما اوضحت سابقا). جعفر
  14. وهنا توضيح للدالة بمثال : الطريفة اللي اتبعها انا للتعامل مع الحقل ، سواء الفارغ او Null او بدون قيمة : بدل عن if isnull([ABC]) or [ABC]="" then استعمل if len([ABC] & "") = 0 then جعفر 🙂
  15. هذا لا علاقة له بالاوفيس ، وانما بإعدادات لغة Unicode الوندوز : جعفر
  16. قواعد المشاركة فى الموقع اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف. المنتدى مليء بعدة امثلة لطلبك، فقط استخدم خاصية البحث فيه.
  17. انا اعتذر منك ، فقد انت تشوف انه واضح من وجهة نظرك ، لأنك تشوف كل شيء امامك ، وقد يكون واضح لشخص غيري ، ولكنه غير واضح بالنسبة لي ، لهذا السبب تشوف اني كنت اتكلم عن اغلاق برنامج ، واعطيتك رابط له. على العموم ، اكرر اعتذاري ، وبالتوفيق ان شاء الله 🙂 جعفر
  18. السلام عليكم 🙂 اعمل زر في النموذج الرئيسي علشان يتحكم في النموذج الفرعي ليذهب للسجل التالي ، وضع عليه هذا الكود : اسم النموذج الفرعي.SetFocus DoCmd.GoToRecord , , acNext جعفر
  19. حياك الله 🙂 ومبارك لك جهودك للمضي قُدما ، بدون استسلام 🙂 انا كذلك لا الجئ الى المكتبات لنفس السبب 🙂 جعفر
  20. وعليكم السلام اخوي خلف 🙂 من زمان ما سمعنا منك ، ان شاء الله تكون في صحة وعافية 🙂 من اللي قرأته ، ومن تجربة سابقة ، مو كل الاوامر متاحة للتحكم في الاكسل من الاكسس ، اذا استعملت : Dim xlApp As Object فيجب ان لا تستعمل هذه الطريقة ، وانما بدلا عنها ، تستخدم المكتبة : Microsoft Excel x.xx object Library ولكن ، هناك دائما اوامر وطرق اخرى للوصول الى مبتغاك ، والمشكلة عندك في الجزء الاخير من السطر : end(xlup).row لذا انصحك تبحث في الانترنت عن هذه الجزئية فقط ، وايجاد البديل 🙂 جعفر
  21. شكرا على التوضيح 🙂 جعفر
  22. واقتراح : الوحدة النمطية بحاجة الى الحقول اللي فيها ارقام فقط مثل zey_en_1 ، وليست بحاجة الى الحقول اللي فيها نعم لا مثل es_en_1 ، فإذا الحقول zey فيها قيمة ، فهي زيادة ، واذا مافيها قيمة ، فهي لا 🙂 جعفر
  23. تفضل ، بتغيير في الوحدة النمطية ، بحيث الزائد صار له متغير مختلف عن الـ لا 🙂 . Option Compare Database 'حساب مستوى الدرجة Function zyd_1(a, b, c, d, e, f) As String 'a = المجموعة النوعية Dim A_1, E_1, D_1, A_2, E_2, D_2 As String 'اللغة العربية If a > 0 Then A_1 = "زيادة في اللغة العربية " & a & " درجة" ElseIf d = "لا" Then A_2 = " لم يزد في اللغة العربية " End If 'اللغة الأجنبية If b > 0 Then E_1 = "زيادة في اللغة الأجنبية " & b & " درجة" ElseIf e = "لا" Then E_2 = " لم يزد في اللغة الأجنبية " End If 'الدراسات If c > 0 Then D_1 = "زيادة في الدراسات " & c & " درجة" ElseIf f = "لا" Then D_2 = " لم يزد في الدراسات " End If 'الدمج 'الزيادة zyd_1 = "" If Len(A_1) > 0 Then zyd_1 = A_1 End If If Len(E_1) > 0 Then zyd_1 = zyd_1 & " و " & E_1 End If If Len(D_1) > 0 Then zyd_1 = zyd_1 & " و " & D_1 End If 'لم تزد If Len(A_2) > 0 Then zyd_1 = zyd_1 & " و " & A_2 End If If Len(E_2) > 0 Then zyd_1 = zyd_1 & " و " & E_2 End If If Len(D_2) > 0 Then zyd_1 = zyd_1 & " و " & D_2 End If 'اذا في واو في بداية الجملة فلا تقرأها If Left(zyd_1, 3) = " و " Then zyd_1 = Mid(zyd_1, 4) End If End Function جعفر 1162.1.tzalom.mdb.zip
  24. وعليكم السلام 🙂 تفضل : . وهذه الوحدة النمطية بعد التعديل : Option Compare Database 'حساب مستوى الدرجة Function zyd_1(a, b, c, d, e, f) As String 'a = المجموعة النوعية Dim A_1, E_1, D_1 As String 'اللغة العربية If a > 0 Then A_1 = "زيادة في اللغة العربية " & a & " درجة" ElseIf d = "لا" Then A_1 = " لم يزد في اللغة العربية " End If 'اللغة الأجنبية If b > 0 Then E_1 = "زيادة في اللغة الأجنبية " & b & " درجة" ElseIf e = "لا" Then E_1 = " لم يزد في اللغة الأجنبية " End If 'الدراسات If c > 0 Then D_1 = "زيادة في الدراسات " & c & " درجة" ElseIf f = "لا" Then D_1 = " لم يزد في الدراسات " End If 'الدمج zyd_1 = "" If Len(A_1) > 0 Then zyd_1 = A_1 End If If Len(E_1) > 0 Then zyd_1 = zyd_1 & " و " & E_1 End If If Len(D_1) > 0 Then zyd_1 = zyd_1 & " و " & D_1 End If 'اذا في واو في بداية الجملة فلا تقرأها If Left(zyd_1, 3) = " و " Then zyd_1 = Mid(zyd_1, 4) End If End Function جعفر 1162.tzalom.mdb.zip
×
×
  • اضف...

Important Information