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

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      14

    • Posts

      9,814


  2. صالح حمادي

    صالح حمادي

    أوفيسنا


    • نقاط

      9

    • Posts

      1,745


  3. خالد الرشيدى

    خالد الرشيدى

    الخبراء


    • نقاط

      7

    • Posts

      889


  4. ياسر خليل أبو البراء

    ياسر خليل أبو البراء

    المشرفين السابقين


    • نقاط

      5

    • Posts

      13,165


Popular Content

Showing content with the highest reputation on 14 فبر, 2017 in all areas

  1. وهنا النسخة 1.2 من البرنامج ، للأخ خضر الرجبي http://arabteam2000-forum.com/index.php?/topic/64952-محرك-بحث-الأكسيسالأصدار-12/&do=findComment&comment=323189 ولكي يعمل ، استخدم الاستعلامات وتغيير الكود كما شرحته في مشاركتي السابقة جعفر
    2 points
  2. علة المطلوب احد الملفات به الكود -- والاخر قمت بتنفيذ الكود ثم حذفته edit.rar
    2 points
  3. السلام عليكم اخي محمد رجاء عمل نسخة من البرنامج قبل العمل عليه البرنامج مافيه مشكلة ، ماعدا: 1. طريقة عنوان موقع اوفسينا تغيّر عن السابق ، فاستعمل استعلام التحديث التالي لضبط جميع حقوله: UPDATE Links SET Links.link = Replace(Replace(Replace([link],"http:","https:"),".com",".net"),Chr(34),"") WHERE (((Links.club)="أوفيسنا")); 2. اما موقع الفريق العربي للبرمجة ، فيجب تعديل المسمى " الفريق العربي" الى "الفريق العربي" (لاحظ المسافة قبل الاسم) ، بالاستعلام التالي: UPDATE Links SET Links.club = "الفريق العربي" WHERE (((Links.club)=" الفريق العربي")); وتغيّر عنوانه عن السابق ، فاستعمل استعلام التحديث التالي لضبط جميع حقوله: UPDATE Links SET Links.link = Replace(Replace(Replace([link],"www.",""),Chr(32),""),Chr(34),"") WHERE (((Links.club)="الفريق العربي")); 3. موقع المحيط العربي غيّر عنوان صفحاته ، ولم استطيع معرفة طريقة تغيير العنوان القديم بالجديد !! 4. اما موقع خضر الرجبي فلا وجود له على الانترنت الآن. والتغيير الاخير الذي عملته هو كود فتح الروابط ، فاصبح: Application.FollowHyperlink Me.link يبدو لي انه هناك جزء من البرنامج غير مرفق ، وهذا الجزء الذي يبحث في هذه المواقع عن هذه المعلومات ، ثم يحفظها في قاعدة البيانات ، فاذا عندك هذه الجزئية ، رجاء ضمها للبرنامج المرفق جعفر 579.1.AccessSearchEngine.mdb.zip
    2 points
  4. السلام عليكم ورحمة الله تعالى وبركاته بعد طلب من الأخ الغالي حسام عيسى في موضوع هدية لأساتذتي في المنتدي فورم ترحيل بشرط إكمال باقي البيانات اقدم لكم هذا الفورم البسيط جدا وكل هذا بفضل أساتذتي الافاضل في هذا الصرح العظيم حفظكم الله وزادكم من علمه فورم بحث وتعديل وحذف وترحيل شرح امكانيات الفورم وكيفية الاستخدام إدراج الأسماء في الليبل ( إختياري) يحتوي الفورم على واجهتين: شاشة البحث والتعديل والحذف 1- البحث 2- تعديل 3- حذف وترقيم تلقائي شاشة إدخال البيانات 1- ترقيم تلقائي عند الإضافة 2- تنسيق تلقائي عند الترحيل أرجو ان ينال أعجابكم مع تحيات محبكم/الجموعي لم أستطع رفع الملف على سيرفر المنتدى تم الرفع على مركز الخليج من هنـــــــــــــــــــا
    1 point
  5. بسم الله و ما شاء الله اللَّهُمَّ انْفَعْنَا بِمَا عَلَّمْتَنَا , وَعَلِّمْنَا مَا يَنْفَعُنَا , وَزِدْنَا عِلْمًا إِلَى عِلْمِنَا اهداء لكل من شارك بعلمه اقل ما يقال لكم "عندما تنتهى كلمات الابداع و تبدأ من جديد و تنتهى عندكم" بارك الله لكم ( فكرة المدونة هى سهولة الوصول و البحث فى المنتدى للذهاب الى ملف _ المدونه الاصدار الاول من هنا مدونة اعمال ايقونات الماس لمنتدى اوفيسنا_سلسله تجميعيه قسم أكواد فيجوال بيزيك التطبيقات - VBA_ منتدى اوفيسنا محفظة اكواد منوعة_ بدأه _ أ / عبدالله باقشير موضوع مميز _ مكتبة اكواد _ أ / ياسر خليل أبو البراء _ مشاركات الاعضاء افتح الباب وادخل لعالم البرمجة (متخافوش يا أحباب من اللي ورا الباب) أ /ياسر خليل المشروع الكبير (مكتبة الصرح .. زاخرة بالشرح) وهي عبارة عن تجميع لمكتبة الأكواد _ أ / ياسر خليل بداية الطريق لإنقاذ الغريق _ أ / ياسر خليل فهرس بتعليمات وبرمجيات الفيجوال بيزيك للاكسل _ أ / طارق محمود مكتبة أكواد-300كود _ مشاركة _ أ / عبدالعزيز محمد-محب البرمجة هدية للموقع تجميعية ملف به اكواد vba جاهزة _ أ / عبدالعزيز محمد-محب البرمجة بنك أكواد _ أ / abo mohamad هدية للموقع تجميعية ملف به اكواد vba جاهزة _ أ / قلم-الاكسل(عبدالعزيز) لاول مره على الانترنت- كتاب تعلم لغه ال VBA باللغه العربيه (إكسيل) _ أ / خالد الرشيدى افضل موافع الاكسيل على مستوى العالم _ أ / محمد الريفى *** دوال مستحدثة - برامج - أدوات ذكية ***_ أ / أبو تامر_عمر الحسينى الحلول الذكية لمشاكل الاكسل _ أ / أبو تامر_عمر الحسينى موسوعة الاكواد _ أ / أبو تامر_عمر الحسينى اجابات للموضوعات التى يكون عنوانها ( سؤال فى VBA ) _ أ / أبو تامر_عمر الحسينى سلسلة دروس الفيجوال بيسك 6 والاكسيل من علي مصطبة ياسر العربي _ أ / ياسر العربى دروس فى VBA Excel _ نتعلم معا برمجه اكسل _ أ / محمود الشريف مش مهم تكون محترف vba ولكن مهم يكون عندك معلومات عن vba _ أ / إبراهيم ابوليله قسم مكتبة الاكواد فى المكتبة _ أ / محمد طاهر دورة شرح الفيجول بيسك للتطبيقات VBA _ أ / عبدالله المجرب كتاب الكتروني : دورة المبتدئين في ال VBA _مشاركة الاستاذ / محمد يحياوي اهداء الى الاستاذ / ياسر خليل أبو البراء كتاب الكتروني : دورة في الVBA وتطبيقاته في الاكسل 2 _مشاركة_ أ / محمد يحياوي كتاب الكتروني : دورة للمتوسطين في الVBA للاستاذ هادي _مشاركة_ أ / محمد يحياوي (موضوع مميز ) بعض الاكواد المنفصلة قد تهم البعض_بدأه_ أ / محمد يحياوى كل شيئ عن VBA _ مشاركة_ أ / محمد يحياوي حصريا : تعرف على VBA .... ببساطة_ أ / ابو هاجر المصرى ( موضوع مميز ) معالم على طريق البرمجة بلغة VBA _ أ / زياد على موضوع مميز_مجموعة ملفات بالاكواد عن طريق الارتباط التشعبى بشيت اكسيل _ أ / زياد على شرح الماكرو و القوائم بالصور مع برنامج _ أ / هادى محمد المامون سالم شرح الفيجوال بيزيك للمتوسطين_ أ / هادى محمد المامون سالم دورة شرح الفيجوال بيسك لبرنامج الاكسيل VBA .. !! خطوة خطوة _ أ / حمادة عمر أضع لكم بعض الاكواد البسيطة المطلوبة لتعم الفائدة _ أ / رؤوف1951 الطريق الى تعلم فيجوال بيسك الاوفيس _ مشاركات الاعضاء أول الغيث قطرة_ تعلم VBA _ مشاركات الاعضاء ماذ تفعل لو .... سلسلة تعليمية _ أ / طارق محمود شرح دوال الاكسل للاستاذ خبور _ أ / عبدالله باقشير خواطر إكسيلية _ أ / محمد حسن المحمد و مشاركات الاعضاء أمثلة على دوال هامة بالعربي مصنفة حسب عمل الدوال _ أ / أبوعبد الله_اكسلجى موضوع مميز_مكتبة تجميعيه للدوال بالعربى _ أ / أبوعبد الله_اكسلجى كتاب VISUAL BASIC للجميع بالعربي - هدية للجميع _ أ / أبوعبد الله_اكسلجى سلسلة فتح باب الإبداعات للناس العسل في تعريب معادلات الإكسيل _ أ / أبوعبد الله_اكسلجى أكواد أعجبتني _ أ / أبوعبد الله_اكسلجى سلسلة فتح باب الإبداعات للناس العسل في تعريب معادلات الإكسيل _ أ / أبوعبد الله_اكسلجى مكتبة دوال ومعادلات _ أ / محمد الريفى مكتبة دوال ومعادلات الاكسيل (سابقا:مقدمه هامه فى الصيغ) _ أ / محمد الريفى مكتبة كتب اكسيل باللغه العربيه _ أ / محمد الريفى ملف من احد المنتديات الاجنبيه به معادلات شتى وصفيف رائعه_ بدأه _ أ / ابو اياد ( الاسيوطى ) دوال اعجبتنى _ أ / هشام شلبى (موضوع مميز) شرح بعض المعادلات وبعض الخصائص فى الاكسيل_ بدأه _ أ / جمال الفاار اضخم كتاب لتعلم الصيغ والدوال في Excel 2007_ مشاركة من أ / mebsat2 مواضيع قديمة ومهمة جدا بمنتدى الاكسيل_ أ / قنديل الصياد الدوال فى Excel (حسب الفئة) _ أ / قنديل الصياد دوال الإكسيل المختلفة مع شرح مبسط جداً لوظيفة كل دالة _ أ / ا بو سليمان ملف رائع للكثيرمن دوال الاكسل _ أ / ا بو سليمان الدوال بالأكسل _ أ / نزار سليمان عيد لنتعلم سويا _ أ / dangerman2 أفضل ما قرأت _ أ / dangerman2 دروس مترجمة في ( VBA ) _ أ / dangerman2 لنطور أنفسنا _ أ / dangerman2 شرح لبعض دوال الاكسيل باللغة العربية _أ / bahraini مجموعه دوال وافكار للاكسل _أ / abo mohamad قاموس شرح دوال الإكسل (ملف تعليمي) _ أ / محمد عسكر حصرياً ولأول مرة على مستوى المنتديات العربية- الدورة المتميزة- اكسيل 2013 المستوى المتقدم (موضوع متجدد) _ أ / nedal_shami دروس vba_درس رقم 1 _ أ / الخضر ترجمة 339 معادلة إلى أربع لغات _ أ / أبوطارق Excel Function Dictionary v.2 _ أ / ابو اسامة العينبوسي بعض دوال اكسيل باللغة العربية - ملف جميل و سهل _ أ / يحيى حسين فنبلة الموسم لعام 2017 ، كتاب يحتوي على 1200 مثال لتطبيق الماكرو على الإكسيل _ أ / الزباري مجموعة دوال اكسيل _ أ / h63 مشاركة متواضعة _ أ / asmo200666
    1 point
  6. حذف الارتباطات التشعبية من ملف وورد مرة واحدة
    1 point
  7. 1. ماذا كانت المشكلة ؟ 2. هذا غير صحيح ، ولكن انصب اوفيس 32 بت ، بغض النظر عن نوع الوندوز سواء 32 او 64 بت. انا عندي الاوفيس 2010 ، ولا احدثه إلا اذا تم تصليح عيوب الاصدارات الجديدة جعفر
    1 point
  8. السلام عليكم جرب الكود اتمنى ان يكون المطلوب Data base2.rar
    1 point
  9. السلام عليكم ورحمة الله لم تجرب المرفق في ردي ففيه ما تريد... بن علية
    1 point
  10. انا اعمل على اكسس 2010 وما عندي مشكلة واعتقد تستطيع الاستفادة من هذا الرابط جعفر
    1 point
  11. وعليكم السلام 1. نفترض الملف الحالي في \:C والمجلد الجديد الى \:E للنسخ FileCopy "Source Path And Name", "Destination Path And Name" FileCopy "C:\myfile.pdf", "E:\Temp\File_With_New_Name.pdf" لنقل الملف من مجلد الى آخر Name "old path AND name" As "new path AND name" Name "C:\myfile.pdf" As "E:\Temp\File_With_New_Name.pdf" 2 و 5 . عند طلب تشغيله: application.followhyperlink "E:\Temp\File_With_New_Name.pdf" 3 و 4 . If Dir("E:\Temp\File_With_New_Name.pdf") <> "" Then 'الملف موجود، غير لون خلفية حقل النص الى اخضر me.Field1.backcolor=rgb(0,255,0) 'Green Else MsgBox "الملف غير موجود" me.Field1.backcolor=rgb(255,0,0) 'Red End If جعفر
    1 point
  12. أخى الكريم قمت بتجربة الكود مرة أخرى ووجدت أنه يتم الترحيل إلى الخلايا المطلوبة وليس كما ذكرت وإن كان ينقص الكود الخاص بى أسطر تفريغ الحقول بعد إجراء التعديل وال`ى أضافه الأستاذ الفاضل / صالح أبو أحمد Me.StaNa = "" Me.WaNa = "" Me.SckoNa = "" Me.SopNa = "" Me.SerchSt = "" تقبل تحياتى
    1 point
  13. أخي العزيز هناك بعض الأخطاء الأمر الأول المعادلة وجدتها بهذا الشكل والمفروض أن تبدأ من السطر الثاني ويكون العمود مجمد لعلامة الدولار والصف مطلق حتى تتغير البيانات بتغير بيانات الصف كما في المعادلة السابقة =SUMPRODUCT(--(تاريخ=$D1048572)*(رقم_السيارة=$E1048572)*(سائق=$F1048572))>0 الأمر الثاني أنك غيرت في تسمية النطاقات ولم يتم تغيرها في المعادلة الأمر الثالث أن النطاقات مفروض تكون متطابقة من حيث بداية الصف ونهايته أنت قمت بزيادة صفوف النطاقات ولكن لم تكن متساوية المهم تم التعديل وزيادة نطاق ( الطابقة 1) من أجل ألا يتم تظليل الخلايا الفارغة =SUMPRODUCT(--(تاريخ_التحميل=$D2)*(رقم_السيارة=$E2)*(اسم_السائق=$F2)*(المطابقة1="مصروف"))>0 المطابقة - المصروف + الموقف - تطبيق.rar
    1 point
  14. السلام عليكم جرب المرفق لعل فيه ما تريد بعد بعض التعديل على الكود... بن علية XYZ sample.rar
    1 point
  15. اخي الكريم جزاك الله خيرا على هذا الدعاء الطيب جزاك الله بمثله ان شاء الله --- التعديل لم يتناول غير هذا الجزء من الكود --- تقبل خالص تحياتي
    1 point
  16. اللهم اني اسألك بحق إسمك الاعظم الذي اذا دعيت به اجبت ان تبارك للاستاذ المحترم خالد الرشيدي وتمده بالصحه والعافيه .. يارب هل تم التغيير في هذه الجزئيه ام يوجد تغييرات اخرى ؟ If (MyDate - .Cells(irow, 7)) <= expd And (MyDate - .Cells(irow, 7)) > 0 Then ================= مامعنى هذه الجمله بارك الله لك ؟ =CHAR(156)
    1 point
  17. وعليكم السلام هذه الرسالة معناها انك لم تقم بنسخ هذا السطر الى برنامجك: err_coodkindexchange_AfterUpdate: والذي يأتي بعد Exit Sub (كما هو في الكود الذي وضعته انا اعلاه) جعفر
    1 point
  18. وعليكم السلام افتح الرابط التالي ، للحصول على ارقام اللغات: https://msdn.microsoft.com/en-us/library/cc195085.aspx مثلا رقم اللغة الانجليزية: 0x09 بينما رقم اللغة العربية: 0x01 ثم اضف 2 الى رقم اللغة ، يعني للغة الانجليزية: 9 + 2 = 11 واللغة العربية: 1 + 2 = 3 ولنفترض ان اسم الحقل هو url_address ، لذا ، عند حدث تحميل النموذج ، ولجعل اللغة العربية هي الافتراضية فيه ، اكتب هذا الكود: Me.url_address.KeyboardLanguage = 3 ولكن من تجاربي السابقة (ولا اعرف اذا عملت مايكروسوفت الى حل هذه المشكلة) ، فإن التنقل من هذا الحقل الى الحقل الآخر سيكون بطيئا جدا ، لذا فقد الغيته من بعض برامجي جعفر
    1 point
  19. السلام عليكم زكرت حضرتك ان إسلام وجب ان يظهر لانه اقل من تاريخ اليوم ب 4 ايام وهو الرقم المدخل -- هناك عقود في تواريخ اقل من تاريخ اليوم ايضا ب 3 ايام او اقل او اكثر غير اسلام لم تذكر حضرتك هل كان من المفترض ادراجها ام لا ؟؟ عموما اليك التعديل التالي عله المطلوب -- لن يظهر سوي التاريخ الاقل من تاريخ اليوم ب -- العدد المدخل -- ايام If (MyDate - .Cells(irow, 7)) = expd And (MyDate - .Cells(irow, 7)) > -1 Then تنبيـــــهات_3.rar تقبل تحياتي وشكري علي هذه الكلمات الرائعه من حضرتك -- شكرا جزيلا
    1 point
  20. استازي الحبيب / ابو البراء والله لشرف كبير لي ان اسمع تلك الكلمات من حضرتك بارك الله لنا في حضرتك وزادك علماً ورفعه خالص حبى وتقديرى وامتنانى لشخصكم الكريم
    1 point
  21. منور المنتدى أخي وحبيبي في الله خالد الرشيدي لكم أعشق رؤية ردودك في المنتدى .. تقبل وافر تقديري واحترامي
    1 point
  22. السلام عليكم تفضل ياسيدي ، الارقام الموجودة في النموذج الفرعي على اليمين ، لن تظهر في مربع التحرير والسرد في النموذج الفرعي على اليسار كلما تقوم بتحديث الحقل coodkindexchange في النموذج Frm_Monthexchange ، فيقوم بعمل مصدر بيانات لمربع التحرير والسرد coodkind في النموذج الفرعي الآخر tbl_kind : Private Sub coodkindexchange_AfterUpdate() On Error GoTo err_coodkindexchange_AfterUpdate DoCmd.RunCommand acCmdSaveRecord Dim rst As DAO.Recordset mySQL = "SELECT id, coodkind, Namekind" mySQL = mySQL & " FROM tbl_kind " Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For i = 1 To RC If i = 1 Then mySQL = mySQL & "WHERE coodkind <> " & rst!coodkindexchange Else mySQL = mySQL & " And coodkind <> " & rst!coodkindexchange End If rst.MoveNext Next i 'Debug.Print mySQL Forms!tabl!tbl_kind.Form!coodkind.RowSource = mySQL Forms!tabl!tbl_kind.Form!coodkind.Requery rst.Close: Set rst = Nothing Exit Sub err_coodkindexchange_AfterUpdate: If Err.Number = 2455 Then Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub Private Sub Form_Current() Call coodkindexchange_AfterUpdate 'Me.N00 = [Forms]![tabl]![Totail] - Me.Total3 End Sub جعفر 581.tbl.accdb.zip
    1 point
  23. أخي العزيز استعملت هذه المعادلة في التنسيق الشرطي بعد إضافة تسمية لنطاقات جديدة =SUMPRODUCT(--(تاريخ=$D2)*(رقم_السيارة=$E2)*(سائق=$F2))>0 المطابقة - المصروف + الموقف - تلوين المصروف1.rar
    1 point
  24. جرب هذه المعادلة قي الخلية I2 وسحب نزولاً =IF(H2="","",VLOOKUP(H2,{1,0.04;46,0.025;76,0.01;91,0},2))
    1 point
  25. السلام عليكم ورحمة الله تم عمل المطلوب في الملف المرفق... بالنسبة لـزر "طباعة فاتورة واحدة" فالكود يقوم بتغيير رقم الفاتورة من شيت الخلية F4 من شيت "الرئيسية" ثم يقوم بالطباعة الورقية (الطابعة) للفاتورة المعنية... أما كود "طباعة كل الفواتير" فهو يقوم بطباعة كل الفواتير في شيت "طباعة كل الفواتير" (مع ملاحظة أنه لا يجب حذف الفاتورة رقم 1 من هذا الشيت لأنها تعتبر نموذجا لطباعة كل الفواتير الأخرى باستعمال خاصية النسخ واللصق مع تغيير رقم الفواتير وبياناتها)... أرجو أن يفي هذا العمل بالمطلوب... بن علية رياض-الطفل.rar
    1 point
  26. السلام عليكم حقيقة لم افهم المطلوب تماما -- عموما الجزء الخاص من الكود والخاص بتحديد موعد التنبيه هو If (.Cells(irow, 7) - MyDate) <= expd And (.Cells(irow, 7) - MyDate) > -1 Then وفقا لما فهمت من الطلب استبدله بــ If (.Cells(irow, 7) - MyDate) >= expd Then وان لم يكن كذلك ارجو مزيد من التوضيح مع بعض النتائج المتوقعة تقبلوا تحياتي
    1 point
  27. لك فائق الشكر والاحترام
    1 point
  28. السلام عليكم لم يتم ادراج نموزج لمعرفة نطاق البيانات ولم يتم زكرة ايضا عموما -- احد الطرق هي ادراج هذا الكود في موديول وربطه بزر تنفيذ --- ثم يتم تحديد تلك الخلايا ال 1000 والضغط علي الزر لمرة واحدة Sub cells() Dim c As Range For Each c In Selection If c.Value <> "" Then c.Value = "صدلية" & " " & c.Value Next End Sub
    1 point
  29. مشكور اخي خالد ... هذا هو المطلوب يعطيك العافية
    1 point
  30. الموضوع فيه لبس في المنطق ... في المثال المرفق من قبل الأخ سامي يوجد في الصف الثاني 3443043 والناتج المطلوب XYYX0XY أليس حسب المنطق المشروح في المشاركة الأولى أن يكون بهذا الشكل XYYX0YX ؟؟ في ملف الأخ سليم خرجت النتيجة بهذا الشكل XYZA0CD يرجى تأكيد المنطق الصحيح لكيفية إجراء العملية ، والرد على تساؤلي ما الهدف من إجراء تلك العملية؟
    1 point
  31. جرب هذا الكود Sub replace_for_me1() Dim my_arr() Dim my_st, my_text As String Dim my_aar2() Dim k, x, lr As Integer lr = Sheets("sheet1").Cells(Rows.Count, 1).End(3).Row For k = 2 To lr ReDim my_arr2(1 To 7) my_arr = Array("X", "Y", "Z", "A", "B", "C", "D") my_st = Range("a" & k) For i = 1 To 7 s = Mid(my_st, i, 1) If s = "0" Then my_arr(i - 1) = s: GoTo 1 my_arr2(i) = my_arr(i - 1) 1: Next my_text = "" For x = LBound(my_arr) To UBound(my_arr) my_text = my_text & my_arr(x) Next Range("a" & k).Offset(0, 2) = my_text Next End Sub
    1 point
  32. وعليكم السلام إن شاء الله يساعدك أحد الأخوة في طلبك ولكن لي سؤال ما الفائدة من هذا الأمر (من باب الفضول لا أكثر)
    1 point
  33. أختنا الكريمة تم عمل كشف الأوائل بالأكواد من خلال القوائم المنسدلة تمكنك القوائم المنسدلة من إختيارات متعدده ( الأوائل حسب المجموع الكلي أو المواد والصف و الفصل الدراسي ) وأسأل الله عز وجل أن يكرم أساتذتى بهذا المنتدى والذين لهم فضل بعد الله سبحانه وتعالى في كل ما تعلمته بخير الخير أخى الحبيب الأستاذ الكبير // الشهابي بوركتم وجزيتم عنى خير الخير THE FIRST ST.rar
    1 point
  34. شكرا استاذ مجدى يونس شكرا اخى مجدى منتظر سيادتك استاذ مجدى
    1 point
  35. يمكنك انزال المرفقات بطريقتين: 1. النقر على المرفق مباشرة بزر الفأرة اليسار ، 2. النقر على المرفق بزر الفأرة اليمين ، ومن القائمة تختارين "Save Link As". ويمكنك كذلك ان تنسخي رابط المرفق: https://www.officena.net/ib/applications/core/interface/file/attachment.php?id=124252 وتلصقيه في متصفحك ، وان شاء الله سينزل المرفق جربي الطرق لوسمحتي ، واذا لم تفلحي ، اخبريني وسأرسل لك المرفق على بريدك ، وسأخبر المسؤولين في المنتدى عن هذا الخلل الفني لإصلاحه جعفر
    1 point
  36. الحمد لله الذي بنعمته تتم الصالحات مشكور على كلماتك الطيبة تقبل تحياتي
    1 point
  37. السلام عليكم أخي أمير هذا الكود سوف يقوم بإعطاء نتيجة عدد الصفحات 0 و سوف يعمل الكود بشكل جيد إذا أضفنا للتقرير مربع نص و نكتب به [Pages] مع العلم أن تسمية مربع النص غير مهمة سمه كما تشاء
    1 point
  38. اذا كنت تقصد اظهار عدد الصفحات داخل التقرير: فاستخدم معالج انشاء التقرير وسوف يظهر تلقائيا رقم الصفحة واجمالي الصفحات واذا كنت تقصد اظهار عدد الصفحات داخل نموذج : Private Sub Command0_Click() strReportName = "table1" DoCmd.OpenReport strReportName, acViewPreview, , , acHidden MsgBox (Reports(strReportName).Pages) DoCmd.Close acReport, strReportName, acSaveNo End Sub
    1 point
  39. السلام عليكم في تذييل الصفحة " اجمالي صفحة " & [Page] = و الله الموفق
    1 point
  40. الفكرة الجديدة هي: خلينا نستعرض كل صفحة ونشوف نتيجة الجمع اسفل الصفحة ، ولما نشوف نتائج كل صفحة ، خلينا نحفظ هذه المعلومة في مكان ما (انا استعملت Array ، ولكن يمكن استعمال جدول مؤقت كذلك) ، وعلشان نستعرض كل صفحة ، فيجب استعراضها يدويا ، او طباعة التقرير ، انا طبعت التقرير بصيغة rtf (فحصلت على مجموع كل صفحة في Array ، ثم حذفت ملف rtf المؤقت ، ثم اعرض التقرير بطريقة عادية ، وتكون النتائج في رأس الصفحة ولكن يجب عليك فتح التقرير عن طريق النموذج علشان هذا العمل ، لازم تكون عندنا وحدة نمطية للإحتفاظ بالقيم ، الرقم 100 معناه 100 صفحة تقرير (يعني انا كتبت رقم كبير ، واذا تقريرك فيه صفحات اكثر ، فرجاء تكبير الرقم): Option Compare Database Public A1(100), B1(100), C1(100) وكود جمع البيانات كما عملناه سابقا ، بالاضافة الى إضافة النتائج الى Array : Option Compare Database Private A, B, C As Integer Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer) If Me.Sec = "الاستقبال" Then A = A + 1 ElseIf Me.Sec = "الصيانه" Then B = B + 1 ElseIf Me.Sec = "المطبعه" Then C = C + 1 End If End Sub Private Sub PageFooterSection_Print(Cancel As Integer, PrintCount As Integer) Me.txt_A = A A1(Me.Page) = A Me.txt_B = B B1(Me.Page) = B Me.txt_C = C C1(Me.Page) = C A = 0 B = 0 C = 0 End Sub Private Sub PageHeaderSection_Print(Cancel As Integer, PrintCount As Integer) On Error GoTo err_PageHeaderSection_Print Me.txt_A1 = A1(Me.Page) Me.txt_B1 = B1(Me.Page) Me.txt_C1 = C1(Me.Page) Exit Sub err_PageHeaderSection_Print: If Err.Number = 9 Then Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub جعفر 576.الجمع بشرط فى تقرير.accdb.zip
    1 point
  41. اتفضل استخدمت هذا الكود Private Sub Text13_AfterUpdate() Dim X As Integer X = DCount("cheq_no", "MASTER1", "[cheq_no]='" & Me.Text13 & "'") If X > 0 Then MsgBox " åÐÇ ÇáÑÞã ãæÌæÏ ãÓÈÞÇ" Me.Text13 = "" Me.Text13.SetFocus End If End Sub اليك ملفك بعد اضافة الكود salr.rar salr.rar
    1 point
  42. الدرس السادس: الدوال النصية هنالك الكثير من الدوال المستعملة في VBA و سوف نحاول ذكر الدوال المشهورة منها حسب عملها: Asc: إرجاع عدد صحيح يمثل رمز الحرف الأول في السلسلة النصية. مثال: Me.y = Asc("أوفيسنا") النتيجة=195 Chr: تحويل عدد صحيح إلى حرف أو رمز. مثال: Me.y = Chr("210") النتيجة=ز InStr: استخراج موضع بداية سلسلة ضمن سلسلة أخرى. مثال: Instr(المقارنة,السلسلةالمبحوث عنها,السلسلة التي يتم فيها البحث,مكان بداية البحث) Me.y = InStr(1,"homsalah", "a")=5 InStrRev: إرجاع موضع تواجد سلسلة ضمن سلسلة أخرى بدءا من نهاية السلسلة. InStrRev(المقارنة,بداية البحث,السلسلة المبحوث عنها,السلسلة) Me.y = InStrRev("homsalah", "a", -1)=7 LCase: تحويل حروف سلسلة إلى حروف صغيرة. مثال: Me.y = LCase("ABC")=abc UCase: تحويل الأحرف إلى أحرف كبيرة. مثال: UCase(السلسلة النصية) Me.y = UCase("abcd")="ABCD" Left: ارجاع جزء من سلسلة حرفية حسب عدد الحروف المطلوبة من جهة اليسار. مثال: Left(عدد الأحرف المطلوبة,السلسلة ) Me.y = Left("1999", 2)=19 Len: حساب عدد الأحرف في السلسلة. مثال: len(السلسلة) Me.y = Len("1999")=4 LTrim: حذف الفراغات الموجودة في الجهة اليسرى. مثال: Trim(السلسلة) Me.y = Trim(" 1999")="1999" Mid: ارجاع جزء من سلسلة بحيث تحدد بداية الجزء و طوله (عدد الأحرف). مثال: Mid(عدد الأحرف,نقطة البداية(رقم),السلسلة) Me.y = Mid("SALAH", 3, 2)="LA" Replace: تعويض جزء من سلسلة بجزء آخر. مثال: Replace(الجزء المعوض,الجزء الذي نريد استبداله,السلسلة) Me.y = Replace("SALAH", "H", "T")="SALAT" Right: ارجاع جزء من سلسلة حرفية حسب عدد الحروف المطلوبة من جهة اليمين. مثال: Right(عدد الحروف,السلسلة) Me.y = Right("SALAH", 2)="AH" RTrim: حذف الفراغات الموجودة في الجهة اليمنى لسلسلة. مثال: RTrim(السلسلة) Me.y = RTrim("15 ")="15" Trim: حذف المسافات البادئة و الزائدة من سلسلة. مثال: Trim(السلسلة) Me.y = Trim(" 15 ")="15" Space: ارجاع سلسلة تتألف من عدد من المسافات المحددة. مثال: Space(عدد الفراغات) Me.y = Space(3)=" " Str: ارجاع متغير من نوع string يمثل رقم.(تحويل متغير من نوع رقم إلى متغير من نوع سلسلة نصية) مثال: Str(العدد) Me.y = Str(3)=" 3" Me.y = Str(-3)="-3" تقوم بإرجاع مسافة قبل الأعداد الموجبة StrComp: ارجاع عدد صحيح يشير إلى نتيجة مقارنة سلسلتين.إذا كانت متساوية يرجع 0 و إذا كانت مختلفة يرجع 1 أو 1- مثال: StrComp(السلسلة2,السلسلة1,المقارنة) Me.y = StrComp("ass", "ass")=0 Me.y = StrComp("as", "ass")=-1 StrConv: ارجاع سلسلة تم تحويلها كما هو محدد. مثال: StrConv(رقم يمثل رمز التحويل,السلسلة,LCID) Me.y = StrConv("ass", 1)="ASS" رموز التحويل: 1: يحول السلسلة إلى أحرف كبيرة 2: يحول السلسلة إلى أحرف صغيرة 3: يحول الحرف الأول من كل كلمة في السلسلة إلى حرف كبير 64: تحول السلسلة إلى Unicode باستخدام مخطط الشفرة الافتراضي للنظام. 128: تحول السلسلة إلى Unicode باستخدام مخطط الشفرة الافتراضي للنظام. و هذا الرابط به مختلف الرموز: https://support.office.com/ar-SA/article/الدالة-StrConv-19c3816f-dbc9-4adf-891c-fd32734c92e0 String: تكرار أحرف بعدد معين. مثال: String(الحرف, عدد التكرارات) Me.y = String(3, "S")="SSS" StrReverse: قلب ترتيب أحرف سلسلة نصية. مثال: StrReverse(السلسلة) Me.y = StrReverse("ABCD")="DCBA"
    1 point
  43. الدرس الخامس: استعمال الرموز إن استعمال الرموز و الأحرف لها دور كبير و لا يمكن الإستغناء عليه في جميع لغات البرمجة. و يختلف دور الرموز حسب موقعها في الكود و سنحاول ذكر ما نستطيع ذكره في هذا الدرس و أتمنى من الإخوة أن يكملوا ما عجزت عن ذكره. الفاصلة , تستخدم الفاصلة بشكل واسع في اكواد VBA فمثلا نورد هنا بعض استخدماتها على سبيل المثال لا للحصر: تستخدم للفصل بين قيم دالة تتطلب ادراج عدة قيم مثال: exm=DFirst(Expr, Domain, Criteria) للفصل بين المتغييرات عند تعريفها مثال: Dim a,b,c As Integer الاقواس الهلالية ( ) تستخدم الاقواس الهلالية في فيجول بيسك في الاماكن التالية : -عند كتابة الاكواد. -عند بداية كتابة اجراء معين او دالة ما. -في العمليات الحسابية. مثال: Function Example (exm As Boolean) D=(e-f)*g moy=(2+3+4)/3 الفاصلة المنقوطة ; تستخدم الفارزة المنقوطة في بعض من دوال اكسس و بالتحديد في منشأ التعابير علامتي الاقتباس " " تستخدم علامتي الاقتباس بشكل رئيسي لحصر النصوص بداخلها و بالتالي سوف يفهم البرنامج ان ما هو موجود بين علامتي الاقتباس هو نص و يتعامل معه عل هذا الاساس. مثال: Text0="منتدى أوفيسنا" علامة الاقتباس المفردة ' تستخدم علامة الاقتباس المفردة ' لتوضيح ما بعدها هو شرح و ليس عبارة برمجية مثال: ' A = Text0.BackColor الاقواس المربعة [] الاقواس المربعة ايضاً حالها حال الرموز السابقة لها استخداماتها المحددة و تتمثل استخدماتها في توضيح ان المتغييرات المحصورة بين قوسين مربعين انما هي اسماء لجدول او نموذج او استعلام او عناصر داخل تلك النماذج او حقل ضمن الجداول و الاستعلامات و تستخدم في منشأ التعابير و كودات ال(VBA) على حدٍ سواء و في بعض الاحيان يمكن الاستغناء عنها اي ان نذكر العناصر السابقة بدون حصرها بين قوسين مثال: Forms![form1].[Text0] = "ممكلة الاكسس و الوورد" علامة التعجب ! تستخدم علامة التعجب على حد علمي استخدام وحيد و هو موضح في مثال: Forms![form1].[Text0] = "ممكلة الاكسس و الوورد" و المثال السابق يوضح ان علامة التعجب توضح ان العنصر الذي بعدها هو احد النماذج الموجود في قاعدة البيانات كما انها تكون مسبوقة بالكملة Forms للتدليل على ان ما بعد علامة التعجب هو عنصر من نوع نموذج و هي تستخدم كما اسلفنا في منشأ التعابير و كودات ال(VBA) الرمز & و هي اختصار لكلمة AND باللغة الانكليزية و هنا تستخدم لربط سلسلتين نصيتين او اكثر مثال: Text0 = "مملكة " & "الاكسس " & "و " & "الوورد" علامة = و هي تقوم بإسناد قيمة ما بعدها للمتغيير الموجود قبلها سواءاً كانت تلك القيمة رقم او معادلة رياضية او قيمة منطقية او سلسلة نصية .. الخ مثال: A=b+c علامة النقطة . و هي مهمة جدا في البرمجة. فعند ذكر اسم اي عنصر من عناصر قاعدة البيانات و الحاق اسم العنصر بعلامة النقطة (.) فسوف تظهر قائمة بخصائص ذلك العنصر و الاوامر التي يتعامل معها ذلك العنصر . مثال: Text0.Text = "احمد الحربي" علامة الشارحة السفلية _ تستخدم هذه العلامة للفصل بين اسم العنصر و الحدث المرتبط به مثال: Private Sub Command2_Click() علامة # تستعمل هذه العلامة لتحول سلسلة رقمية الى تاريخ مثال : Text0 = #30/1/2017# + عملية الجمع - تستعمل لعمية الطرح * تستعمل لعملية الضرب / تستعمل لعملية القسمة ^ تستعمل لعملية الأس مثال: text1=2+3 text2=10-6 text3=70/5 text4=4*23 text5=6^4
    1 point
  44. الدرس الرابع: الحلقات التكرارية أو الدورانية Looping في كثير الأحيان يحتاج المبرمج أو المستخدم إلى تكرار تعليمة عدد من المرات حسب الحاجة. و هناك نوعان من الحلقات التكرارية , الأولى في حالة كان عدد مرات التكرار معروف و الثانية في حالة كان عدد التكرار مرتبط بشرط معين. أولا: الحلقة (For … Next) تستخدم الحلقة (For … Next) لتكرار عدد من المرات بحيث يكون عدد التكرارات معلوم. For counter = start To end [step increment] Statement Next counter Counter: متغير يمثل عداد الحلقة Start: القيمة الابتدائية للدوران End: القيمة النهائية للدوران Increment: مقدار الزيادة في كل حلقة من حلقات الدوران و إذا لم يوضع يأخذ القيمة 1 افتراضيا مثال1: For i = 1 To 10 Me.y = Me.y + i Next i هذا البرنامج يقوم بحساب مجموع الأعداد من 1 إلى 10 . بحيث i هو العداد و y مربع نص تظهر به النتيجة و القيمة الابتدائية له يجب أن تكون 0 مثال2: For i = 0 To 10 Step 2 Me.y = Me.y + i Next i في هذا البرنامج وضعنا قيمة الانتقال 2 يعني أن البرنامج سوف يحسب مجموع الأعداد الزوجية فقط (من 0 إلى 10) ثانيا: الحلقة (For Each … Next) تستخدم الحلقة (For Each… Next) عندما نريد تنفيذ تعليمة أو مجموعة من التعليمات لكل عنصر في مصفوفة أو مجموعة. و رغم أنها تشبه (For … Next) كثير إلا أنها تقوم بتنفيذ حلقة لكل عنصر مما يعني أنه لا يوجد عداد في هذا النوع من الحلقات. و يمكن استخدامها في المصفوفات أو مع الكائنات. صيغتها: For Each element In Group [statement 1] [statement 2] .... [statement n] Next مثال1: Dim Array_n() as string Array_n = Array(1, 2, 3, 5) Dim sum As Integer sum=0 For Each Item In Array_n sum = sum + Item Next Me.y = sum Array_n هي مصفوفة بها 4 عناصر. هذا البرنامج يقوم بحساب مجموع هذه العناصر و يضعها في مربع النص y Item : هي العنصر i: هو العداد مثال2: Dim frm As Form Dim fc As Control Set frm = Me For Each fc In frm.Controls Me.listbox.AddItem (fc.Name) Next هذا البرنامج يقوم بإضافة جميع أسماء عناصر النموذج الحالي إلى مربع قائمة listbox. السطر الأول هو تعريف المتغير frm من Form (نموذج) السطر الثاني تعريف المتغير fc من Control (عنصر تحكم) السطر الثالث إسناد النموذج الحالي (Me) للمتغير frm و ذلك باستعمال عبارة set لأن النموذج عبارة عن كائن (Object) . السطر الرابع هو القيام بالدوران لكل عنصر من عناصر النموذج(frm.Controls) السطر الخامس إضافة اسم العنصر(fc.Name) Listbox إلى مربع القائمة و ذلك بإستعمال التعليمة AddItem ثالثا: الحلقة (Do Until condition ... Loop) تقوم هذه الحلقة بتفحص الشرط قبل الدخول للحلقة إذا كان الشرط محقق (True) فإن البرنامج يقفز إلى ما بعد حلقة التكرارية أي أنه لن يتم الدخول للحلقة. و إذا كان الشرط غير محقق (False) فسيتم تنفيذ التعليمات Statments, ثم يرجع للسطر Do until لاختبار الشرط ثانية. و هكذا. يعني أنه سوف يتم تكرار الحلقة عدد من المرات حتى يتحقق الشرط. و لن ينفذه و لو مرة واحدة إذا كان الشرط صحيح من البداية. صيغتها: Do Until condition Statments Loop مثال: Dim i As Integer Dim sum As Integer i = 1 sum = 0 Do Until i > 10 sum = sum + i i = i + 1 Loop Me.y = sum يقوم هذا البرنامج بحساب مجموع الأعداد من 1 إلى 10 . i متغير من نوع integer يمثل العداد بالنسبة للحلقة في كل حلقة يزداد 1 و فيمته الابتدائية هي 1. sum متغير من نوع integer يمثل مجموع الأعداد قيمته الابتدائية هي 0. مادام i<10 فإن البرنامج يبقى يكرر العملية حتى يصبح i>10 و بعد نهاية الدوران يضع القيمة النهائية في مربع النص y رابعا: الحلقة (Do ... Loop Until condition ) هذا النوع من الحلقات يقوم بتنفيذ الدوران على الأقل مرة واحدة لأنه يختبر الشرط في نهاية الحلقة و بالتالي فإنه يتم الدخول للحلقة أولا ثم في نهاية الحلقة يتم تفحص الشرط. صيغتها: Do Statements Loop Until condition مثال: Dim i As Integer Dim sum As Integer i = 1 sum = 0 Do sum = sum + i i = i +2 Loop Until i > 10 Me.y = sum هذا البرنامج يقوم بحساب مجموع الأعداد الفردية من 0 إلى 10 لأن القيمة الابتدائية للعداد هي 1 و مقدار الزيادة في كل حلقة (الخطوة) هو 2 خامسا: الحلقة (Do While condition ... Loop) هذا النوع من الحلقات يقوم بتنفيذ الدوران مادام الشرط Condition محقق وإلا يتم التوقف عن الدوران في الحلقة و تقوم هذه الدالة بتفحص الشرط في بداية الحلقة. صيغتها: Do While Condition Statements Loop مثال: Dim i As Integer Dim sum As Integer i = 0 sum = 0 Do While i <= 10 sum = sum + i i = i + 2 Loop Me.y = sum يقوم هذا البرنامج بحساب مجموع الأعداد الزوجية من 0 إلى 10 مادام i<=10 فإن البرنامج يعيد الدوران. في كل دورة يقوم بإضافة 2 للعداد حتى يصبح i>10 سادسا: الحلقة (Do ... Loop While condition) هذا النوع من الحلقات الدورانية المشروطة يتم فيه تنفيذ التعليمات مرة واحدة على الأقل لأنها تختبر الشرط في نهاية الحلقة و هي تشبه النوع الرابع كثيرا, إلا أنها تستمر في الدوران مادام الشرط محقق و تتوقف عندما يصبح الشرط غير محقق. صيغتها: Do Statements Loop While Condition مثال: Dim i As Integer Dim mult As Long i = 10 mult = 1 Do mult = mult * i i = i - 1 Loop While i > 0 Me.y = mult هذا البرنامج يقوم بحساب جداء الأعداد من 10 إلى 1 و يضع النتيجة في me.y هنا وضعنا العداد i تنازليا (i=i-1) في كل دورة ينقص 1 من العداد حتى يصل إلى 0 نلاحظ هنا بالنسبة للمتغير mult و الذي يمثل الناتج أنني وضعت نوعه Long Integer بدلا من و السبب يرجع لأن النوع integer أقصى قيمة له هي 32767 و في هذه الحالة الناتج يفوق هذا العدد و بالتالي سوف يظهر لنا الخطأ رقم 6 (Overflow)
    1 point
  45. الــدرس الرابع: الجملة الشرطية ( IIF ) ( لقد قام أستاذي و أخي جعفر حفضه الله بتقديم هذا الدرس كله و أنا لم أفعل شيء سوى التنسيق و النشر فاللهم جازيه عنا خير الجزاء يا رب العالمين) طريقة استعمال ((iif: iif(expr, truepart, falsepart) iif(القيمة المطلوب تقييمها, اذا كان التقييم صح فستأخذ هذه القيمة, اذا كان التقييم خطأ فستأخذ هذه القيمة) مثال: Age=50 Age_Now = iif(Age=50 , "Yes it is", "No it is not") ميزاتها: نستطيع استعمالها في الكود ، والاستعلام نستطيع ان نضع اكثر من شرط واحد فيها مثال: Price=10 Qty=5 Sale_is= iif(Price* Qty = 50 , "Low sale", iif(Price * Qty = 100 , "Middle sale" , "Big sale")) عيوبها: الدالة تختبر جميع الحالات ، ولا تختبر القيمة الاولى وتخرج (مثل الـ IF): 1. المثال السابق ، مع ان اول تقييم هو الجواب الصحيح 10*5=50 ، إلا ان الدالة ستقوم بتقييم جميع الاختيارات ، مما يجعلها تأخذ وقت اطول للتقييم ، 2. بسبب اختبارها لجميع الحالات ، فيجب ان نكون دقيقين في وضع التقييم ، مثلا اذا اردنا اختبار قيمة مثال: Divide = iif(n2 = 0, MsgBox("القيمة صفر"), MsgBox(n1 / n2)) فاننا سنحصل على خطأ ، لأن الدالة تحققت من القيمتين ، والقيمة الثانية هي تقسيم رقم على صفر ، 3. بطيئه نوعا ما ، لأنها تحول الارقام الى Variant (رجاء مراجعة الدرس الاول للأخ صالح) ، ثم تقوم بالحساب ، 4. لا تستطيع ان تستخدم اكثر من 7 شروط في الاستعلام ، مثلا عندنا ارقام الاشهر ونريد نستخرج اسمائها ، 5. ببساطة مكن ان تخطأ في عدد الاقواس والفواصل ، 6. لا تستطيع قراءة ولا تغيير اي شئ بسهولة ، وخصوصا اذا كان عندنا اكثر من تقييم ، امثلة عملية: 1. اذا عندنا ارقام الاسبوع ، ونريد ان نستخرج ايامها ، فاذا عملنا الكود في الاستعلام مباشرة ، فسيكون صعب ، لذا ، فالطريقة التي اعملها انا هي: أ‌- عمل الكود في محرر VBA ، هكذا: لاحظ اني عملت اول شرط ونتيجة القيمة الصحيحة ، ثم انهيت السطر بخط سفلي _ (واللي معناه في البرمجة ان الكود سيتواصل في السطر التالي ، ثم انتقلت السطر التالي ، ونفس الشئ ، عملت الشرط التالي ونتيجة القيمة الصحيحة و.... كما سبق و... الى ان نوصل للسطر الاخير ، فوضعت الشرط الاخير ونتيجة القيمة الصحيحة والخطأ ، ثم حسبت كم قوس مفتوح ، فقفلت بنفس عددها: iDay = 2 Today_is = IIf(iDay = 1; "Sun"; _ IIf(iDay = 2; "Mon"; _ IIf(iDay = 3; "Tue"; _ IIf(iDay = 4; "Wed"; _ IIf(iDay = 5; "Thu"; _ IIf(iDay = 6; "Fri"; "Sat")))))) ب- والخطوة التالية ان نجعلها في سطر واحد ، حتى نأخذها للإستعلام ، وهي ان نحذف الاشارة _ ، لتكون النتيجة Today_is = IIf(iDay = 1; "Sun"; IIf(iDay = 2; "Mon"; IIf(iDay = 3; "Tue"; IIf(iDay = 4; "Wed"; IIf(iDay = 5; "Thu"; IIf(iDay = 6; "Fri"; "Sat")))))) . هكذا . 2. اذا عندنا سجلات الصف الاول والثاني ، واردنا معرفة عدد الطلاب لكل صف: iif([Section]= "A" ; 1;0) وهكذا تكون في الاستعلام: 3. اذا عندنا اكثر من 7 شروط (ارقام الاشهر نريد تحويلها الى اشهر) ، فهنا نضطر الى عمل وحدة نمطية: Function What_Month(M) Select Case M Case 1 What_Month = "Jan" Case 2 What_Month = "Feb" Case 3 What_Month = "Mar" Case 4 What_Month = "Apr" Case 5 What_Month = "May" Case 6 What_Month = "Jun" Case 7 What_Month = "Jul" Case 8 What_Month = "Aug" Case 9 What_Month = "Sep" Case 10 What_Month = "Oct" Case 11 What_Month = "Nov" Case 12 What_Month = "Dec" End Select End Function ونرسل لها ارقام الاشهر ، هكذا . والنتيجة
    1 point
  46. الاخ ابو عصام الغالى وعليكم السلام ورحمة الله وبركاتة اهلا بك بالمنتدى هذا هو ملف الاكسل حاول مع شرح الفيديوهات التجربة مع الملف المرسل مع تعديل البيانات حسب طلبك وعموما انتظر فيديو لشرح كيفية التعديل على الملف والفورم ليناسب موضوعك تابع بافى الفيديوهات مع التطبيق على الملف بعد تعديلة الاخوة الزملاء اليكم الدرس الثالث كيفية عمل زر بحث مع ادخال الاكواد اكواد زر بحث Private Sub TextBox12_Change() Set sh12 = Sheets("بيانات") LR = sh12.[a2000].End(xlUp).Row For Each cl In sh12.Range("a5:a100" & LR) If (Val(Me.TextBox12)) = cl Then Me.TextBox1 = cl.Offset(0, 0) Me.TextBox2 = cl.Offset(0, 1) Me.TextBox3 = cl.Offset(0, 2) Me.TextBox4 = cl.Offset(0, 3) Me.TextBox5 = cl.Offset(0, 4) Me.TextBox6 = cl.Offset(0, 5) Me.TextBox7 = cl.Offset(0, 6) Me.TextBox8 = cl.Offset(0, 7) Me.TextBox9 = cl.Offset(0, 8) Me.TextBox10 = cl.Offset(0, 9) Me.TextBox11 = cl.Offset(0, 10) End If Next End Sub كود زر اغلاق الفورم Private Sub CommandButton4_Click() End End Sub الفيديو ادخال بيانات واستعلام وتعديل وبحث.rar
    1 point
  47. أخي الحبيب إبراهيم وجب تصحيح نقط معينة وهو أنه لا يجوز الإعلان عن متغير وتعيين قيمة له في نفس السطر Dim H As Integer=10 يجوز ذلك في لغة الفيجوال بيزيك دوت نت أما في VBA سيعطيك خطأ نقطة أخرى بالنسبة للسطر Dim H,m As Integer هنا لم يتم الإعلان عن المتغيرين من النوع عدد ..فقط المتغير m هو المتغير العددي أما المتغير H في هذه الحالة يعتبر من النوع Variant للتأكد من صحة مقولي قم بنسخ الكود التالي في موديول Sub Test() Dim H, m As Integer End Sub قم بوضع مؤشر الماوس في سطر End Sub اضغط F9 لوضع نقطة وقوف BreakPoint سيكون لونها باللون الأحمر الغامق روح لقايمة View وأظهر نافذة Locals ثم قم بتنفيذ الكود ستجد في النافذة تفاصيل كل متغير أرجو أن أكون قد وفقت في توصيل المعلومة
    1 point
  48. الأخ أندر تيكر لو كنت تقصد الإرتباط التشعبى عن طريق عمل لينك بين كلمة فى الملف وبين ملف آخر فالطريقة سهلة كالتالى 1. فى الوورد حدد الكلمة التى سنضغط عليها لفتح المرفق 2. كليك يمين عليها 3. إختار إرتباط تشعبى 4. تصفح البراوزر حتى تصل للمرفق المراد إرفاقه ثم إختاره فى الإيكسيل كليك يمين فى الخلية وكمل مثل الوورد كما سبق ملحوظة هامة لو كنت ستقوم بنقل الملف من جهاز لجهاز فلابد من وضع المرفق مع الملف فى نفس المجلد ونقل المجلد كاملاً بالمرفقات بعد ذلك ستختلف طريقة الفتح فى الإيكسيل عن الوورد 1. فى الإيكسيل يكفى كليك شمال على الكلمة لفتح المرفق 2. فى الوورد لابد من ضغط كنترول مع الكليك شمال لفتح المرفق وسنلاحظ تحول سهم الماوس إلى يد إشارة الملف المرفق به مثال إرفاق مرفق داخل ملف.rar
    1 point
×
×
  • اضف...

Important Information