تصف هذه المقالة بناء جملة صيغة الدالتين FIND وFINDB وطريقة استخدامهما في Microsoft Excel.
الوصف
تقوم الدالتان FIND وFINDB بتحديد موقع سلسلة نصية واحدة ضمن سلسلة نصية ثانية، ثم إرجاع رقم موضع بدء السلسلة النصية الأولى من خلال الحرف الأول من السلسلة النصية الثانية.
هام:
-
قد لا تتوفر هذه الدالات بكل اللغات.
-
تُستخدم FIND مع اللغات التي تستخدم مجموعة الأحرف أحادية البايت (SBCS)، في حين تُستخدم FINDB مع اللغات التي تستخدم مجموعة الأحرف مزدوجة البايت (DBCS). ويؤثر إعداد اللغة الافتراضية على الكمبيوتر في القيمة المرجعة بالطريقة التالية:
-
تقوم الدالة FIND دائماً بتعداد كل حرف، سواء كان وحيد البايت أم مزدوج البايت، كـ 1، بغض النظر عن إعداد اللغة الافتراضية.
-
تقوم الدالة FINDB بتعداد كل حرف مزدوج البايت كـ 2 عند تمكين تحرير لغة تدعم DBCS ثم تعيينها كاللغة الافتراضية. وإلا، فإن الدالة FINDB تقوم بتعداد كل حرف كـ 1.
تتضمن اللغات التي تٌدعم DBCS اليابانية والصينية (مبسطة) والصينية (تقليدية) والكورية.
بناء الجملة
FIND(find_text, within_text, [start_num])
FINDB(find_text, within_text, [start_num])
يحتوي بناء جملة الدالتين FIND وFINDB على الوسيطات التالية:
-
Find_text مطلوبة. النص الذي تريد البحث عنه.
-
Within_text مطلوبة. النص الذي يحتوي على النص الذي تريد البحث عنه.
-
Start_num اختيارية. تعيّن هذه الوسيطة الحرف الذي تريد بدء البحث منه. الحرف الأول في within_text هو رقم الحرف 1. إذا تم حذف start_num، فسيتم افتراض أنها 1.
ملاحظات
-
تتحسس الدالتان FIND وFINDB حالة الأحرف ولا تسمحان باستخدام أحرف البدل. إذا كنت لا تريد إجراء بحث يتحسس حالة الأحرف أو استخدام أحرف البدل، فاستخدم الدالتين SEARCH وSEARCHB.
-
إذا كانت قيمة find_text "" (نص فارغ)، فتُطابق الدالة FIND الحرف الأول في سلسلة البحث (أي الحرف المرقّم start_num أو 1).
-
لا يمكن لقيمة Find_text أن تحتوي على أي حرف بدل.
-
إذا لم يظهر find_text في within_text، فسترجع الدالة FIND و FINDB #VALUE! وهي قيمة خطأ.
-
إذا لم يكن start_num أكبر من الصفر، فسترجع الدالة FIND و FINDB #VALUE! وهي قيمة خطأ.
-
إذا كان start_num أكبر من طول within_text، فسترجع الدالة FIND و FINDB #VALUE! وهي قيمة خطأ.
-
استخدم start_num لتخطي عدد معين من الأحرف. باستخدام FIND كمثال، لنفترض أنك تعمل ضمن السلسلة النصية "AYF0093.YoungMensApparel". للعثور على رقم أول "Y" في الجزء الوصفي للسلسلة النصية، قم بتعيين start_num بحيث يساوي 8 لكي لا يتم البحث في جزء serial-number للنص. تبدأ FIND عملية البحث مع الحرف 8، وتعثر على find_text عند الحرف التالي، وتُرجع العدد 9. تُرجع الدالة FIND دائماً عدد الأحرف من بداية within_text، وتعدّ الأحرف التي تتخطاها إذا كانت قيمة start_num أكبر من 1.
أمثلة
انسخ البيانات النموذجية في الجدول التالي، والصقها في الخلية A1 في ورقة عمل Excel جديدة. لعرض نتائج الصيغ، حدد هذه الأخيرة، ثم اضغط على F2، ثم اضغط على Enter. إذا أردت ذلك، يمكنك ضبط عرض العمود لرؤية جميع البيانات.
البيانات |
||
---|---|---|
محمد مهدي |
||
الصيغة |
الوصف |
النتيجة |
,A2)"م=FIND(" |
موضع أول حرف "م" في الخلية A2 |
1 |
,A2)"م=FIND(" |
موضع أول "m" في الخلية A2 |
6 |
,A2,3)"م=FIND(" |
موضع أول حرف "م" في الخلية A2، بدءاً من الحرف الثالث |
8 |
المثال 2
البيانات |
||
---|---|---|
عوازل من السيراميك #124-TD45-87 |
||
أسلاك من النحاس #12-671-6772 |
||
مقاومات متغيرة #116010 |
||
الصيغة |
الوصف (النتيجة) |
النتيجة |
=MID(A2,1,FIND(" #",A2,1)-1) |
استخراج النص من الموضع 1 إلى موضع "#" في الخلية A2 (عوازل من السيراميك) |
عوازل من السيراميك |
=MID(A3,1,FIND(" #",A3,1)-1) |
استخراج النص من الموضع 1 إلى موضع "#" في الخلية A3 (أسلاك من النحاس) |
أسلاك من النحاس |
=MID(A4,1,FIND(" #",A4,1)-1) |
استخراج النص من الموضع 1 إلى موضع "#" في الخلية A4 (مقاومات متغيرة) |
مقاومات متغيرة |