وظيفة Excel INDIRECT - الاستخدامات الأساسية وأمثلة الصيغ

  • شارك هذا
Michael Brown

يشرح هذا البرنامج التعليمي Excel INDIRECT بناء جملة الوظيفة والاستخدامات الأساسية ويوفر عددًا من أمثلة الصيغ التي توضح كيفية استخدام INDIRECT في Excel.

يوجد الكثير من الوظائف في Microsoft Excel ، بعضها سهل الفهم ، والبعض الآخر يتطلب منحنى تعليمي طويل ، والأول يستخدم في كثير من الأحيان أكثر من الأخير. ومع ذلك ، يعد برنامج Excel INDIRECT فريدًا من نوعه. لا تقوم وظيفة Excel هذه بإجراء أي حسابات ، كما أنها لا تقيم أي شروط أو اختبارات منطقية.

حسنًا ، ما هي الوظيفة غير المباشرة في Excel ولماذا أستخدمها؟ هذا سؤال جيد للغاية ونأمل أن تحصل على إجابة شاملة في غضون بضع دقائق عندما تنتهي من قراءة هذا البرنامج التعليمي.

    وظيفة Excel INDIRECT - بناء الجملة والاستخدامات الأساسية

    كما يوحي اسمه ، يتم استخدام Excel INDIRECT للإشارة بشكل غير مباشر إلى الخلايا أو النطاقات أو الأوراق أو المصنفات الأخرى. بمعنى آخر ، تتيح لك الوظيفة INDIRECT إنشاء خلية ديناميكية أو مرجع نطاق بدلاً من ترميزها. نتيجة لذلك ، يمكنك تغيير مرجع داخل صيغة بدون تغيير الصيغة نفسها. علاوة على ذلك ، لن تتغير هذه المراجع غير المباشرة عند إدراج بعض الصفوف أو الأعمدة الجديدة في ورقة العمل أو عند حذف أي منها موجودة.

    قد يكون كل هذا أسهل للفهم من أحد الأمثلة. ومع ذلك ، لتتمكن من كتابة معادلة ، حتى أبسطها ، عليك معرفةتلقائيا. الحل هو استخدام الدالة INDIRECT ، مثل هذا:

    =SUM(INDIRECT("A2:A5"))

    نظرًا لأن Excel يدرك أن "A1: A5" مجرد سلسلة نصية بدلاً من مرجع نطاق ، فلن يقوم بعمل أي التغييرات عند إدراج أو حذف صف (صفوف).

    استخدام INDIRECT مع وظائف Excel الأخرى

    بصرف النظر عن SUM ، يتم استخدام INDIRECT بشكل متكرر مع وظائف Excel الأخرى مثل ROW و COLUMN و ADDRESS و VLOOKUP ، SUMIF ، على سبيل المثال لا الحصر.

    مثال 1. الدالتان غير المباشرة والصفوف

    في كثير من الأحيان ، يتم استخدام الدالة ROW في Excel لإرجاع مجموعة من القيم. على سبيل المثال ، يمكنك استخدام صيغة الصفيف التالية (تذكر أنها تتطلب الضغط على Ctrl + Shift + Enter) لإرجاع متوسط ​​أصغر 3 أرقام في النطاق A1: A10:

    =AVERAGE(SMALL(A1:A10,ROW(1:3)))

    ومع ذلك ، إذا قمت بإدراج صف جديد في ورقة العمل الخاصة بك ، في أي مكان بين الصفين 1 و 3 ، فسيتم تغيير النطاق في الدالة ROW إلى ROW (1: 4) وستُرجع الصيغة متوسط ​​الأرقام الأربعة الأصغر بدلاً من 3 .

    لمنع حدوث ذلك ، قم بتداخل INDIRECT في دالة ROW وستظل صيغة الصفيف دائمًا صحيحة ، بغض النظر عن عدد الصفوف التي تم إدراجها أو حذفها:

    =AVERAGE(SMALL(A1:A10,ROW(INDIRECT("1:3"))))

    فيما يلي بعض الأمثلة الأخرى على استخدام INDIRECT و ROW بالتزامن مع الدالة LARGE: كيفية جمع أكبر عدد N في النطاق.

    مثال 2. الدالتان INDIRECT و ADDRESS

    يمكنك استخدام Excel INDIRECT مع وظيفة ADDRESS للحصول علىقيمة في خلية معينة أثناء التنقل.

    كما قد تتذكر ، يتم استخدام وظيفة ADDRESS في Excel للحصول على عنوان خلية من خلال أرقام الصفوف والأعمدة. على سبيل المثال ، تُرجع الصيغة =ADDRESS(1,3) السلسلة $ C $ 1 لأن C1 هي الخلية عند تقاطع الصف الأول والعمود الثالث.

    لإنشاء مرجع خلية غير مباشر ، يمكنك ببساطة تضمين الدالة ADDRESS في غير مباشر صيغة مثل هذه:

    =INDIRECT(ADDRESS(1,3))

    بالطبع ، هذه الصيغة البسيطة توضح الأسلوب فقط. وإليك بعض الأمثلة التي قد تكون مفيدة حقًا:

    • صيغة العنوان غير المباشر - كيفية تبديل الصفوف والأعمدة.
    • VLOOKUP و INDIRECT - كيفية سحب البيانات ديناميكيًا من الأوراق المختلفة .
    • غير مباشر مع INDEX / MATCH - كيفية إحضار صيغة VLOOKUP الحساسة لحالة الأحرف إلى الكمال.
    • Excel INDIRECT و COUNTIF - كيفية استخدام وظيفة COUNTIF في نطاق غير متجاور أو تحديد الخلايا.

    استخدام INDIRECT مع التحقق من صحة البيانات في Excel

    يمكنك استخدام وظيفة Excel INDIRECT مع التحقق من صحة البيانات لإنشاء قوائم منسدلة متتالية تعرض خيارات مختلفة بناءً على القيمة المستخدم المحدد في القائمة المنسدلة الأولى.

    من السهل حقًا إنشاء قائمة منسدلة تابعة بسيطة. كل ما يتطلبه الأمر هو عدد قليل من النطاقات المسماة لتخزين عناصر القائمة المنسدلة وصيغة بسيطة =INDIRECT(A2) حيث A2 هي الخلية التي تعرض القائمة المنسدلة الأولى.

    لجعل الأمر أكثر تعقيدًاقوائم من 3 مستويات أو قوائم منسدلة مع إدخالات متعددة الكلمات ، ستحتاج إلى صيغة غير مباشرة أكثر تعقيدًا مع وظيفة SUBSTITUTE متداخلة.

    للحصول على إرشادات مفصلة خطوة بخطوة حول كيفية استخدام INDIRECT مع التحقق من صحة بيانات Excel ، يرجى مراجعة هذا البرنامج التعليمي: كيفية إنشاء قائمة منسدلة تابعة في Excel.

    وظيفة Excel INDIRECT - الأخطاء والمشكلات المحتملة

    كما هو موضح في الأمثلة أعلاه ، غير المباشر الوظيفة مفيدة جدًا عند التعامل مع مراجع الخلايا والنطاق. ومع ذلك ، لا يحتضنها جميع مستخدمي Excel بشغف في الغالب لأن الاستخدام المكثف لـ INDIRECT في صيغ Excel يؤدي إلى نقص الشفافية. يصعب مراجعة الدالة غير المباشرة نظرًا لأن الخلية التي تشير إليها ليست الموقع النهائي للقيمة المستخدمة في الصيغة ، وهو أمر محير حقًا ، خاصة عند العمل مع الصيغ المعقدة الكبيرة.

    بالإضافة إلى أعلاه ، مثل أي وظيفة Excel أخرى ، قد يؤدي INDIRECT إلى حدوث خطأ إذا أساءت استخدام وسيطات الوظيفة. فيما يلي قائمة بأكثر الأخطاء شيوعًا:

    Excel INDIRECT #REF! خطأ

    في أغلب الأحيان ، ترجع الدالة INDIRECT الخطأ #REF! خطأ في ثلاث حالات:

    1. ref_text ليس مرجع خلية صالحًا . إذا لم تكن المعلمة ref_text في الصيغة غير المباشرة مرجع خلية صالحًا ، فستنتج الصيغة #REF! قيمة الخطأ. لتجنب المشاكل المحتملة ، يرجى التحقق من الوظيفة غير المباشرةالوسائط.
    2. تم تجاوز حد النطاق . إذا كانت الوسيطة ref_text الخاصة بالصيغة غير المباشرة تشير إلى نطاق من الخلايا يتجاوز حد الصف 1048576 أو حد العمود 16384 ، فستحصل أيضًا على الخطأ #REF في Excel 2007 و 2010 و Excel 2013. تتجاهل إصدارات Excel السابقة ما تم تجاوزه حدد وقم بإرجاع بعض القيمة ، على الرغم من أنها غالبًا ليست القيمة التي تتوقعها.
    3. تم إغلاق الورقة أو المصنف المشار إليه. إذا كانت الصيغة غير المباشرة تشير إلى مصنف أو ورقة عمل Excel أخرى ، فهذا يجب أن يكون المصنف / جدول البيانات الآخر مفتوحًا ، وإلا فستُرجع الدالة INDIRECT الخطأ #REF! خطأ.

    Excel INDIRECT #NAME؟ خطأ

    هذه هي الحالة الأكثر وضوحًا ، مما يشير إلى وجود خطأ ما في اسم الوظيفة ، مما يقودنا إلى النقطة التالية:)

    استخدام الوظيفة غير المباشرة في لغات غير الإنجليزية

    قد تكون مهتمًا بمعرفة أن الاسم الإنجليزي للوظيفة غير المباشرة قد تمت ترجمته إلى 14 لغة ، بما في ذلك:

    • الدنماركية - INDIREKTE
    • الفنلندية - EPÄSUORA
    • الألمانية - INDIREKT
    • المجرية - INDIREKT
    • الإيطالية - INDIRETTO
    • النرويجية - INDIREKTE
    • البولندية - ADR.POŚR
    • الإسبانية - INDIRECTO
    • السويدية - INDIREKT
    • التركية - DOLAYLI

    إذا كنت مهتمًا بالحصول على القائمة الكاملة ، فالرجاء مراجعة هذه الصفحة.

    هناك مشكلة شائعة في الترجمة غير الإنجليزية هيليس اسم الوظيفة غير المباشرة ، بل مختلف الإعدادات الإقليمية لـ فاصل القائمة . في تكوين Windows القياسي لأمريكا الشمالية وبعض البلدان الأخرى ، يكون الفاصل الافتراضي List Separator عبارة عن فاصلة. أثناء التواجد في البلدان الأوروبية ، يتم حجز الفاصلة على أنها الرمز العشري ويتم تعيين فاصل القائمة على فاصلة منقوطة.

    نتيجة لذلك ، عند نسخ صيغة بين اثنين لغات Excel المختلفة ، قد تحصل على رسالة الخطأ " وجدنا مشكلة في هذه الصيغة ... " لأن فاصل القائمة المستخدم في الصيغة مختلف عما تم تعيينه على جهازك. إذا واجهت هذا الخطأ عند نسخ بعض المعادلات غير المباشرة من هذا البرنامج التعليمي إلى Excel ، فما عليك سوى استبدال جميع الفواصل (،) بالفواصل المنقوطة (؛) لإصلاحها.

    للتحقق من فاصل القائمة والرمز العشري. على جهازك ، افتح لوحة التحكم ، وانتقل إلى المنطقة واللغة & GT ؛ إعدادات إضافية .

    نأمل أن يلقي هذا البرنامج التعليمي بعض الضوء على استخدام INDIRECT في Excel. الآن بعد أن عرفت نقاط قوتها وقيودها ، حان الوقت لتجربتها ومعرفة كيف يمكن للوظيفة غير المباشرة تبسيط مهام Excel الخاصة بك. شكرا على القراءة!

    حجج الوظيفة ، أليس كذلك؟ لذلك ، دعونا نلقي نظرة سريعة على بناء جملة Excel INDIRECT أولاً.

    بناء جملة الدالة غير المباشرة

    ترجع الدالة INDIRECT في Excel مرجع خلية من سلسلة نصية. يحتوي على وسيطتين ، الأولى مطلوبة والثانية اختيارية:

    INDIRECT (ref_text، [a1])

    ref_text - مرجع خلية أو مرجع لخلية في شكل سلسلة نصية ، أو نطاق مسمى.

    a1 - هي قيمة منطقية تحدد نوع المرجع الموجود في الوسيطة ref_text:

    • إذا كانت TRUE أو تم حذفها ، فسيتم تفسير ref_text كمرجع خلية بنمط A1.
    • إذا كانت FALSE ، فسيتم التعامل مع ref_text كمرجع R1C1.

    بينما قد يكون نوع المرجع R1C1 مفيد في مواقف معينة ، فربما تريد استخدام مراجع A1 المألوفة في معظم الأوقات. على أي حال ، ستستخدم جميع الصيغ غير المباشرة تقريبًا في هذا البرنامج التعليمي مراجع A1 ، لذلك سنحذف الوسيطة الثانية.

    الاستخدام الأساسي للدالة غير المباشرة

    للوصول إلى رؤية الوظيفة ، دعنا نكتب صيغة بسيطة توضح كيفية استخدام INDIRECT في Excel.

    افترض أن لديك الرقم 3 في الخلية A1 والنص A1 في الخلية C1. الآن ، ضع الصيغة =INDIRECT(C1) في أي خلية أخرى وشاهد ما يحدث:

    • تشير الوظيفة غير المباشرة إلى القيمة الموجودة في الخلية C1 ، وهي A1.
    • يتم توجيه الوظيفة إلى الخلية A1 حيث تختار القيمة المراد إرجاعها ،وهو رقم 3.

    إذن ، ما تفعله الوظيفة غير المباشرة بالفعل في هذا المثال هو تحويل سلسلة نصية إلى مرجع خلية .

    إذا كنت تعتقد أن هذا لا يزال لديه القليل من المعنى العملي ، فالرجاء تحمل معي وسأعرض لك بعض الصيغ الأخرى التي تكشف عن القوة الحقيقية لوظيفة Excel INDIRECT.

    كيفية استخدام غير مباشر في Excel - أمثلة الصيغة

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

    عند العمل مع البيانات الحقيقية ، يمكن للدالة غير المباشرة تحويل أي سلسلة نصية إلى مرجع بما في ذلك السلاسل المعقدة للغاية التي تقوم بإنشائها باستخدام قيم الخلايا والنتائج الأخرى التي تم إرجاعها بواسطة صيغ Excel الأخرى. لكن دعونا لا نضع العربة أمام الحصان ، ونجري عدة صيغ Excel غير مباشرة ، واحدة تلو الأخرى.

    إنشاء مراجع غير مباشرة من قيم الخلية

    كما تتذكر ، تسمح وظيفة Excel INDIRECT للأنماط المرجعية A1 و R1C1. عادة ، لا يمكنك استخدام كلا الأنماط في ورقة واحدة في وقت واحد ، يمكنك فقط التبديل بين نوعي المراجع عبر File & gt؛ خيارات & GT. الصيغ خانة الاختيار R1C1 . هذا هو السبب الذي يجعل مستخدمي Excel نادراً ما يفكرون في استخدام R1C1كنهج مرجعي بديل.

    في صيغة غير مباشرة ، يمكنك استخدام أي نوع مرجعي في نفس الورقة إذا كنت تريد ذلك. قبل أن ننتقل إلى أبعد من ذلك ، قد ترغب في معرفة الفرق بين الأنماط المرجعية A1 و R1C1.

    نمط A1 هو نوع المرجع المعتاد في Excel الذي يشير إلى عمود متبوعًا بصف رقم. على سبيل المثال ، يشير B2 إلى الخلية عند تقاطع العمود B والصف 2.

    نمط R1C1 هو نوع المرجع المعاكس - صفوف متبوعة بأعمدة ، الأمر الذي يستغرق بعض الوقت في التعود إلى:) على سبيل المثال ، يشير R4C1 إلى الخلية A4 الموجودة في الصف 4 ، العمود 1 في الورقة. إذا لم يظهر أي رقم بعد الحرف ، فأنت تشير إلى نفس الصف أو العمود.

    والآن ، دعنا نرى كيف تتعامل الدالة INDIRECT مع المراجع A1 و R1C1:

    كما ترى في لقطة الشاشة أعلاه ، تعرض ثلاث صيغ مختلفة غير مباشرة نفس النتيجة. هل اكتشفت السبب بالفعل؟ أراهن أن لديك:)

    • الصيغة في الخلية D1: =INDIRECT(C1)

    هذه هي الأسهل. تشير الصيغة إلى الخلية C1 ، وتجلب قيمتها - سلسلة نصية A2 ، وتحولها إلى مرجع خلية ، وتتجه إلى الخلية A2 وتُرجع قيمتها ، وهي 222.

    • الصيغة في الخلية D3: =INDIRECT(C3,FALSE)

    FALSE في الوسيطة الثانية تشير إلى أنه يجب معاملة القيمة المشار إليها (C3) كمرجع خلية R1C1 ، أي رقم صف متبوعًا برقم عمود. وبالتالي،تفسر الصيغة غير المباشرة القيمة الموجودة في الخلية C3 (R2C1) كمرجع للخلية عند اقتران الصف 2 والعمود 1 ، وهي الخلية A2.

    إنشاء مراجع غير مباشرة من قيم الخلية والنص

    على غرار الطريقة التي أنشأنا بها مراجع من قيم الخلية ، يمكنك دمج سلسلة نصية ومرجع خلية في صيغة INDIRECT الخاصة بك ، مرتبطة مع عامل التشغيل التسلسلي (& amp؛) .

    في المثال التالي ، الصيغة: = INDIRECT ("B" & amp؛ C2) تُرجع قيمة من الخلية B2 بناءً على السلسلة المنطقية التالية:

    تقوم الدالة INDIRECT بربط العناصر في الوسيطة ref_text - النص B والقيمة في الخلية C2 - & GT ؛ القيمة في الخلية C2 هي الرقم 2 ، مما يشير إلى الخلية B2 - & GT ؛ تنتقل الصيغة إلى الخلية B2 وتُرجع قيمتها ، وهي رقم 10.

    باستخدام الدالة INDIRECT مع النطاقات المسماة

    بصرف النظر عن إنشاء مراجع من قيم الخلية والنص ، يمكنك الحصول على Excel الدالة INDIRECT للإشارة إلى النطاقات المسماة .

    لنفترض أن لديك النطاقات المسماة التالية في الورقة:

    • التفاح - B2: B6
    • Bananas - C2: C6
    • Lemons - D2: D6

    لإنشاء مرجع ديناميكي لبرنامج Excel لأي من النطاقات المسماة أعلاه ، فقط أدخل اسمه في بعض الخلايا ، قل G1 ، والإشارة إلى تلك الخلية من الصيغة غير المباشرة =INDIRECT(G1) .

    والآن ، يمكنك اتخاذ خطوة إلى الأمام وإدخال هذه الصيغة غير المباشرةفي دالات Excel الأخرى لحساب مجموع ومتوسط ​​القيم في نطاق مسمى معين ، أو العثور على الحد الأقصى / الحد الأدنى للقيمة ضمن rage:

    • =SUM(INDIRECT(G1))
    • =AVERAGE(INDIRECT(G1))
    • =MAX(INDIRECT(G1))
    • =MIN(INDIRECT(G1))

    الآن بعد أن أصبحت لديك فكرة عامة عن كيفية استخدام وظيفة INDIRECT في Excel ، يمكننا تجربة صيغ أكثر قوة.

    صيغة غير مباشرة للإشارة ديناميكيًا إلى ورقة عمل أخرى

    لا تقتصر فائدة وظيفة Excel INDIRECT على إنشاء مراجع خلايا "ديناميكية". يمكنك أيضًا استخدامه للإشارة إلى الخلايا في أوراق العمل الأخرى "أثناء التنقل" ، وإليك الطريقة.

    لنفترض أن لديك بعض البيانات المهمة في الورقة 1 ، وتريد سحب تلك البيانات في الورقة 2. توضح لقطة الشاشة التالية كيف يمكن لصيغة Excel غير المباشرة التعامل مع هذه المهمة:

    دعونا نفصل الصيغة التي تراها في لقطة الشاشة ونفهمها.

    كما تعلم ، الطريقة المعتادة للإشارة إلى ورقة أخرى في Excel ، يكتب اسم الورقة متبوعًا بعلامة التعجب ومرجع الخلية / النطاق ، مثل اسم الورقة! النطاق . نظرًا لأن اسم الورقة يحتوي غالبًا على مسافة (مسافات) ، فمن الأفضل إرفاقه (الاسم ، وليس مسافة:) في علامات اقتباس مفردة لمنع حدوث خطأ ، على سبيل المثال 'My Sheet!' $ A $ 1 .

    والآن ، كل ما عليك فعله هو إدخال اسم الورقة في خلية واحدة ، وعنوان الخلية في خلية أخرى ، وربطها بسلسلة نصية ، وإدخال هذه السلسلة إلىدالة غير مباشرة. تذكر أنه في سلسلة نصية ، يجب عليك تضمين كل عنصر بخلاف عنوان الخلية أو الرقم في علامتي اقتباس مزدوجتين وربط جميع العناصر معًا باستخدام عامل التشغيل التسلسلي (& amp ؛).

    بالنظر إلى ما سبق ، نحصل على النمط التالي:

    INDIRECT ("" "& amp؛ اسم الورقة & amp؛" '! "& amp؛ خلية لسحب البيانات من )

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

    INDIRECT("'" & $A$1 & "'!" & B1)

    أيضًا ، يرجى الانتباه إلى أنه إذا كنت تنسخ الصيغة في خلايا متعددة ، فيجب عليك قفل المرجع إلى اسم الورقة باستخدام مراجع الخلية المطلقة مثل $ A $ 1.

    ملاحظات

    • إذا كانت أي من الخلايا التي تحتوي على اسم الورقة الثانية وعنوان الخلية (A1 و B1 في الصيغة أعلاه) فارغة ، فإن الصيغة غير المباشرة الخاصة بك سترجع خطأ. لمنع هذا ، يمكنك التفاف الدالة غير المباشرة في الدالة IF:

      IF(OR($A$1="",B1=""), "", INDIRECT("'" & $A$1 & "'!" & B1))

    • لكي تعمل الصيغة غير المباشرة التي تشير إلى ورقة أخرى للعمل بشكل صحيح ، يجب فتح الورقة المشار إليها ، وإلا سترجع الصيغة الخطأ #REF. لتجنب الخطأ ، يمكنك استخدام الدالة IFERROR ، التي ستعرض سلسلة فارغة ، مهما حدث خطأ:

      IFERROR(INDIRECT("'" & $A$1 & "'!" &B1), "")

    إنشاء مرجع Excel ديناميكي لمصنف آخر

    الصيغة غير المباشرة التي تشيرإلى مصنف Excel مختلف يستند إلى نفس الأسلوب كمرجع إلى جدول بيانات آخر. عليك فقط تحديد اسم المصنف بالإضافة إلى اسم الورقة وعنوان الخلية.

    لتسهيل الأمور ، لنبدأ بالإشارة إلى كتاب آخر بالطريقة المعتادة (تتم إضافة الفواصل العليا في حالة كتابك و / أو أسماء الأوراق تحتوي على مسافات):

    '[Book_name.xlsx] Sheet_name'! Range

    بافتراض أن اسم الكتاب موجود في الخلية A2 ، فإن اسم الورقة موجود في B2 ، و عنوان الخلية موجود في C2 ، نحصل على الصيغة التالية:

    =INDIRECT("'[" & $A$2 & "]" & $B$2 & "'!" & C2)

    نظرًا لأنك لا تريد تغيير الخلايا التي تحتوي على أسماء الكتاب والورقة عند نسخ الصيغة إلى خلايا أخرى ، قفلهما باستخدام مراجع الخلية المطلقة ، $ A $ 2 و $ B $ 2 ، على التوالي.

    والآن ، يمكنك بسهولة كتابة المرجع الديناميكي الخاص بك إلى مصنف Excel آخر باستخدام النمط التالي:

    = INDIRECT ("'[" & amp؛ Book name & amp؛ " ] "& amp؛ اسم الورقة & amp؛" '! "& amp؛ عنوان الخلية )

    ملاحظة. يجب أن يكون المصنف الذي تشير إليه الصيغة مفتوحًا دائمًا ، وإلا ستؤدي الوظيفة غير المباشرة إلى ظهور الخطأ #REF. كالعادة ، يمكن أن تساعدك الدالة IFERROR في تجنبها:

    =IFERROR(INDIRECT("'[" & A2 & "]" & $A$1 & "'!" & B1), "")

    استخدام وظيفة Excel INDIRECT لتأمين مرجع خلية

    عادةً ، يقوم Microsoft Excel بتغيير مراجع الخلايا عند إدراج جديد أو حذف الصفوف أو الأعمدة الموجودة في ورقة. لمنع حدوث ذلك ، يمكنك ذلكاستخدم الدالة INDIRECT للعمل مع مراجع الخلايا التي يجب أن تظل كما هي في أي حال.

    لتوضيح الاختلاف ، يرجى القيام بما يلي:

    1. أدخل أي قيمة في أي خلية ، قل ، الرقم 20 في الخلية A1.
    2. الرجوع إلى A1 من خليتين أخريين بطرق مختلفة: =A1 و =INDIRECT("A1")
    3. أدخل صفًا جديدًا أعلى الصف 1.

    انظر ماذا سيحدث؟ لا تزال الخلية التي تحتوي على يساوي عامل التشغيل المنطقي تُرجع 20 ، لأن صيغتها قد تغيرت تلقائيًا إلى = A2. تُرجع الخلية التي تحتوي على الصيغة INDIRECT القيمة 0 الآن ، لأن الصيغة لم تتغير عند إدراج صف جديد ولا تزال تشير إلى الخلية A1 ، وهي فارغة حاليًا:

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

    لنفترض أنك تريد جمع القيم في الخلايا A2: A5 ، ويمكنك القيام بذلك بسهولة باستخدام وظيفة SUM:

    =SUM(A2:A5)

    ومع ذلك ، فأنت تريد أن تظل الصيغة بدون تغيير ، بغض النظر عن عدد الصفوف التي تم حذفها أو إدراجها. الحل الأكثر وضوحًا - استخدام المراجع المطلقة - لن يساعد. للتأكد ، أدخل الصيغة =SUM($A$2:$A$5) في بعض الخلايا ، أدخل صفًا جديدًا ، على سبيل المثال في الصف 3 ، و ... ابحث عن الصيغة المحولة إلى =SUM($A$2:$A$6) .

    بالطبع ، ستعمل هذه المجاملة من Microsoft Excel بشكل جيد في معظم الحالات حالات. ومع ذلك ، قد تكون هناك سيناريوهات عندما لا تريد تغيير الصيغة

    مايكل براون متحمس للتكنولوجيا ولديه شغف لتبسيط العمليات المعقدة باستخدام أدوات البرمجيات. مع أكثر من عشر سنوات من الخبرة في صناعة التكنولوجيا ، صقل مهاراته في Microsoft Excel و Outlook ، بالإضافة إلى جداول بيانات Google والمستندات. مدونة مايكل مكرسة لمشاركة معرفته وخبرته مع الآخرين ، وتقديم نصائح ودروس تعليمية سهلة المتابعة لتحسين الإنتاجية والكفاءة. سواء كنت محترفًا متمرسًا أو مبتدئًا ، تقدم مدونة مايكل رؤى قيمة ونصائح عملية للحصول على أقصى استفادة من أدوات البرامج الأساسية هذه.