Applies ToExcel لـ Microsoft 365 Excel لـ Microsoft 365 لـ Mac Excel على الويب Excel 2024 Excel 2024 Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

تلميح: حاول استخدام الدالة XLOOKUP الجديدة، وهي إصدار محسن من VLOOKUP يعمل في أي اتجاه ويرجع تطابقات دقيقة بشكل افتراضي، مما يسهل الاستخدام ويسهل استخدامه أكثر من سابقته.

استخدم VLOOKUP عندما تريد البحث عن عناصر في جدول أو نطاق بحسب الصف. على سبيل المثال، ابحث عن سعر لقطعة غيار السيارات حسب رقم القطعة، أو ابحث عن اسم موظف استنادا إلى معرف الموظف الخاص به.

تشير الدالة VLOOKUP في أبسط نموذج لها إلى ما يلي:

=VLOOKUP(ما تريد البحث عنه، أين تريد البحث عنه، رقم العمود في النطاق الذي يحتوي على القيمة المراد إرجاعها، إرجاع تطابق – تقريبي أو تام يشار إليه بـ 1/TRUE، أو 0/FALSE).

لا يدعم المستعرض الخاص بك تشغيل الفيديو. ثبّت Microsoft Silverlight أو Adobe Flash Player أو Internet Explorer 9.

تلميحات: 

  • لاستخدام الدالة VLOOKUP بشكل صحيح، يجب عليك تنظيم بياناتك بحيث تكون القيمة التي تبحث عنها (فاكهة) إلى يمين القيمة المرجعة (مقدار) التي تريد العثور عليها.

  • إذا كنت مشتركا في MicrosoftCopilot ، يمكن أن يسهل Copilot إدراج الدالات VLookup أو XLookup واستخدامها. راجع Copilot يجعل عمليات البحث في Excel سهلة.​​​​​​​​​​​​​​

استخدام الدالة VLOOKUP للبحث عن قيمة في جدول.

بناء الجملة 

VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])

