بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
قصي
05 عضو ذهبي-
Posts
1,337 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
1
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو قصي
-
شرح دالة Index فهي أكثر مرونة من غيرها للمبدع ياسر خليل إليك المعادلة التالية ضع المعادلة في الخلية F4 =IFERROR(INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0)),"") شرح المعادلة ************* الجزء الأول الدالة IFERROR وتستخدم الدالة في حالة حدوث خطأ في النواتج ولها عدد 2 بارامتر : الأول هو القيمة value والثاني value_if_error أي القيمة التي توضع في حالة حدوث خطأ .. البارامتر الأول هنا هو الجزء الأول (الخاص بالبحث) INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0)) والبارامتر الثاني هو الجزء "" أي أنه عند البحث وعدم وجود نتائج للبحث فإنه يحدث خطأ #N/A ولتجنب الخطأ توضع القيمة فراغ ، عن طريق أقواس التنصيص مرتين متتاليتين الجزء الثاني هو الجزء الخاص بالبحث INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0)) والدالة Index من الدوال البحثية لها 3 بارامترات .. ------------------------------------------------ ** البارامتر الأول النطاق اللي المفروض عايزين النتائج منه ، أو مصفوفة القيم المراد البحث داخلها ولو وقفنا داخل المعادلة وحددنا الجزء ده $C$12:$C$16 وضغطنا من لوحة المفاتيح F9 هنلاقي النتائج بهذا الشكل {12;15;18;21;24} ودي مصفوفة القيم المراد البحث داخلها ** البارامتر الثاني هو رقم الصف داخل مصفوفة القيم ، مش رقم الصف في ورقة العمل .. طيب إزاي هنعرف رقم الناتج أو الصف المراد البحث عنه داخل المصفوفة هنا بنستخدم الدالة Match ودي دالة بحث بردو بتجيب رقم الصف MATCH(B4,$B$12:$B$16,0) دا البارامتر الثاني وهنا بتتم عملية البحث عن قيمة البحث الموجودة في الخلية B4 وبيتم البحث عن قيمة الخلية B4 في النطاق $B$12:$B$16 ودا بردو مصفوفة النطاق ..يعني لو حددنا السطر ده وضغطنا F9 من لوحة المفاتيح هتلاقي الناتج بهذا الشكل {"معلم";"خبير";"مساعد";"مدرس";"اخصائى"} فاللي بيحصل إنه بيبحث عن القيمة الموجودة في الخلية B4 داخل المصفوفة دي .. القيمة الموجودة كلمة "معلم" ودي أول كلمة في المصفوفة يعني رقم 1 إذاً رقم الصف هو واحد (وأؤكد ليس المقصود رقم الصف في ورقة العمل .. المقصود رقم نتيجة البحث داخل المصفوفة ) طيب رقم 0 دا ايه فايدته ... فايدته إننا بنقول لعملية البحث إنها تكون متطابقة تماماً .. تطابق عملية البحث للقيمة المراد البحث عنها >> إحنا دلوقتي عندنا نطاقين أو مصفوفتين للقيم (الأولى المراد استخراج النتيجة منها) و (الثانية المراد البحث بداخلها) الإكسيل بيقوم الأول بالبحث قبل ما يظهر النتيجة (دي الخطوات المنطقية للعمل) .. بيقوم بالبحث عن القيمة الموجودة في الخلية B4 داخل المصفوفة الخاصة بيها .. طلع الناتج 1 لأنها أول نتائج البحث خلاص وصل الإكسيل لرقم ناتج البحث داخل المصفوفة ..ياخد الرقم دي ويشوف النتيجة رقم1 الموجودة في المصفوفة الأول ..هيلاقي إن رقم 1 في المصفوفة الأولى هو رقم 12 ** البارامتر الثالث اختياري ودا هنا ملوش استخدام لأن المصفوفة مكونة من بعد واحد فممكن نكتب رقم 1 أو نتركه من غيره ما نكتبه لأن رقم 1 هو الافتراضي =INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0),1) >>>>> عشان نفهم أبعاد المصفوفة ذات البعدين ------------------------------------------------- ضع المعادلة التالية في أي خلية =INDEX($B$12:$C$16,MATCH(B4,$B$12:$B$16,0)) المصفوفة الأولى هي $B$12:$C$16 نخلي بالنا هنا المصفوفة بتاخد القيم من عمودين ..يبقا المصفوفة ثنائية الأبعاد نحدد الجزء اللي فات ونضغط F9 من لوحة المفاتيح هنلاقي النتائج بهذا الشكل {"معلم",12;"خبير",15;"مساعد",18;"مدرس",21;"اخصائى",24} لو ركزنا هنعرف شكل المصفوفة .. بتاخد قيم الصف من العمودين مع بعض يعني مثلاً : معلم و 12 في صف واحد وداخل المصفوفة مع بعض بيفصل بينهم فاصلة عادية بعد كدا الصف اللي بعديه هتلاقي خبير 15 وبردو بيفصل بينهم فاصلة عادية ... أما الفاصل بين قيم المصفوفة أقصد البعد الثاني بيتم الفصل بفاصلة منقوطة بمعنى آخر : ********** معلم 12 أول صف في المصفوفة خبير 15 ثاني صف في المصفوفة مساعد 18 تالت صف في المصفوفة وهكذا .. (بيفصل بين الصفوف فاصلة منقوطة) داخل الصف الواحد عمودين لأن المصفوفة من بعدين : عمود 1وعمود 2 (بيفصل بين الأعمدة داخل المصفوفة فاصلة عادية) ناخد مثال بسيط عشان نفهم العملية إزاي بتتم : لو عايزين رقم الصف 4 والعمود 1 هنشوف المصفوفة .. رقم البصف 4 هنلاقي مدرس 14 ، ورقم العمود المطلوب هو العمود 1 إذاً الناتج كلمة مدرس يا ريت تكون النقطة دي وضحت ************************************************************************** نجرب المعادلة دي ونشوف اللي فهمناه =INDEX($B$12:$C$16,MATCH(B4,$B$12:$B$16,0),1) ع السريع هيتم البحث داخل المصفوفة ذات البعدين (طالما إنها ذات بعدين إذاً سيتم الاستعانة بالبارامتر الثاني والثالث للدالة Index) عشان نعرف رقم الصف المطلوب ورقم العمود المطلوب هنا رقم الصف هنجيبه من خلال الدالة Match هنلاقي رقم الصف هو 1 وأخيراً البارامتر التالت ودا كتبناه 1 يعني العمود الأول إذاً الناتج النهائي هو كلمة "معلم" لو غيرنا رقم العمود من 1 إلى 2 هيتغير الناتج إلى 12 لو غيرنا رقم العمود إلى 3 هيديني خطأ لأن المصفوفة ذات بعدين مش 3 .. الخطأ #REF! أرجو أن أكون وفقت في توصيل المعلومة
-
حبيب قلبي استاذ ياسر شرحك حقا ابداع يجزيك الله عنا كل خير
-
احبابنا في الله لماذا لم يتم الرد على موضوع الرساله التي طهرت جزاكم الله خيرا
-
يحفظك ربنا لسانك حلو استاذ بكار
-
استدعاء بيانات حفظ الله كل من ساهم فيها ترحيل مفيد باختبار اعمدة معينة 2. rar 76.42 كيلو 600 عدد مرات التحميل Sub Nageh_Raseb() 'يقوم الكود بترحيل الناجحين والراسبين في أوراق العمل المخصصة لذلك '---------------------------------------------------------------- 'تعريف المتغيرات Dim RowNageh As Long, RowRaseb As Long Dim WS As Worksheet, SHNageh As Worksheet, SHRaseb As Worksheet 'تعيين متغيرات أوراق العمل Set WS = Sheets("الشيت"): Set SHNageh = Sheets("كشف ناجح"): Set SHRaseb = Sheets("كشف الدور الثاني") 'مسح محتويات النطاق الذي سيتم الترحيل إليه في ورقة الناجحين SHNageh.Range("C7:M1000").ClearContents 'مسح محتويات النطاق الذي سيتم الترحيل إليه في ورقة الراسبين SHRaseb.Range("C7:M1000").ClearContents 'صف البداية الذي سيتم الترحيل إليه في ورقة الناجحين وورقة الراسبين RowNageh = 7: RowRaseb = 7 'إلغاء خاصية اهتزاز الشاشة Application.ScreenUpdating = False 'حلقة تكرارية في ورقة البيانات الأساسية بداية من الصف رقم 11 حتى آخر صف For R = 11 To WS.Cells(Rows.Count, 1).End(xlUp).Row 'يمثل الرقم 113 رقم العمود الذي به النتيجة في ورقة البيانات الأساسية 'إذا كانت الخلية في الصف المحدد في عمود النتيجة تساوي كلمة ناجح If Cells(R, 113) = "ناجح" Then 'نسخ النطاقات المحددة في الصف المحدد في حالة تحقق الشرط WS.Range("A" & R).Range("B1:C1,Z1,AI1,AR1,BA1,BL1,BM1,CD1,DI1,DJ1").Copy 'لصق البيانات المنسوخة إلى العمود الثالث في ورقة الناجحين SHNageh.Range("C" & RowNageh).PasteSpecial xlPasteValues 'إلغاء خاصية القص والنسخ Application.CutCopyMode = False 'زيادة المتغير بمقدار واحد استعداداً لبيانات جديدة RowNageh = RowNageh + 1 'إذا كانت الخلية في الصف المحدد في عمود النتيجة تساوي كلمة دور ثان في ElseIf Cells(R, 113) = "دور ثان في" Then 'نسخ النطاقات المحددة في الصف المحدد في حالة تحقق الشرط WS.Range("A" & R).Range("B1:C1,Z1,AI1,AR1,BA1,BL1,BM1,CD1,DI1,DJ1").Copy 'لصق البيانات المنسوخة إلى العمود الثالث في ورقة الراسبين SHRaseb.Range("C" & RowRaseb).PasteSpecial xlPasteValues 'إلغاء خاصية القص والنسخ Application.CutCopyMode = False 'زيادة المتغير بمقدار واحد استعداداً لبيانات جديدة RowRaseb = RowRaseb + 1 End If 'الانتقال للصف التالي في ورقة البيانات الأساسية Next 'رسالة تفيد بانتهاء عملية الترحيل MsgBox ("الحمد لله تم ترحيل الناجحين و الراسبين إلى أوراق عمل جديدة"), vbInformation 'إعادة تفعيل خاصية اهتزاز الشاشة Application.ScreenUpdating = True السلام عليكم نعدل الشرط للبحث عن جزء من الكلمة "دور ثان" وسينفذ الكود مهما اضاف قبلها او بعدها (له او لها) ElseIf InStr(1, Cells(R, 113).Value, "دور ثان") Then مكان ElseIf Cells(R, 113) = "دور ثان في" Then حفظ الله كل من ساهم فيها
-
-
يحفظك الله ..يحفظك الله ..يحفظك الله ..يحفظك الله ..يحفظك الله .. حل رائع ... مفيش اي فكره ليأتي بالعدد المطلوب فقط اذا فتحت الصفحات غير صفحة بيانات الطلبه تجدها محدده مظلله ممكن نحدد خليه واحده بعد الاجراء وليكن A6
-
شرح فلتره البيانات للاستاذ الكبير الحسامي لعله يفيد احد الاخوه نظام فلترة البيانات.rar
-
Sub KH_Copy1() On Error Resume Next Dim Last As Long Dim Count As Integer Range("A10:K1000").Clear Count = 1 Count = Range("F2").Value With ActiveSheet Last = .Range("A" & .Rows.Count).End(xlUp).Row .Rows(Last).Copy .Rows(Last + 1).Resize(Count) .Rows(Last + 1).Resize(Count).SpecialCells(xlConstants).ClearContents End With On Error GoTo 0 End Sub هل يمكن ان نجعل هذا الكود يعمل مع عده صفحات بدل اكتيف شيت رحم الله والدينا ووالديكم
-
للرفع رفع الله مقداركم
-
يجزيكم الله عنا كل خير اخي استاذ اسامه .. بارك الله فيك عند وضع عدد الطلاب مثلا 6 والضغط تاتي الصفوف 7 عند تعييرالعدد الى 3 مثلا .. لاتضبط الصفوف تحدث هزات بالشاشه بعد الضغط على الزر
-
يجزيك الله كل خير استاذ عبد الباري انت قمه في العلم والخلق ولذلك ارجو منك ان لاتحرمنا انت واحبابنا المتميزين من مشاركاتكم .. اخي اريد عند ضغطه واحده في ورقة بيانات الطلبه يتم اضافة الصفوف بتنسيقاتها والحفاظ على المعادلات في كل الاوراق المشار اليها
-
اخواني عمالقة المنتدى تحيه مباركه عليكم هذا مرفق به كود مفيد ينسخ الصفوف بتنسيقاتها في ورقة واحده اريد تضبيط الكود او اي كود من طرفكم يؤدي الغرض وهو نسخ الصفوف في الاوراق الموجوده فقط في الملف الآخر لانه يوجد اوراق اخرى ويجزيكم الله عنا خيرا نسخ المعادلات والتنسيقات.rar نسخ صفوف في عده اوراق.rar
-
=IF(D7="";"";ROW()-6) ضعها في خانة المسلسل واسحبها لتحت
-
جزاكم الله خيرا للاستاذ المحترم القومي والاستاذ الفاضل اسامة البراوي والمبدع ياسر خليل الاسماء بترتيب المشاركات
-
التصفية المتقدمة بالأكواد Advanced Filter
قصي replied to ياسر خليل أبو البراء's topic in منتدى الاكسيل Excel
شرح ولاأروع حبيبي استاذ ياسر -
شرح معادله INDIRECT وكذا شرح داله offest للمبدع ياسر خليل شرح المعادله INDIRECT.rar شرح داله اوفيست للاستاذ ياسر خليل.rar
-
الاخوة الكرام نرجو شرح دالة INDEX و MATCH الطريقة الخامسه من طرق الباشمهندس علي السحيب بطريقتكم السهله المميزه جعلها الله في كفة حسناتكم Index Function.rar شهلدة السحيب الجميلة.rar
-
شرح داله اوفيست للمبدع ياسر خليل شرح داله اوفيست للاستاذ ياسر خليل.rar
-
الأستاذ العملاق ياسر خليل انت استاذ بما تحمله الكلمه من معاني ساميه طريقة عرضك للموضوع احترافيه الشرح وافي حتى تنسيق الكتابه من حجم والوان رائعه لاأجد غير جزاك الله كل خير وننتظر منك شروحات اكثر كل يوم جمعه
-
إن شاء المولى حينما يتيسر لي الأمر سأحاول أن أقوم بالشرح اقتباس الله ييسرها عليك ونشوف شرحك قريب جدا جدا
-
الاستاذ خالد شعبان عملك رائع بارك الله قيك لكننا نريد نسخة 2003 مفتوحة محرر اكوادها وليس لها اي باسوردات للتعلم والافاده