نجوم المشاركات
Popular Content
Showing content with the highest reputation on 02/11/15 in مشاركات
-
طريقة عمل ( فورم ) فاتورة ووضع اكوادها وترحيل بياناتها واستدعائها وطباعتها !! خطوة خطوة السلام عليكم اساتذة المنتدي وخبراؤه الكبار الاخوة الافاضل اعلم ان هذه الموضوعات قد قتلت بحثا وطلبا واجابة من الاعضاء وهناك امثلة كثيرة للاساتذة الافاضل الكبار ولكن ما دعاني لتقديم هذا الموضوع ... هو كثرة طلبه هذه الايام حيث طلبه كثيرا الاخ / محمد توبه ... والاخ / هاني مصطفي ولكني اردت ان اجعل المواضيع الاساسية في عمل اي برنامج في متناول الجميع بطريقة بسيطة وسهله اكثر ما يكون من خلال هذه السلسلة ( اعانني الله علي اكمالها كما ينبغي ) وقصدت ان يكون الموضوع بعنوان واضح ليستفيد منه الجميع عند البحث وسأقدم الشرح بطريقة الفيديو والاكسيل والجديد في هذا الموضوع هو انني سأقدم الاكواد اكواد بطريقة بسيطة وسهلة ولكنها طويله بعض الشئ ... ولكن تؤدي نفس الغرص ومرة اخري بأكواد خبورية خالصة ... للاستاذ العلامة القدير الخبير / عبد الله باقشير ... مع شرح الاكواد سطر سطر كما تعودنا وذلك بالطبع بعد اذن القدير الكبير ... ولكن لانه اول من علمنا تقديم المساعدات للغير ... لم استأذنه ولكن انتظر رأيه في الموضوع (((( الدرس الاول )))) نتعرف في هذا الدرس علي عمل بعض التنسيقات اللازمة لعمل الاكواد وخصوصا الاكواد الخبورية بتسمية التكستات بوكس ووضع بعض الاكواد المساعدة للاكواد في الدروس التالية قبل وضع الاكواد الاساسية والخاصة بالترحيل و ..... الخ وكالعادة دائما احب ان اختار اسهل الاكواد علي الاطلاق لسهوله فهمهما وتنفيذها والاعتماد عليها حتي الاكواد الخبورية احببت اختيار اسهلها لما لها من دقة وكفاءة عاليه في تنفيذ المهمة المطلوبة وبالطبع يمكنك تطويع الكود بعد فهمه جيدا لاستخدامه كما تريد في ملفك الشخصي وسأقدم الشرح بطريقة الفيديو المباشر في المشاركة التالية ويمكنكم التحميل منها مع المرفقات ارجو أن يوفقني الله في الشرح وان اكون عند حسن ظنكم جزاكم الله خيرا1 point
-
السلام عليكم ورحمة الله وبركاته اساتذتى فى هذا الصرح العظيم . الساده اعضاء اوفيسنا موضوع اليوم هو استخدام دالة VLOOKUP فى البحث عن قيمه معينه فى مجموعة صفحات بشكل بسيط وسهل فقد رايت استخدامات مشابهه ولكن كانت بشكل اصعب . والان اقدمها لكم بشكلها البسيط وعلى فكرة انا اعشق هذه الداله ارجوكم لاتنسونى فى دعاؤكم اترككم مع الملف والمثال العملى vlookp.rar1 point
-
اخواني في المنتدى السلام عليكم اليكم هذا الملف الذي يختار لكم ارقاماً عشوائية بشروط معينة ارقام عشوائية بشرط.rar1 point
-
السلام عليكم ورحمة الله وبركاته استاذ / محمود جزاكم الله خيرا ، واقسم لك أنى فرغت وقتى لك ، رجاء دعوة صالحة منك تصبنى 1 - صفحة الادخال واااااااااااااحدة ( لكل السيارات ) وليس لكل سيارة صفحة ، بل اجعل عمود اسمع اسم السيارة نكتب فية اسمها وعمود لرقمها ، وبذالك تكون كل البيانات فى صفحة واحده ذالك افضل لك جدا ، ولو اردت تغيرها فيما بعد او تستخرج بيانات اضافية فيما بعد تسجد الامر سهل جدا 2 - بالنسبة لتقرير كمية الوقود .............. لا تقلق منه هو اسهل ما يكون ( استخدمت فيه : البيفوت تابل ) وهو معجزه فى الاكسيل ، وإليك هذا الفديو ليوضح لك 3 - تقرير إجمالى الوقود ممكن يكون يومى او اسبوعى او شهرى او ربع سنوى او سنوى وخلافه ............... على حسب ما تريد وممكن بين تاريخين وإليك فديو يشرح لك sum ifs إليك الجمع بين تاريخين 4 - فعلا اول و اخر عداد يجب استدعائة من خلال التاريخ ، لكن للاسف كان معى معادلة فى غاية الرووووعه ولم تعمل جيدا على الملف ومنذ الصباح وانا اعمل عاكفا عليها وشاركت فيها صديق لى ولعلا ننتهى من هذا العمل خلال ساعات قليلة بإذن الله لا تقلق استاذنا الكريم ستحصل على برنامج يرضيك وسهل الاستخدم بإذن الله تبارك وتعالى تقبل تحياتى : اسلام الشيمي1 point
-
1 point
-
اخى هيا بالفعل بتقل الملف جدا وطبعا ممكن تحويلها الى كود وجارى العمل على الملف تقبل تحياتى1 point
-
السلام عليكم ورحمة الله وبركاته الاستاذ الكريم / محمود كمال جزاكم الله خيرا على كلامك الطيب ، والله اسال ان يجعلنى عند حسن ظنكم منذ الصباح وأنا اعمل على ملف حضرتك وقمت بالعمل على ملف (سولار 2) ، وتوصلت الى الاتى 1- حضرتك تستخدم الاكسيل على انه دفتر لا ( برنامج حسابات + قاعدة بيانات ) 2- قمت بعمل شيت فى نفس الملف واسمه ( الادخال ) ووضعت فية الادخال بطريقة سهلة لسهولة اخراجها فى صورة ( تقارير ) 3-قمت بعمل تقرير بكمية الوقود خلال لكل شهر باستخدام ( البيفوت تابل ) 4-قمت بعمل تقرير مماثل لتقريرك باستخدام دالة sum ifs 5- وقفت امامى عقبة فى معادلة اول عداد و اخر عداد ............ نرجوا من الاخوه الافاضل حلها والعمل عليها 6- من الممكن أن ترسلها فى سؤال مستقل تحت عنون ( دالة بحث عن اصغر رقم بناءا على شرط اصغر تاريخ ) وتستخدمها لمعرفة قرأة أول عداد وهكذا ...................... 7- سابحث جاهدا لانهاء برنامجك كما تحب وتفضل أنت .......... لا حسب ما أرى أنا ..... فالاختيار أولا وأخيرا لك ------------------------- -------------------- ------------------------ -------------------------- إليك اسماء بعض الدوال المستخدمة فى هذا الشيت ، ابحث عنها على النت ، وستجد فديوهات كثيرة تساعدك فى تعلمها --------------- ----------------------- ----------------------- ------------------------ --------------------- ---- 1- دالة الجمع بشروط وممكن من خلالها الجمع بين تاريخين sum if s 2- دالة البحث vlook up 3- ال pivot table لتحليل وتلخيص البيانات فى صورة تقارير دون معادلات 4-دالة text لم انهى مساعدتى لك على حد علمى ، وسنطلب من الاخوه الافاضل المساعده ، لنتعلم معا . انا تحت امرك ولو ارت اى استفسار سولار جديد+2.rar1 point
-
اخى هل تقصد هكذا تقبل تحياتى فرنسية23.rar1 point
-
فى ميزان حسناتك يا اخى شكراً1 point
-
عشان حضرتك توفر تمن النضارة اتفضل الملف التالي وإن شاء الله يفي بالغرض بس متنساش اللي توفره من تمن النضارات تحطه في حسابي Auto Completer Data Validation New.rar1 point
-
اخى الفاضل لعمل ذلك استخدم سطر الكود التالى Me.CommandButton1.Caption = "Press" & vbNewLine & "To Close" & vbNewLine & "Form" او Me.CommandButton1.Caption = "Press" & Char(13) & "To Close" & Char(13) & "Form" مرفق الملف للتوضيح تحياتي LabelCaption-MultiLines.rar1 point
-
1 point
-
كما يمكنك تطوير الكود بهذا الشكل ليمكنك من إنشاء الكثير من المجلدات دفعة واحدة حسب القيم في النطاق A1:A5 بهذا الشكل Sub CreateFolder() Dim sPath As String Dim I As Long sPath = GetFolder For I = 1 To 5 If Len(sPath) <> 0 Then If Dir(sPath & "\" & Cells(I, 1).Value, vbDirectory) = vbNullString Then MkDir sPath & "\" & Cells(I, 1).Value End If End If Next I End Sub Function GetFolder() As String Dim dlg As FileDialog Set dlg = Application.FileDialog(msoFileDialogFolderPicker) dlg.InitialFileName = "C:\" If dlg.Show = -1 Then GetFolder = dlg.SelectedItems(1) End If End Function1 point
-
أخي الكريم محمد إليك الملف التالي ..بالضغط على زر الأمر ستظهر لك نافذة حوارية تختار منها المسار الذي تريد إنشاء المجلد فيه ، ثم تضغط أوك سيقوم الكود بعمل مجلد باسم بناءً على القيمة الموجودة في الخلية A1 أرجو أن يكون هذا هو المطلوب Create Folder Using File Dialog.rar1 point
-
السلام عليكم ورحمة الله أخي الكريم، وضعت مثالا للحل على السؤال الأول في شيت (خمسة أسئلة)، وإذا راقك هذا الحل يتم التعميم على البقية... أخوك بن علية المرفق : الاختبار الشفوي.rar1 point
-
اخي محمد اغبطك على ذوقك الرفيع في التصميم وسوف استعرض المرفق لاحقا على اصدار اوفيس أحدث في الاصدار 2003 يمتنع عرض التقرير من خلال النموذج اقصد بـ من خلال اي : عرض التقرير داخل النموذج مثل النموذج الفرعي1 point
-
1 point
-
الأخ الفاضل ياسر إليك تصحيح الكود في المشاركة رقم 6 حيث جربت الكود ولم يعمل يقوم الكود بعمل قائمة بأسماء النطاقات الموجودة داخل المصنف في ورقة عمل جديدة Sub ShowNames() Dim X As Worksheet Set X = Worksheets.Add Dim nm As Name Dim I As Long I = 1 With ActiveSheet For Each nm In ThisWorkbook.Names .Cells(I, 1).Value = nm.Name .Cells(I, 2).Value = nm I = I + 1 Next nm .Range("A1:B1").EntireColumn.AutoFit End With End Sub1 point
-
استاذي القدير انا لم اشاهد الفيديو بشكل كامل، مررت عليه مرور الكرام وهو فيديو مفيد وهام وادعوا الله أن يجازى أستاذنا الكريم أ.محمد صالح كل خير وأن يجعل عمله في ميزان حسناته لكن بالفعل كلام حضرتك صحيح 100% فتعريف جميع المتغيرات بهذا الشكل غير مفضلة لانها تظهر وكأنها نفس النوع لكن دائما المتغير الاخير قبل كلمة As هو الذي يأخذ النوع المحدد بينما الباقي يتم تعريفهم ك Variant فلو كتبنا Dim L,K,M As Long هنا M فقط هو ال Long بينما L,K من نوع Variant جزاك الله كل خير على التوضيح أبو البراء تحياتي1 point
-
و عليكم السلام ورحمة الله وبركاته استاذ / اسلام الشيمى وهل من هو مثلى قليل اخبرة او معدوم الخبرة يرفض طلب حضرتك بالمساعدة بكل تأكيد مساعدتك شرف لى بكل تأكيد أول هام للتوضيح لحضرتك يوجد فى مجال عملى 61 سيارة تعمل بالسولار 73 سيارة تعمل بالبنزين منهم 20 سيارة تعمل بال بنزين + الغاز وعند جمع الجميع فى ملف واحد مع مرور الايام وتسجيل البيانات اصبح الملف ثقيل جداا لذلك جعلت ملف للسولار وملف اخر للبنزين وخشيت ان اجعل التقرير فى نفس الملف يتقل الملف ولكن الامر متروك لحضرتك هل يوجد طريقة اخرى اما الملف السابق الذى بعته كان ملف توضيحى فقط لصعوبة تحميل الملف الاصلى تقبل منى كل ود واحترام لشخصك الكريم1 point
-
اخى الكريم اذا كان المطلوب تحويل الارقام الموجوده بالعمود C الى حروف بالعمود D انظر المرفق المعادله موجوده بالعمود D ويمكنك تغيير العمله من جنية الى ريال او دينار او كما يجلو لك تقبل تحياتى if_how.zip1 point
-
السلام عليكم الخطاء الذي وقعت به اخي الكريم الاتي انت تقوم بجمع سعر الشراء وتقسيمه على عدد مرات الشراء وهذا خطاء ( متوسط سعر الشراء = (7+10+12)/3 = 29/3 = 9.66) المفروض كي تخرج معدل سعر الشراء نقول (الكميه * السعر)= مبلغ الشراء --- نجريه لكل عملية شراء بعد ذلك مجموع مبالغ الشراء مقسوم على كمية الشراء اوضحها رياضيا 10 * 10 = 100 5 * 7 = 35 9 * 12 = 108 اجمالي الشراء = 243 يقسم على مجموع كميه الشراء 24 243/24 الناتج------ معدل سعر الشراء =10.125 بالتوفيق1 point
-
إليك أخى المطلوب وفقا لأوفيس 2003 وأوفيس 2007 تقبل تحياتى نقل البيانات بدون تكرار ومرتبة أبجديا OFFICE 2003.rar نقل البيانات بدون تكرار ومرتبة أبجديا OFFICE 2007.rar1 point
-
اخى فى الله الاستاذ وليد زقزوق عن خبره شخصية الكلام اللى قاله اخونا الاستاذ هانى بدر كلام من الااااخر ارجو منك التدقيق فيه . رغم ان لى ملاحظات على ملفك . وانا اعلم مدى جهدك وتعبك فيه . ولكنى ارى انه لايصح لى ان اقوله على الملاء وفقك الله واعانك على الاكمال هذا العمل اخيك فى الله1 point
-
السلام عليكم ورحمة الله وبركاته أخواني الاعضاء كما وعدتكم بعمل صفحة دخول وصلاحيات للمستخدمين ولكن بشكل جديد ومميز ** أهم مميزات هذا البرنامج -- سهولة تطبيقها على اي برنامج بسهولة -- صلاحية الدخول للصفحات بحالتين ( الدخول الكامل بكافة الصلاحيات أو الدخول للعرض فقط -أي عدم وجود صلاحية للتعديل عن طريق حماية الصفحات برقم سري يتم تحديده من قبل المستخدم ) -- القوائم للبرنامج ديناميكية أي تتغير هذه القوائم بحسب عدد الصفحات المستخدمة في البرنامج -- كل مستخدم له كلمة سر ورقم محدد وبحسب الصلاحية الممنوحة اليه -- تحديد الصلاحيات باسلوب مباشر عن طريق صفحة الاكسل مباشرة -- إضافة ومسح و تغيير اسم الصفحات الصفحات يتم بواسطة القوائم فقط ************************************************************************** -- الحد الاعلى للصفحات هو 16 صفحة واي صفحة يتم اضافتها يدويا سيتم التعامل معها يدويا -- يعتمد البرنامج على ترتيب الصفحات ويتم تشكيل القوائم بناءا على ترتيب الصفحات -- عند اختيار الانتقال الى الصفحات يتم تغيير لون اسم الصفحة بحسب حالة الصلاحية فاذا كانت هناك صلاحية مطلقة يتم تلوينها باللون الاصفر وان كانت صلاحية بدون تعديل يتم تلوينها بالاحمر وفي حالة عدم وجود صلاحية يتم تلوينها بالرمادي وبالتالي سيتم تحديد صلاحية الصفحات بناءا على اللون *************************************************************************** قد لا اكون اوصلت الفكرة بالشكل المطلوب ولكن عند تجربة البرنامج ستتضح الفكرة بصورة افضل ارجو التجربة واعلامنا بالسلبيات التي قد نتفادها ان شاء الله1 point
-
الحلقة السابعة *********** السلام عليكم ورحمة الله وبركاته عنوان حلقة اليوم (هيا بنا نلعب ونبني !) النهاردة هنشتغل في البناء .. والبناء هنا هيكون بناء دالة Function .. ممكن يكون الدرس اللي زي كدا مرحلة متقدمة بس أنا تعمدت أشتغل فيها عشان نسبق ونتسابق للمراحل المتقدمة وإحنا في البدايات ، وعشان الناس اللي مستواها متقدم تشارك معانا ، ومتحسش بالملل من البدايات اللي هما شايفينها سخيفة. ** كلنا عارفين إن برنامج الإكسيل بيوفر لنا عدد كبير جدا من الدوال الجاهزة اللي نقدر نستفيد بيها بشكل كبير ، وكمان فيه إضافات Addins بتكون فيها دوال يمكن استخدامها .. لكن مع الوقت هتلاقي نفسك محتاج تعمل دالة (تبني دالة ) بحيث توفر لك الوقت والجهد .. النوع ده من الدوال اللي بتبنيه بنفسك بيطلق عليه (الدوال المعرفة UDF ودي اختصار لـ User Defined Function ) ، وممكن نقول عليها (دوال مخصوصة .. يعني بالبلدي كدا دوال تفصيل .. بنفصلها بحيث تناسب احتياجتنا) هناخد مثال بسيط عشان نفهم إزاي نتعامل مع بناء الدوال : أول شيء لازم يكون عندك المعطيات اللي هتشتغل بيها .. لو قلنا مثلا عايزين نعمل دالة نحسب بيها مساحة المستطيل ..يبقا الأول نعرف معادلة مساحة المستطيل Area = (الطول * العرض) (محدش يكون نظره ضعيف ويقرا العرض من غير نقطة ، لأحسن تودونا في داهية) يبقا المعطيات عندي : الطول والعرض ، هنقول الطول Length والعرض Width .. دي طبعا هتكون متغيرات لأننا مش عارفين قيمتهم كام ، ولأن قيمتهم مش ثابتة ؛ فنطلق عليهم (المتغيرات) ممكن نعملها على شكل معادلة ونقول : Area = Length * Width خطوات البناء : هنفتح محرر الأكواد وندرج موديول جديد ونستعد لعملية البناء ..ركزوا معايا يا أحباب Function Area() End Function أول شيء نكتب كلمة Function مش Sub يا صالح .. إحنا هنشتغل على دالة يبقا نكتب Function أما كلمة Sub فدي بتكون للإجراء الفرعي ..وبعدين نترك مسافة (بالمسطرة أكيد) ونكتب اسم للدالة .. هنسميها هنا اسم معبر Area لأننا عايزين نحسب المساحة وبعدين لما تضغط Enter هتلاقي محرر الأكواد عمل قوسين بعد اسم الدالة وقفل بالجملة End Function (ومننساش دايما القفلة مطلوبة ..لازم يكون تقفيلك مظبوط) ما بين السطرين اللي اتكتبوا دول هتبدأ تكتب الأكواد المطلوبة لتنفيذ العملية الحسابية لحساب مساحة المستطيل ... بس قبل ما نبدأ يا ريت نحط مؤشر الماوس بين القوسين (ايه ده هما القوسين دول طلعلهم لازمة .. أنا كنت مفكرهم زينة وشكل .. حاجة تحلي شكل المحرر زي غترة كدا !) .. القوسين دول بنستخدمهم لتحديد متغيرات الدالة ودي بنسميها arguments ، زي المتغيرات Variables بس دي بيتم الإعلان عنها داخل الأقواس دي ..( يعني هيا متغيرات بس ممكن نقول إنها متغيرات من فصيلة الذوات .. بمعنى إنها مهمة وليها برستيج ، فأول ما نعلن عنها نعلن عنها في الأول قبل ما نبدأ نشتغل عليها). هنكتب اسم المتغير ونوعه زي كدا Function Area(Length As Double, Width As Double) End Function وإحنا بنكتب المتغير وبعديه كلمة As أول ما ناخد مسافة ، هنلاقي فيه قايمة ظهرت لي عشان أختار منها (ممكن نطنشها ..نتجاهلها) أو ممكن نستفيد منها إننا نشوف الكلمة اللي عايزينها ولما نلاقيها نضغط عليها Double Click يعني دبل كليك (شفتوا الترجمة دي .. مش أي حد يترجم خلوا بالكم) ، لما نضغط دبل كليك عليها هنلاقيها اتكتبت ، يا إما نضغط Tab من لوحة المفاتيح .. أول متغير اسمه Length اللي هو خاص بالطول ، وحددنا نوعه بـ Double ودا زي ما عرفنا بيستخدم مع الأرقام العشرية الطويلة . تاني متغير اسمه Width وبردو حددناه نفس النوع .. ومننساش عشان الأمور تكون صحيحة بنضع فاصلة بين المتغيرين ..عشان عمنا المحرر ميحصلش عنده لبس !! بكدا نكون انتهينا الحمد لله .. عندك لسه مخلصناش ..دي كانت البداية والنهاية .. نيجي بقا للجد اللي هو هزار نكتب السطر اللي جاي ده ما بين البداية والنهاية Area = Length * Width يا ريت بعد إذنكم بلاش كسل - محدش ياخد السطر كوبي ويروح يعمل Paste - لا أنا عايز أتعبكم - ما أنا تعبان من الكتابة - اتعبوا شوية انتو كمان .. كله يكتب (اكتب يا حسين .. سجل كل كلمة بيقولها !!) .. الفايدة من الكتابة إننا أول ما نكتب كلمة Area وناخد مسافة ، نلاحظ مستطيل أصفر ظهر لي بيشرح لي متغيرات الدالة .. حلوة ولا ملهاش فايدة .. الفايدة إنها تعتبر زي وسيلة مساعدة ، عشان لما نحب نستخدم الدالة دي في كود تاني أو دالة تانية .. (معنى الكلام اللي بقوله إننا ممكن نبني دالة ونستخدمها في دالة تانية أو كود أو خلافه ..كنوع من التيسير) لو كتبنا أول حرف في كلمة length أو width بحرف small ، هتلاقي المحرر بعد ما تخلص بيحول الحروف الأولى دي لحروف Capital ، ودي سببها إن الكلمات دي متعرف عليها قبل كدا في أول الدالة. كدا تمام تم بناء الدالة (بالسهولة دي ! أيوا بالسهولة دي .. الفكرة مش معقدة .. كلنا اللي إحنا عايزينه مساحة المستطيل والمساحة = الطول * العرض (بس خلاص على رأي شعبولة) نيجي بقا نشوف نتيجة الكلام اللي إحنا عملناه في ورقة العمل .. واحد يقول هنضغط Run (هقوله لا دا مش إجراء فرعي .. دي دالة ، ودلوقتي طالما كتبتها عندك في ملفك أصبح زيها زي أي دالة ، يعني زيها زي الدوال الموجودة في الإكسيل ..وببساطة شديدة تقدر تستعملها ..) تطبيق على الدالة : قم بوضع القيمة 9 في الخلية A1 والقيمة 6.5 في الخلية B1 ، وبعدين في الخلية C1 قم بعمل معادلة للدالة اللي إنت بنيتها: =area(A1,B1) نخلي بالنا ..لما نستخدم الدالة بنستخدمها بنفس الشكل اللي بنيناها بيه ، يعني المتغير Length بييجي بعديه فاصلة ثم المتغير Width ..نشوف الناتج هنلاقية 58.5 .. وبكدا عرفنا مساحة المستطيل بدلالة الطول والعرض .. نجرب نمسح الخليةB1 ونشوف الناتج ، هنلاقي الناتج صفر ، ودا طبيعي لأن أي رقم * فراغ = صفر بس أنا عايز أحط شروط مختلفة ، أنا عايز الناتج ميكونش صفر .. لما يكون العرض مش موجود يضرب الطول في نفسه ..(ايه الكلام الصعب ده ) نرجع تاني للدالة ونبدأ نشوف ايه اللي ممكن نعمله ..؟ في الحالة دي طالما إن إنت عايز تخلي العرض اختياري وليس إجباري ، يبقا هتحدد الكلام ده للمحرر ، وتقوله Optional (اختياري) Function Area(Length As Double, Optional Width As Variant) Area = Length * Width End Function هنا غيرنا نوع المتغير إلى Variant، تحسبا إنك ممكن تترك الخلية اللي فيها العرض فارغة .. واحد هيقول : خلااص ، هرد أقوله : لسه ! طالما إننا خلينا العرض اختياري ، يبقا لازم نحط شرط ، ونشوف الشرط إذا تحقق يعمل ايه ، ولو الشرط متحققش يعمل ايه ..!! نرجع لمرحلة الإعدادي لما كنا بناخد قاعدة IF بمعنى إذا أو لو (وعرفنا أيامها إن لو حرف شعلقة في الجو) .. جملة IF في البرمجة : بييجي وراها شرط ، ولو الشرط اتحقق ايه اللي يحصل ، ولو متحققش ايه اللي يحصل . الشرط اللي هنحطه .. في حالة عدم وجود العرض يعمل ايه ؟ يضرب الطول في نفسه (الطول * الطول) ، طيب لو كان موجود العرض ، يبقا يضرب الطول * العرض Function Area(Length As Double, Optional Width As Variant) If IsMissing(Width) Then Area = Length * Length Else Area = Length * Width End If End Function ما هذا ؟؟ هذا ماذا ؟ هذا هو شكل الدالة بلغة البرمجة ، زي ما فهمناها نترجمها .. بعد كلمة If بييجي الشرط ، والشرط نخلي بالنا يا إما True يا إما False .. لو True ينفذ السطر اللي بعد كلمة Then مباشرة ، لو False ينفذ السطر اللي بعد سطر Else وجملة If الشكل العام ليها زي كدا If الشرط Then الكود في حالة تحقق الشرط Else الكود في حالة عدم تحقق الشرط End If محدش ياخد الكود ده في محرر الأكواد (دا للتوضيح .. واحد مش معبرني وبردو بياخد الشكل ده كوبي ورايح على محرر الأكود ..سيبوه يتصدم !!) أعتقد الصورة كدا بقت واضحة .. استعملنا في الشرط كلمة IsMissing ، الترجمة الحرفية ليها هل مفقود ؟ هل مفقود العرض ؟ -- يعني هل المتغير المسمى العرض مفقود ؟ لو كان مفقود هيتم حساب المساحة بضرب الطول * الطول ، ولو كان موجود يطنش الجزء الأول وينفذ الجزء التاني ، ويضرب الطول * العرض نرجع لورقة العمل ونعدل المعادلة ونخليها : =area(A1) كدا مفيش المتغير الخاص بالعرض ، فتقوم الدالة تضرب الطول * الطول ، ويطلع الناتج 81 لو فضلت المعادلة زي ما كانت في الأول هيكون الناتج صفر .. طيب دا هيكون واجب : عايزين نضيف شرط وهنستخدم فيه معامل الشرط OR ..بحيث لو كان العرض = 0 يضرب الطول * الطول ... سامع واحد من اللي بيقروا بيدعي عليا ، وبيقول حرام عليك طلعت عنينا عشان نعرف مساحة المستطيل ، دا أنا أرحم لي إن أحسبها بايدي وأريح بالي .. معلش استحملوني ! دا كان مجرد مثال عشان نفهم إزاي نقدر نبني دالة .. واجب تاني غير الأولاني (مش هرحمكم!) : قم ببناء دالة بسيطة ، بحيث لو قيمة معينة أكبر من أو يساوي 100 يكتب ممتاز ، لو أقل من 100 يكتب جيد وإلى لقاء مع حلقة جديدة من حلقات افتح الباب واجري ورايا كان معكم البنا أبو البراء من شركة مؤسسة أوفيسنا لأعمال البناء .. إلى أن ألقاكم بخير .. دمتم في حفظ الله1 point
-
برنامج بيانات مدرسين شاملة ( الاسم - المدرسة -تاريخ التعيين - الكود- الرقم القومى- الوظيفة - تاريخ الميلاد - رقم التليفون )1 point
-
السلام عليكم إستبدل المعادلة التي في الخلية AP3: =(IF(SUM(D3:AM3)>30<=90,SUM(D3:AM3),0)) بهذه المعادلة =IF(AND(SUM(D3:AM3)>30, SUM(D3:AM3)<=90),SUM(D3:AM3),0)1 point