على سبيل المثال:

  • =VLOOKUP(A2,A10:C20,2,TRUE)

  • FALSE),2,B2:E7,"أبو عبيدة"‎=IF(VLOOKUP

  • =VLOOKUP(A2,"تفاصيل العميل"!A:F,3,FALSE)

اسم الوسيطة

الوصف

lookup_value    (وسيطة مطلوبة)

القيمة التي تريد البحث عنها. يجب أن تكون القيمة التي تريد البحث عنها موجودة في العمود الأول التابع لنطاق الخلايا المحدد في وسيطة table-array.

على سبيل المثال، إذا امتدت الوسيطة table-array عبر الخلايا B2:D7، فيجب عندئذٍ أن تكون الوسيطة lookup_value في العمود B.

بإمكان Lookup_value أن تكون عبارة عن قيمة أو مرجع إلى خلية.

Table_array    (مطلوبة)

نطاق الخلايا الذي ستبحث فيه الدالة VLOOKUP عن lookup_value والقيمة التي يتم إرجاعها. يمكنك استخدام نطاق أو جدول مسمى، ويمكنك استخدام الأسماء في الوسيطة بدلا من مراجع الخلايا. 

يجب أن يحتوي العمود الأول في نطاق الخلايا على lookup_value. ويجب أن يتضمّن نطاق الخلايا أيضاً القيمة المرتجعة التي تريد العثور عليها.

تعرّف على كيفية تحديد النطاقات في ورقة عمل.

col_index_num    (وسيطة مطلوبة)

رقم العمود (بدءاً من 1 للعمود الموجود إلى أقصى يمين table-array) الذي يحتوي على القيمة المرتجعة.

range_lookup   (اختياري)

القيمة المنطقية التي تحدد إذا كنت تريد من الدالة VLOOKUP البحث عن تطابق تقريبي أو تطابق تام:

  • التطابق التقريبي - 1/TRUE يفترض أن العمود الأول في الجدول تم فرزه إما رقميا أو أبجديا، ثم سيبحث عن أقرب قيمة. هذه هي الطريقة الافتراضية إذا لم تحدد أنت أي طريقة. على سبيل المثال، =VLOOKUP(90,A1:B100,2,TRUE).

  • مطابقة تامة - 0/FALSE يبحث عن القيمة الدقيقة في العمود الأول. على سبيل المثال، =VLOOKUP("Smith",A1:B100,2,FALSE).

كيفية البدء

ستحتاج إلى أربع معلومات حتى يمكنك إنشاء بناء جملة الدالة VLOOKUP:

  1. القيمة التي تريد البحث عنها، والتي تسمى أيضاً قيمة البحث.

  2. النطاق الذي تقع فيه قيمة البحث. تذكّر أنه يجب أن تكون قيمة البحث دائماً في العمود الأول في نطاق الدالة VLOOKUP لكي تعمل بشكل صحيح. على سبيل المثال، إذا كانت قيمة البحث في الخلية C2 فيجب أن يبدأ النطاق بـ C.

  3. رقم العمود في النطاق الذي يحتوي على القيمة المرجعة. على سبيل المثال، إذا قمت بتحديد B2: D11 كنطاق، فيجب أن يعد B العمود الأول وC العمود الثاني وهكذا.

  4. بشكل اختياري، يمكنك تحديد TRUE إذا كنت تريد تطابقاً تقريبياً أو FALSE إذا كنت تريد تطابقاً تاماً للقيمة المرجعة. إذا لم تحدد أي شيء، فستكون القيمة الافتراضية دائماً TRUE أو مطابقة تقريبية.

الآن ضع كل ما ورد أعلاه معاً كما يلي:

=VLOOKUP(قيمة البحث، النطاق الذي يحتوي على قيمة البحث، رقم العمود في النطاق الذي يحتوي على القيمة المرجعة، التطابق التقريبي (TRUE) أو التطابق التام (FALSE)).

أمثلة

فيما يلي بعض الأمثلة على الدالة VLOOKUP:

مثال 1

=VLOOKUP (B3,B2:E7,2,FALSE)

تبحث دالة VLOOKUP عن "عبادي" في أول عمود (العمود B) في صفيف الجدول B2:E7 وترجع "عبد القهار" من العمود الثاني (عمود C) لصفيف الجدول.  ترجع القيمة "False" تطابقاً تاماً.

المثال 2

=VLOOKUP (102,A2:C7,2,FALSE)

تبحث دالة VLOOKUP عن تطابق تام (FALSE) لاسم العائلة لمعرف 102 (قيمة البحث) في العمود الثاني (العمود B) في نطاق A2:C7 وترجع "عبادي".

المثال 3

=IF(VLOOKUP(103,A1:E7,2,FALSE)="قريشي","محدد","لم يتم العثور عليه")

تتحقق دالة IF مما إذا كانت دالة VLOOKUP ترجع "قريشي" كاسم عائلة الموظف المقابل لمعرف 103 (قيمة البحث) في A1:E7 (صفيف الجدول). لأن اسم العائلة المقابل لمعرف 103 هو "خوري"، فإن قيمة شرط IF تكون "false" ويتم عرض "لم يتم العثور عليه".

المثال 4

=INT(YEARFRAC(DATE(2014,6,30),VLOOKUP(105,A2:E7,5,FLASE),1))



تبحث دالة VLOOKUP عن تاريخ ميلاد الموظف المقابل لمعرف 109 (قيمة البحث) في نطاق A2:E7 (صفيف الجدول) وترجع "1955/03/04". ثم تطرح دالة YEARFRAC تاريخ الميلاد هذا من "2014/6/30" وترجع قيمة يتم تحويلها بعد ذلك بواسطة INY إلى العدد الصحيح "59".

المثال 5

IF(ISNA(VLOOKUP(105,A2:E7,2,FLASE))=TRUE,"لم يتم العثور على الموظف",VLOOKUP(105,A2:E7,2,FALSE))



تتحقق دالة IF مما إذا قامت دالة VLOOKUP بإرجاع قيمة اسم العائلة من العمود B للمعرف 105 (قيمة البحث). إذا عثرت دالة VLOOKUP على اسم عائلة، فستعرض دالة IF اسم العائلة. بخلاف ذلك، ستعرض قيمة IF "لم يتم العثور على الموظف". تتأكد دالة ISNA من استبدال "لم يتم العثور على الموظف" بالخطأ، إذا قامت دالة VLOOKUP بإرجاع #غير مطبق.



في هذا المثال، القيمة المُرجعة هي "غانم" وهي اسم العائلة المقابل لمعرف 105.

المشكلة

الخطأ الذي حدث

تم إرجاع قيمة غير صحيحة

إذا كانت قيمة الوسيطة range_lookup تساوي TRUE أو إذا لم يتم تضمينها، فيجب فرز العمود الأول أبجدياً أو رقمياً. إذا لم يتم فرز العمود الأول، فقد تكون القيمة المرتجعة عبارة عن شيء لم تكن تتوقعه. يتعينّ عليك فرز العمود الأول أو استخدام FALSE للحصول على تطابق تام.

ظهور ‎#N/A في الخلية

  • إذا كانت قيمة الوسيطة range_lookup هي TRUE، وكانت القيمة في lookup_value أصغر من القيمة الأصغر في العمود الأول التابع لـ table_array، فستحصل عندئذٍ على قيمة الخطأ ‎#N/A.

  • إذا كانت قيمة الوسيطة range_lookup هي FALSE، فتشير قيمة الخطأ ‎#N/A إلى أنه لم يتم العثور على الرقم الصحيح.

للحصول على مزيد من المعلومات حول حل أخطاء #N/A في الدالة VLOOKUP، راجع كيفية تصحيح خطأ #N/A في الدالة VLOOKUP‏.

يحدث الخطأ ‎#REF!‎ في الخلية

إذا كانت قيمة col_index_num أكبر من عدد الأعمدة في table-array، فستحصل على قيمة الخطأ‎#REF! ‎.

للحصول على مزيد من المعلومات حول حل أخطاء ‎#REF!‎ أخطاء في الدالة VLOOKUP، اطلع على كيفية تصحيح الخطأ ‎#REF!‎.

الخطأ ‎#VALUE!‎ في الخلية

إذا كانت قيمة table_array أقل من 1، فستحصل على الخطأ ‎#VALUE!‎. قيمة الخطأ.

للحصول على مزيد من المعلومات حول حل أخطاء #VALUE! في الدالة VLOOKUP، راجع كيفية تصحيح خطأ #VALUE! في الدالة VLOOKUP‏.

#NAME؟ في الخلية

‎#NAME?‎ تعني قيمة الخطأ عادةً أن الصيغة تفتقد إلى علامات اقتباس. للبحث عن اسم أحد الأشخاص، تأكد من استخدام علامات اقتباس حول الاسم في الصيغة. على سبيل المثال، أدخل الاسم "عبادي" في =VLOOKUP("عبادي",B2:E7,2,FALSE).

للحصول على مزيد من المعلومات، اطلع على كيفية تصحيح الخطأ ‎#NAME!‎..

أخطاء #SPILL! في الخلية

الخطأ #SPILL ! المحدّد هذا عادة ما يعني ذلك أن الصيغة تعتمد على تقاطع ضمني لقيمة البحث، وتستخدم عمودا بأكمله كمرجع. على سبيل المثال، =VLOOKUP(A:A,A:C,2,FALSE). يمكنك حل المشكلة عن طريق إرساء مرجع البحث مع عامل التشغيل @ مثل: =VLOOKUP(@A:A,A:C,2,FALSE). بدلا من ذلك، يمكنك استخدام أسلوب VLOOKUP التقليدي والإشارة إلى خلية واحدة بدلا من عمود بأكمله: =VLOOKUP(A2,A:C,2,FALSE).

قم بما يلي

لماذا

استخدم المراجع المطلقة للوسيطة range_lookup

يسمح لك استخدام المراجع المطلقة بتعبئة الصيغة بحيث تبحث دائماً في نطاق البحث نفسه.

تعرّف على كيفية استخدام مراجع الخلايا المطلقة.

لا تخزّن القيم الرقمية أو قيم التاريخ كقيم نصية.

عند البحث عن قيم رقمية أو قيم تاريخ، تأكد من عدم تخزين البيانات الموجودة في العمود الأول للوسيطة table_array كقيم نصية. وفي هذه الحالة، قد تُرجع VLOOKUP قيمة غير صحيحة أو غير متوقعة.

افرز العمود الأول

قم بفرز العمود الأول التابع للوسيطة table_array قبل استخدام الدالة VLOOKUP عندما تكون TRUE قيمة الوسيطة range_lookup.

استخدم أحرف البدل

إذا كان range_lookup تساوي FALSE وlookup_value عبارة عن نص، يمكنك استخدام أحرف البدل، مثل علامة الاستفهام(؟) والعلامة النجمية (*)، في lookup_value. تطابق علامة الاستفهام أي حرف واحد. أما علامة النجمة، فتطابق أي تسلسل من الأحرف. وإذا أردت البحث عن علامة استفهام أو علامة نجمة فعلية، فاكتب علامة التلدة (~) قبل الحرف.

على سبيل المثال، سيبحث =VLOOKUP("Fontan?",B2:E7,2,FALSE) عن كل مثيلات Fontana مع الحرف الأخير الذي قد يختلف.

تأكد من عدم احتواء البيانات على أحرف خاطئة.

عند البحث عن قيم نصية في العمود الأول، تأكد من عدم احتواء البيانات في العمود الأول على مسافات بادئة أو مسافات زائدة، أو من استخدام علامات الاقتباس المستقيمة ( ' أو " ) وعلامات الاقتباس المتعرجة ( ‘ أو “) بطريقة غير متناسقة، أو من استخدام أحرف غير قابلة للطباعة. في هذه الحالات، قد تُرجع VLOOKUP قيمة غير متوقعة.

للحصول على نتائج دقيقة، حاول استخدام الدالة CLEAN أو الدالة TRIM لإزالة المسافات الزائدة بعد قيم الجدول في الخلية.

هل تحتاج إلى مزيد من المساعدة؟

يمكنك دائماً الاستفسار من أحد الخبراء في مجتمع Excel التقني أو الحصول على الدعم في المجتمعات.

راجع أيضًا

الدالة XLOOKUP

فيديو: متى وكيف تستخدم VLOOKUP

بطاقة مرجعية سريعة: أداة تحديث الدالة VLOOKUP

كيفية تصحيح الخطأ #N/A في الدالة VLOOKUP

البحث عن القيم باستخدام VLOOKUP أو INDEX أو MATCH

الدالة HLOOKUP

هل تحتاج إلى مزيد من المساعدة؟

الخروج من الخيارات إضافية؟

استكشف مزايا الاشتراك، واستعرض الدورات التدريبية، وتعرف على كيفية تأمين جهازك، والمزيد.

تساعدك المجتمعات على طرح الأسئلة والإجابة عليها، وتقديم الملاحظات، وسماعها من الخبراء ذوي الاطلاع الواسع.