نجوم المشاركات
Popular Content
Showing content with the highest reputation on 03/15/17 in all areas
-
السلام عليكم و رحمة الله تعالى وبركاته أساتذة و خبراء منتدانا الغالي حياكم الله أردت أن أنجز عمل بمعيتكم الكريمة . و هو إنجاز سلسلة دروس في vba الأكسس لتقوم إدارة المنتدى من بعد ذلك بتثبيت هذا الموضوع ليطلع عليه كل من يريد التعلم و يبقى صدقة جارية لكل من ساهم فيه و لو بحرف واحد. العمل سوف يقسم إلى مجموعة دروس مثلا : المتغيرات ,الجمل الإختيارية , الجمل التكرارية , الكائنات ......الخ. و سوف نحاول شرح جميع دوال و تعليمات VBA أكسس الموجودة مع إعطاء أمثلة في نهاية كل درس. على أن يتم تجميعه في الأخير مرتبا حسب تسلسل الدروس و لا يتم الإنتقال من درس لآخر حتى نستوفي كل ما نستطيع حول هذا الدرس. العمل المطلوب: كلما نبدأ في درس جديد. يقوم الأساتذة الكرام بتقديم الدوال و التعليمات التي تندرج تحت عنوان هذا الدرس و تقديم شرحها مع وضع مثال بسيط لإستعمال الدالة أو التعليمة على أن لا يتم تكرار الدوال و التعليمات الموجودة مسبقا في الدرس من قبل أحد الأعضاء. و قبل البدء أنتظر إقتراحاتكم فيما يخص طريقة العمل أو ترتيب دروس و عناوينها. و إن شاء الله غدا أو بعد غد سوف نبدأ بالعمل على بركة الله.4 points
-
على الرغم ان السيد @sandanet وصلت الى النتيجة واعطاه السيد @jjafferr طرائق مختلفة بالاكواد و اخرى لكن ساضع هنا هذا الكود هم بيوفي الطلب وهو DoCmd.SetWarnings False DoCmd.RunSQL "DELETE DISTINCTROW tbl2.* FROM tbl1 INNER JOIN tbl2 ON (tbl1.degree = tbl2.degree) AND (tbl1.fullnames = tbl2.names);" DoCmd.SetWarnings True تحياتي للجميع3 points
-
الــدرس الثاني : الجملة الشرطية ( IF ) تعتبر الجملة IF من أشهر الجمل الشرطية و أكثرها استعمالا في جميع لغات البرمجة ولها عدة صيغ كلها تبدأ بــIf و تنتهى بكلمة End If ما عدى صيغة واحدة. وتستخدم الجملة IF لتنفيذ عمليات معينة حسب شرط محدد, يعني إذا تحقق الشرط ينفذ و إلا فلا. طرق استعمال الجملة ((if: 1- الصيغة ( If –Then ) : - وصيغتها العامة : IF condition THEN statements - ومعنى هذه الصيغة : انه اذا تحقق الشرط (condition ) فسيتم تنفيذ الامر ( statements ) مثال : " مسن" IF age >=65 THEN category = 2- الصيغة ( If – Then – End If ) : صيغتها العامة : IF condition THEN statements1 Statements2 END IF تقوم هذه الصيغة بتنفيذ مجموعة من الاوامر اذا تحقق الشرط (Condition) بدلا من تنفيذ امر واحد. مثال : If age >= 25 Then category ="شباب" travail ="السن مقبول" End if 3- الصيغة ( If – Then – Else ) : صيغتها العامة : If condition Then statements1(التعليمات المنفذة في حال تحقق الشرط ) Else statements2(التعليمات المنفذة في حال عدم تحقق الشرط) End If - هذه الصيغة تنفذ مجموعة الأوامر (statements1 ) عندما يتحقق الشرط (condition ) و عندما لا يتحقق الشرط فإنها تنفذ مجموعة الأوامر (Statements2). مثال : If grade >= 50 Then Text1 ="ناجح" Else Text1 ="راسب" End If 4- الصيغة ( If – Then –ElseIf ) : - صيغتها العامة : If condition1 Then statements1( التعليمات المنفذة في حال تحقق الشرط الأول) ELSEIF condition2 THEN statements2(التعليمات المنفذة في حال عدم تحقق الشرط الأول و تحقق الشرط الثاني) ELSE statements2(التعليمات المنفذة في حال عدم تحقق جميع الشروط السابقة) End If مثال : If grade >= 90 Then Text1 ="ممتاز" ElseIf grade >= 80 Then Text1 ="جيد جدا" ElseIf grade >= 70 Then Text1 ="جيد" ElseIf grade >= 60 Then Text1 ="مقبول" Else Text1 ="راسب" End If ملاحظات: - في الصيغة الأخيرة ( If – Then –ElseIf ) اذا تحقق احد الشروط فان البرنامج ينفذ العملية ثم يذهب الى نهاية الجملة و لا يتحقق من الشروط الباقية. - في حالة أردنا إستعمال شرطين معا أو أكثر نستعمل العبارة And. - في حالة أردنا تحقق أحد شرطين ليتم تنفيذ العملية نستعمل Or3 points
-
ياسلام على الشرح السهل المرن المباشر .... بارك الله فيك اخي صالح لقد قراءت كثيرا من شروحات اكواد VB الا ان اسلوب الشرح الذي اتبعته فريد من نوعه مباشر مدعم بالامثلة البسيطة لدي اقتراح ان يتم جمع كل ماتفضلت به في كتاب يثبت في المنتدى بارك الله فيك على تعبك ومساعدة الناس لك تمنياتي بكل التوفيق متعك الله بالصحة والعافية2 points
-
2 points
-
IsDate: تستخدم هذه الدالة لفحص ما إذا كان المتغير الممرر لها تاريخ أم لا حيث تعيد true إذا كان المتغير تاريخاً و تعيد false إذا لم يكن تاريخاً. IsDate(«تعبير») IsDate("12/03/2017")=True IsDate("أوفيسنا")=False Now: تستخدم هذه الدالة لإستخراج تاريخ و وقت النظام الحاليين. Now() و تكون النتيجة بالشكل التالي: 15-03-2017 10:18:15 Time: تستخدم هذه الدالة لإستخراج وقت النظام الحالي. Time() و تكون النتيجة بالشكل التالي: 10:18:15 Timer: تستخدم هذه الدالة لإستخراج عدد الثواني منذ منتصف الليل. Timer() MonthName: تستخدم هذه الدالة لإرجاع اسم الشهر المحدد . MonthName(«اختصار», «شهر») MonthName(3,True)="مارس" MonthName(8)="أوت" TimeSerial: تستخدم هذه الدالة لإرجاع متغير من نوع تاريخ يحتوي على الوقت لساعة و دقيقة و ثانية محددة. TimeSerial(«ثانية», «دقيقة», «ساعة») TimeSerial(10, 56, 13)=10:56:13 Weekday: تستخدم هذه الدالة لإرجاع متغير "عدد صحيح" يمثل رقم اليوم في الأسبوع. Weekday(أول أيام الأسبوع, التاريخ) Weekday("15/3/2017", vbSunday)=4 WeekdayName: تستخدم هذه الدالة لإرجاع اسم اليوم المحدد من الأسبوع. WeekdayName(«أول أيام الأسبوع», «اختصار», «يوم من الأسبوع») WeekdayName(3, True, vbSunday)="الثلاثاء" و هذه هي القيم المستعملة لتحديد أول أيام الأسبوع: vbUseSystem سيتم استخدام إعدادات النظام vbSunday يمثل يوم الأحد vbMonday يمثل يوم الاثنين vbTuesday يمثل يوم الثلاثاء vbWednesday يمثل يوم الأربعاء vbThursday يمثل يوم الخميس vbFriday يمثل يوم الجمعة vbSaturday يمثل يوم السبت2 points
-
استاذ صالح و استاذ شفان .. الشكر موصول لكما على التوضيح الرائع والشرح التفصيلي للتقرير و للكود الخاص به وفقكم الله .. تحياتي2 points
-
2 points
-
اتفضل خذا هذا الاستعلام UPDATE Tarqia INNER JOIN الرئيسي ON Tarqia.[الاسم الكامل] = الرئيسي.[الاسم الكامل] SET الرئيسي.الرتبة = [Tarqia]![الرتبة], الرئيسي.[تاريخ اخر ترقية] = [Tarqia]![تاريخ اخر ترقية]; وبالنسبة نقاط 2 في الحقيقة مافي شي في مخي لكي اعمله لانو لازم بيكون حقل بيكون يساوي حقل اخر اذا الاسم بيكون مخالف عن الاسم الجدول هذه الطريقة ما يفي بالغرض الا اذا كان بينهما حقل بيكون مساوى ولكن اظن ان استاذنا @jjafferr سيفتح لنا طريق تحياتي مثال.rar1 point
-
السلام عليكم السلام عليكم ورحمه الله وبركاته هذا هو المطلوب اخي شفان ابداع جميل الله يحفظك1 point
-
1 point
-
السلام عليكم جرب هذا: Private Sub Worksheet_Change(ByVal Target As Range) Dim ict1 As Range Set ict1 = Intersect(Target, Range("A3:A5, D9:D50, G9:G50, R9:R50")) If ict1 Is Nothing Then Exit Sub With Application .EnableEvents = False .Undo .EnableEvents = True End With End Sub1 point
-
شكرا استاذ محمد نجار ... هذا هو المطلوب بالفعل وطبقت ما فعلته فى النموذج الفرعي الثاني وعمل بنجاج ... شكرا جزيلا ... واسف على كثرة الاسئلة1 point
-
1 point
-
واخيراً اتفضل هذا ارفق اي عدد تريد من المرفقات و اي نوع تريد وافتحه مباشرتا خارج القاعدة تحياتي اضافة عدة مرفقات لموظف واحد وفتح المرفق.rar1 point
-
تفضل .. اسف يجب علي الخروج الان ... مساءا اكون في خدمتك .. Maint Car System_up.rar1 point
-
كل الشكر و التقدير للاستاذ صالح حمادي و الاستاذ جعفر على هذا المجهود كثير من المبتدئين بحاجة ماسة الى مثل هذه الدروس حتى يكون اساسهم قوي في البرمجة و كنت انوي منذ فترة طرح مثل هذه الدروس و لكن الظروف حالت دون ذلك .. فجزاكم الله كل خير و جعل ما تقدمانه في موازين الحسنات ..1 point
-
السلام عليكم ورحمة الله وبركاته اساتذتى فى هذا الصرح العظيم . الساده اعضاء اوفيسنا موضوع اليوم هو استخدام دالة VLOOKUP فى البحث عن قيمه معينه فى مجموعة صفحات بشكل بسيط وسهل فقد رايت استخدامات مشابهه ولكن كانت بشكل اصعب . والان اقدمها لكم بشكلها البسيط وعلى فكرة انا اعشق هذه الداله ارجوكم لاتنسونى فى دعاؤكم اترككم مع الملف والمثال العملى vlookp.rar1 point
-
1 point
-
استاذى الفاضل محمدنجار بارك الله فيك هذا هوا المطلوب فعلا ربي يسعد ايامك كلها والف شكر على اهتمامك بارك الله فيك استاذى الفاضل Shivan Rekany بارك الله فيك واعطاك من الخير الكثير ربي يسعد ايامك بكل الخير1 point
-
الاستاذ الفاضل / ابو عصام السلام عليكم اعتقد ان طلب سيادتكم بعيدا عن انواع الحماية " مجرد إعتقاد" ولكن فى العموم جرب المرفق التالى وهو أحد إبداعات الاستاذ الكبير والاخ الفاضل / ياسر خليل " ابو البراء" وستجد الكثير من الموضوعات التى تتحدث عن انواع الحماية http://yasserkhalilexcellover.blogspot.com.eg/2016/09/kill-workbook-from-hd.html شاكر فضلك *** وجزاكم الله خيرا1 point
-
السلام عليكم ورحمته الله وبركاته سؤال بعد إذن حضراتكم بشأن طباعة مصنف يوجد به العديد من الصفحات المخفاه الملف بدون إخفاءات لتلك الصفحات يعمل بدون مشاكل أما بالإخفاءات تظهر رسائل خطأ فكيف يمكن التغلب عل هذة المشكلة أو ماهى الاضافة على أكواد الطباعة التى من شأنها تذليل تلك العقبة ***** شاكر فضل حضراتكم وجزاكم الله خيرا اعتذر عن رفع الموضوع مرتين لخطأ فنى بالنت لذا يرجى حذف أحد الرابطين مثال من ص 1 الى ص 8.rar مثال طباعة مع اخفاء صفحات مختلفه.rar1 point
-
جميل جدا أخي شافان على هذا الكود الرائع الذي يختصر الموضوع بشدة واعتقد بانني سوف اعتمده دائماً فبارك الله فيك على كل جهودك معانا لك مني اجمل تحية1 point
-
هذا تحويل الى الميلادي بطريقتين باستخدام التاريخ الهجري المجدول من اكسس و باستخدام الوحدة النمطية المعدلة لموافقة تاريخ ام القرى1 point
-
كما قلنا سابقا عنده 1350 يوم ل 27 سنة منذ 1990 الى 2017 وعنده 3 يوم ل 21 يوم فس شهر 12 من السنة 1989 وهذا اقتسبت من شهر 1 لسنة 2017 وشهر 2 لسنة 2017 و 14 صار 15 يوم من شهر 3 لسنة 2017 تحياتي1 point
-
سؤال : هل تريد ان يغير فقط الرتبة ام تاريخ الترقية و الخ ... اذا تريد ان يغير فقط الرتبة اليك هذا الحل لكن اعرف انك تريد ان يغير التاريخ الترقية ايضا و كم من الحقول اخر لكن ما اعرف اي حقول لذا اتفضل مع هذا الاستعلام يوفي بالغرض اولا عملت جدول اخر باسم الترقية وشوف المرفق راح تعرف غير الرتبة في جدول الترقية و افتح الاستعلام وشوف الجدول الرئيسي واليك الاستعلام تحديث UPDATE Tarqia INNER JOIN الرئيسي ON Tarqia.[الاسم الكامل] = الرئيسي.[الاسم الكامل] SET الرئيسي.الرتبة = [Tarqia]![الرتبة]; مثال.rar1 point
-
اشكرك جزييلا الأستاذ العظيم / سليم سلمت يا أخى من كل شر وبارك الله فى صحتك وعلمك .. الكود اكثر من رائع ويعمل بكفاء اشكرك1 point
-
::: تفضل ان كنت فهمت مرادك .. بالتوفيق .... تحية للاستاذ شفان. 003-2.rar1 point
-
Dim x As String x = TextBox2 x.Text = "أكتب رقم جديد" Range("A2").Select Range("A1:F20").Select Selection.copy Sheets.Add.Name = x Range("A1:F20").Select ActiveSheet.Paste Application.cutcopymod.false1 point
-
السلام عليكم اجمالى المبلغ هنا = السعر * الكمية قيمة القطعة ماذا تريدها أن تكون ( كان بظنى أن قيمة القطعة هى سعر القطعة ولكن يبدو أنى نسيت اللغة العربية - من كثرت كلامى بالصعيدى - ) لذا نرجو التوضيح بمثال رياضى ان أمكن1 point
-
افتح نموذج في وضع تصميم وفي حدث الحالي اكتب هذا في اول او في الاخر الكود اللي فيه Option36_AfterUpdate تحياتي1 point
-
نعم استخدم هذا الكود Dim i As Integer Dim co As Integer co = DCount("*", "[qe]") DoCmd.GoToRecord , , acFirst For i = 0 To co - 1 DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE ÇáÑÆíÓí SET ÇáÑÆíÓí.ÇáÑÊÈÉ = [Forms]![Frm2]![Text3] WHERE (((ÇáÑÆíÓí.[ÑÞã ãÚÑÝ])=[Forms]![Frm2]![ÑÞã ãÚÑÝ]))" DoCmd.SetWarnings True DoCmd.RefreshRecord DoCmd.GoToRecord , , acNext Next استعلام تحديث.rar1 point
-
1 point
-
روح لتبويب بيانات في اعلى الصفحة واختر منه التحقق من صحة البيانات واختر منها المطلوب1 point
-
Me.DrawWidth = 10 لتحديد سماكة الخط اي لاين اي اطار عطيتناه 10 Me.Line هو احد "عناصر" تابع اكسس اي تكدر تعمله بدون اكواد وهو بيستخدم هكذا مي.لاين( عرضي بيكون كم , طولي بيكون كم ) - ( عرضي في اي مكان يبدأ , طولي في اي مكان يبدأ ) اما بالنسبة حرف "بي" هو ليعمل بيعمل كمربع اما بدون حرف بي هو خط فقط واما بالنسبة ScaleHeight و ScaleWidth اليك هذا الرابط http://scancoolcafe.no-ip.info:8081/downloads/VisualBasic/VbHelp/book/S/ENT327/INDEX.HTM واسف على هذا التوضيح الغير الموضح تحياتي1 point
-
يعني احتمال ان ترفق اكثر من ملف لموظف واحد هل هذا صحيح ؟ اذ نعم راح نسوي جدول خاص بالمرفقات ونربط مع جدول الموظفين بعلاقة واحد لمتعدد وراح نشوف الطريقة باذن الله1 point
-
شوف عذا الرابط فيه ماتريد تحياتي1 point
-
وجدتها من خلال الكود التالي : For i = 0 To DeleteList.ListCount - 1 If DeleteList.Selected(i) = True Then strName = strName & vbCrLf & _ DeleteList.Column(1, i) & vbCrLf & _ MyAndLT End If Next strName = Left(strName, Len(strName) - Len(MyAndLT)) If Me.DeleteList.ItemsSelected.Count = 1 Then If MsgBox("ÇäÊ ÈÕÏÏ ÍÐÝ ÇáãæÙÝ " & vbCrLf & _ strName & vbCrLf & _ "åá ÇäÊ ãÊÃßÏ ãä Çäß ÊÑíÏ ÍÐÝ åÐÇ ÇáãæÙÝ ?", vbCrLf & _ vbYesNo + vbMsgBoxRtlReading + vbMsgBoxRight + vbQuestion, "ãÍÇæáÉ ÍÐÝ ãæÙÝ ") = vbNo Then Exit Sub If Me.DeleteList.ItemsSelected.Count > 1 Then If MsgBox("ÇäÊ ÈÕÏÏ ÍÐÝ ÇáãæÙÝíä " & vbCrLf & _ strName & vbCrLf & _ "åá ÇäÊ ãÊÃßÏ ãä Çäß ÊÑíÏ ÍÐÝ åÄáÇÁÇáãæÙÝ ?", vbCrLf & _ vbYesNo + vbMsgBoxRtlReading + vbMsgBoxRight + vbQuestion, "ãÍÇæáÉ ÍÐÝ ÇßËÑ ãä ãæÙÝ ") = vbNo Then Exit Sub strSQL = "DELETE FROM tblShiftEmploDetils WHERE DetailID IN (" & strSet & ")" CurrentDb.Execute strSQL1 point
-
وعليكم السلام تفضل جعفر1 point
-
شكرا أخي صالح في الواقع انا لم ادرس البرمجة (نعم مادة الفورتران في بداية دراستي الجامعية) ، ولم ادخل في تدريب ، وحتى ما عندي رخصة سواقة الحاسوب وانما كل الذي عندي من تجارب عملية ، لذلك ترى الفرق واضح من طريقة عرضك للموضوع ، وطريقة عرضي جعفر1 point
-
الــدرس الرابع: الجملة الشرطية ( 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
-
طرق استعمالها: 1. اذا اردنا استعمال المتغير في الحدث / الوحدة النمطية فقط (يعني لا يمكن اخذ قيمتها من نماذج/تقارير/استعلامات/وحدات نمطية اخرى) ، فنستخدم: Dim UserName as string او Private UserName as string ويجب ان نستخدم Dim لكل حدث في النموذج/التقرير ، اي نعيد كتابته لكل حدث ، بينما يمكننا ان نضع Dim / Private مرة واحدة في اعلى الصفحة ، ولا تكون داخل اي حدث ، هكذا Option Compare Database Private User_Name As String 2. بينما اذا اردنا ان تكون القيمة متوفرة في جميع كائنات البرنامج ، فنستخدم التالي في وحدة نمطية (حتى ولو كانت وحدة نمطية فارغة): Public UserName as string مثال هذا ، عندما تستعمل نموذج المستخدمين ، ثم تريد الاحتفاظ باسم المستخدم في الكود ، فكل الذي تعمله هو: UserName = "jjafferr" ثم من اي مكان في البرنامج تستطيع ان تستعمل هذا المتغير UserName ، مثلا: User_Prevliage = iif(UserName = "jjafferr" , "Admin", "User") . ويمكننا ان نجعل الكود لا يعمل إلا بتعريف المتغير ، وفي الواقع هذه صعبة في البداية ، ولكن في النهاية سيكون برنامجك افضل ، وهكذا نجعل الكود يفرض علينا استعمال المعرف: . . واهمية هذه الخطوة هي عندما تريد ان تحفظ البرنامج لاحقا بصيغة mde او accde ، فيجب عليك ان: . واذا كانت المتغيرات في الكود معرّفة ، فلن تحصل على اخطاء في التحويل جعفر1 point
-
على بركة الله نبدأ أول درس و ننتظر ملاحظاتكم حول أي شيء نسيته و هو متعلق بهذا الدرس أو أي معلومة أخطأت بها: الــدرس الأول : المتغيرات تعتبر المتغيرات النواة الأساسية أو حجر الأساس بالنسبة لكل برنامج في أي لغة برمجة كانت. يعني قبل البدأ يجب أن تقوم بتعريف المتغيرات التي تحتاجها و تحدد نوعها قبل كل شيء. 11- أنواع المتغيرت: هناك العديد من أنواع المتغيرات و كل نوع يخصص له حجم معين في الذاكرة. سوف نقوم بإضافة شرح جميع أنواع المتغيرات و الحجم الذي يأخذه كل نوع من الذاكرة: String: نص يتسع المتغير النصي إلى 2 جيجا بايت و كل حرف يشغل 1 بايت Boolean: ياخذ نوعين من القيم True و False (طوله 2 بيت ) Byte: بايت يكون رقم بين 0 من 255 (طوله 1 بايت) Integer : عدد صحيح (طوله 2 بيت ) قيمته من 32768- إلى 32767 Long : عدد صحيح طويل (طوله 4 بيت) قيمته من 2,147,483,648- إلى 2.147.483.647 Signal: عدد عشري (طوله 4 بيت) قيمته من 3.402823x1038- إلى 1.401298x10-45- للقيم السالبة و من 1.401298x10-45 إلى 3.402823x1038 للقيم الموجبة Currency: عملة (طوله 8 بيت) قيمته من 922،337،203،685،477.5808- إلى 922،337،203،685،477.5807 Double : مزدوج عدد عشري (طوله 8 بيت) قيمته من 1.79769313486231x10308- إلى 4.94065645841247x10-324- للقيم السالبة. و من 4.94065645841247x10-324 إلى 1.79769313486232x10308 للقيم الموجبة Date: نوع البيانات تكون على شكل تاريخ (طوله 8 بيت) يبدأ تاريخ vba من 1/1/100 حتى 31/12/9999 Object : لتخزين الكائنات التي تحتوي على خصائص و وظائف و يتم تعيينه بجملة set ويشغل في الذاكرة 4 بايت أو حسب خصائص و وظائف الكائن المحدد. و سوف نخصص درس لعرض أنواع الكائنات. Variant : لتخزين كل الأنواع السابقة ويمكن تخزين المصفوفات بداخله أيضاً 2- طريقة الإعلان عن المتغيرات: الإعلان عن متغير يعني حجز مكان في ذاكرة الكمبيوتر باسم هذا المتغير و يحدد حجمه حسب نوع المتغير. و يتم تعريف المتغير أو الإعلان عنه بواسطة العبارة DIM . مثال: Dim A as Integer للإعلان عن أكثر من متغير: Dim a,b as integer للإعلان عن أكثرمن متغير لأنواع مختلفة في نفس السطر: Dim A As Double, B As Integer 3- ملاحظات: - - يفضل الإعلان عن نوع المتغير لزيادة سرعة التعامل معه . - - المتغيرات التي لم تحدد نوعها يعمل فيجول بيسك علي الإعلان عنها تلقائيا من النوع Variant وهو أبطأ أنواع المتغيرات . - - بالنسبة للإعلان عن أكثر من متغير من نفس النوع بالطريقة التالي: Dim a,b as integer هنا b فقط من النوع integer أما a فهو في هذه الحالة يعتبر من النوع Variant يجب أن يتم التعريف بهذا الشكل: Dim a integer,b as integer أو Dim a as Integer Dim b as Integer 4- شروط تسمية المتغيرات: - - اسم المتغير يجب أن يبتدأ بحرف . - - يمكن استعمال الحروف التي تلي الحرف الأول رقم أو حرف أو الإثنين معا. - - لا يجب أن تكون هناك فراغات بين أسماء المتغير و يمكن استعمال الشكل التالي: id_user - - يجب عدم استعمال نقطة أو رمز خاص مثل ( ؟ ، * ، ) ، ( ، /......... إلخ ) ولكن يمكن استخدام الشرطة السفلية ( _ ) - - أن لا يكون اسم المتغير من الكلمات المحجوزة في الأكسس.1 point
-
الجزء الاول : تعريف بالدالة INDIRECT وهى من دوال البحث والمراجع فى الاكسيل ومن اسم الداله INDIRECT الغير مباشره هى تعرض محتوى خليه بناء على اسم مرجع معين يكتبه المستخدم فى شكل نصى وتتكون من وسيطين .... بداخل الرابط فى المدونه وفيديو على اليوتيوب تفاصيل اكثر انتظروو ان شاء الله الموضوعات القادمه ------ هذا ومن كان من توفيق من الله وماكان من خطا او نسيان او ذلل لسان فمنى ومن الشيطان ------ برجاء مشاركة الجميع (زكاة العلم نشره) ولاتنسونا بصالح دعاؤكم خبير اكسيل Mohamed Elrify -------------------- رابط المدونه http://excelfinancial1.blogspot.com.eg/2016/12/indirect.html -------------------- رابط الفيديو على اليوتيوب https://youtu.be/YaufG1poucc1 point
-
1 point
-
مجموعه من اعمال الاكسيل التى وفقنى الله فى تقديمها عام 2015 . نسال الله ان يتقبل منا ومنكم صالح الاعمال . تقبلوا تحياتى Mohamed Elrify . ----------------------------------------------------------------------- مكتبة اكسيل باللغه العربيه http://download-pdf-ebooks.net/49-1-library-books برامج مصممة بالاكسيل ------------------------------------------------------------------------ برنامج المصروفات الاصدار الثالث http://www.mediafire.com/…/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D… ملف اكسيل حسابات عامه من قيود اليومية وحتى الميزانية http://www.mediafire.com/…/%D9%85%D9%84%D9%81+%D8%A7%D9%84%… اداره حسابات تكاليف مشاريع المقاولات (احمد هلال) http://www.mediafire.com/…/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D… اعداد المقايسة التقديرية لعملية مقاولات (احمد هلال) http://www.mediafire.com/…/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D… برنامج احتساب اجور العماله في شركات المقاولات (احمد هلال) http://www.mediafire.com/…/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D… اعداد قائمة التدفقات النقدية بالطريقة الغير مباشره ل 4 فترات او سنوات بالاكسيل http://www.mediafire.com/…/%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%… برنامج توزيع فئات النقديه http://www.mediafire.com/download/r07i8zmae6hu67c/TRUNK.xlsx جدول اعمار الديون http://www.mediafire.com/…/%D8%AC%D8%AF%D9%88%D9%84+%D8%A7%… دفتر الحضور بالاكسيل http://www.mediafire.com/…/%D8%AF%D9%81%D8%AA%D8%B1+%D8%A7%… صيغ متقدمة ------------------------------------------------------------------------ ابجدة الاسماء بالمعادلات http://www.mediafire.com/…/%D8%A7%D8%A8%D8%AC%D8%AF%D8%A9+%… الداله FORCAST والداله TREND http://www.mediafire.com/…/%D8%A7%D9%84%D8%AA%D8%A8%D8%A4%D… دالة عد الاسماء بدون تكرار http://www.mediafire.com/…/%D8%B9%D8%AF+%D8%A7%D9%84%D8%A7%… دالة HYPERLINK http://www.mediafire.com/…/%D8%AA%D8%B9%D9%84%D9%85+%D8%AF%… انشاء مخطط تكرارى بالمعادلات. بدون انشاء رسم بيانى http://www.mediafire.com/…/%D8%A7%D9%86%D8%B4%D8%A7%D8%A1+%… دالة VLOOKUP بشرطين http://www.mediafire.com/…/%D8%AF%D8%A7%D9%84%D8%A9+VLOOKUP… الترقيم التلقائى بالاكسيل http://www.mediafire.com/…/%D8%AA%D8%B1%D9%82%D9%8A%D9%85+%… القيمة المستقبلية fv http://www.mediafire.com/download/14it43a76cnc7qj/fv.rar الداله LARGE و SMALL http://www.mediafire.com/…/%D8%A7%D9%84%D8%AF%D8%A7%D9%84%D… صيغه تقريب الربع الى اقرب واحد صحيح http://www.mediafire.com/…/%D8%AA%D9%82%D8%B1%D9%8A%D8%A8+%… دالة TRUNK http://www.mediafire.com/download/r07i8zmae6hu67c/TRUNK.xlsx الرصيد التراكمى بشرط http://www.mediafire.com/…/%D8%A7%D9%84%D8%B1%D8%B5%D9%8A%D… استخراج البيانات او القيم بدون تكرار بخمس طرق مختلفه http://www.mediafire.com/…/%D8%A7%D8%B3%D8%AA%D8%AE%D8%B1%D… توليد سلسلة تواريخ http://www.mediafire.com/…/%D8%AA%D9%88%D9%84%D9%8A%D8%AF+%… استخدام دالة VLOOKUP , INDIRECT فى البحث فى العديد من الصفحات http://www.mediafire.com/downl…/oq5dho0m1ykq85o/vlookp_2.rar استخراج بيانات بشروط http://www.mediafire.com/…/%D9%85%D8%B9%D8%A7%D8%AF%D9%84%D… دالة الجمع الشرطى من صفحات متعدده http://www.mediafire.com/…/%D8%A7%D9%84%D8%AC%D9%85%D8%B9+%… المجموع الفرعى بشرط http://www.mediafire.com/…/%D8%A7%D9%84%D9%85%D8%AC%D9%85%D… استخراج اى رقم سواء فى بداية او وسط او نهاية سلسله نصيه http://www.mediafire.com/…/%D8%A7%D8%B3%D8%AA%D8%AE%D8%B1%D… التقريب لاقرب 10 جنيها http://www.mediafire.com/…/%D8%A7%D9%84%D8%AA%D9%82%D8%B1%D… حالة عملية لدالة VLOOKUP فى تحديد سعر صنف ضمن مجموعة اسعار لهذا الصنف http://www.mediafire.com/…/%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D… البحث عن اخر قيمة او نص فى عمود او فى صف حتى مع وجود فراغات http://www.mediafire.com/…/%D8%A7%D8%AE%D8%B1+%D9%82%D9%8A%… استخدام الداله max , min بشرط http://www.mediafire.com/…/%D8%AF%D9%88%D8%A7%D9%84+MAX+%2C… البحث عن اخر سعر بناء على شروط كاسم الصنف او المنتج والعميل http://www.mediafire.com/…/%D8%A7%D8%AE%D8%B1+%D8%B3%D8%B9%… تنسيق الارقام السالبة باللون الاحمر ووضعها بين قوسين http://www.mediafire.com/…/%D8%AA%D9%86%D8%B3%D9%8A%D9%82+%… حالة عملية متقدمه باستخدام الدالة VLOOKUP , MATCH , IFERROR https://www.youtube.com/watch?v=G5QV4V3OOt0 معامل الارتباط http://www.mediafire.com/…/%D9%85%D8%B9%D8%A7%D9%85%D9%84+%… دالة عد الالوان https://www.facebook.com/…/61…/%D8%A7%D9%8A%D9%85%D9%86.xlsm معادلة للتعامل مع التواريخ الهجريه http://www.mediafire.com/…/7e…/%D9%87%D8%AC%D8%B1%D9%89.xlsx المعادلة frequency https://www.facebook.com/download/441176896082998/aaa.xlsx مخططات استخدام الصور فى الرسم البيانى http://www.mediafire.com/…/%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D… مخطط بيانى لعرض البيانات الربع سنوية http://www.mediafire.com/download/39owukjsxx4nz41/CHART.xlsx موضوعات ------------------------------------------------------------------------ طريقة عمل نسخه احتياطية من ملف اكسيل https://www.youtube.com/watch?v=1xHS1snXRKs تحليل التعادل بالاكسيل 4 http://www.mediafire.com/…/%D8%AA%D8%AD%D9%84%D9%8A%D9%84+%… تحديد نقطة التعادل في حالة تعدد المنتجات http://www.mediafire.com/…/%D8%AA%D8%AD%D8%AF%D9%8A%D8%AF-%… أدوات التحليل ماذا لو ؟ pdf http://www.mediafire.com/…/%D8%A7%D8%AF%D9%88%D8%A7%D8%AA+%… أدوات التحليل ماذا لو ؟ excel file http://www.mediafire.com/…/%D9%85%D9%84%D9%81%D8%A7%D8%AA+%… فنون وأساليب التنبؤ بالاكسيل فيديو + pdf +excel files https://www.youtube.com/watch… ميزه وخاصية ممتازه وهى Flash Fill (تعبئة سريعة) https://www.youtube.com/watch?v=OZyrmcInZLU الجديد فى اكسيل 2016 http://www.mediafire.com/…/6vda4ed2a27qf…/New+EXCEL+2016.rar وفى النهاية نسال الله ان يعيننا على الاستمرار وان يوفقنا للخير صفحة خبير اكسيل صفحتى على الفيس بوك1 point
-
وعليكم السلام انا اعتقد ان الطريقة الصحيحة هي ، عند إضافة صنف ، الكود يجب ان يتأكد من وجود الصنف على القائمة او لا: اذا الصنف غير موجود ، فيتم إضافة الصنف كالعادة ، اذا كان الصنف موجود ، فيجب الذهاب الى ذلك السجل ، واجراء العملية عليه (سواء + او -) مثلا جعفر1 point
-
كل ما ذكره الاستاذ بعاليه يسري علي قاعدة بيانات بصيغة mde 2003 اما بعد تعدد اصدرات الاكسس 2007 و 2010 و 2013 اصبح التشفير اقوي تشفير عكسي وحتي الان لم اجد شخص قام بتحويل قاعدة بيانات بصيغة accde بل ازيد واقول لم ولن يستطيع احد ان يعيد قاعدة بيانات بصيغة accde غير ميكروسوفت فقط واتحدي كان في الماضي علي اصدار اكسس 2003 يمكن فعل اي شئ من الوصول للتصميم النموذج الي الاكواد.. الخ اما الان لا مايكروسوفت فقط + الاستاذة زهرة بالتوفيق1 point
-
1 point
-
أحسن و افضل حل لمعادلة التفقيط في اكسل 2010 فى برنامج EXCEL الكثير منا يحتاج الى تفقيط مبلغ معين (من الأرقام الى الحروف) سواء باللغة العربية أو الإنجليزية ولا يوجد معادلة جاهزة داخل البرنامج لتنفيذ ذلك ولكن يمكن عمل ذلك واليكم الطريقة طريقةإستخدام معادلتى التفقيط لأى مبلغ باللغة الإنجليزبة أوالعربية:- 1- أبحث عن الـFolder المسمى XLSTART عل ى جهاز الكمبيوتر الخاص بك وغالبا ستجده فى program files وداخل Microsoft office 2- أنسخ الملفين الموجودين داخلالفولدر المسمى معادلة التفقيط (فى المرفقات) وهما Copy of Copy of EHAB و Copy of Copy of PERSONALوضعهما داخل الفولدر المسمى XSTART السابق الإشارة اليه فى الخطوة رقم1 3- انت الأن جاهز لإستخدام المعادلات 4- لاستخدام المعادلة داخل أى Excel sheet كالأتى إذهب الى الخلية التى تريد ان تكتب داخلها التفقيط وأذهب الى Formula tab واضغط على الأيقونة Insert function وفى المكان المخصص لـ Or select a category إختار User Defined بعدها ستجد المعادلات المطلوبة , إختار المعادلة المطلوبة إذا كانت باللغة العربية أو الأنجليزية وستظهر فى الخلية التى أنت واقف عليها وإختار الخلية الى بها الأرقام المطلوب تفقيطها وأضغط Enter ستجد المبلغ بالحروف المطلوبة مع تحياتىمعادلة التفقيط.rar1 point