با سلام خدمت شما دوستان عزیز لطفاً با مثال تابع INDIRECT را توضیح دهید
کاربرد تابع INDIRECT
Collapse
X
-
RE: کاربرد تابع INDIRECT
سلام
بطور غیر مستقیم به اشاره میکنه
یعنی ارگومان رو ادرس یک محدوده قرار بدید.میره عملیات رو روی اون ادرس انجام میده
مثلا:
[undefined=undefined]=sum(indirect(a1:a10)
الان میاد اطلاعات محدوده ده تایی رو جمع میزنهمحصولات و جزوات آموزش تخصصی اکسل در:
برترین مرجع تخصصی پارسی اکسل
جامعه اكسل ايرانيان: فروشگاه
آموزش اکسل تخصصی و پیشرفته - تهران
h.khakzad@yahoo.com
-
با سلام
تابع ترکیبی sum و indirect در مواقعی استفاده میشود که ما نیاز به تعریف رنج sum در سلول دیگه ای داشته باشیم یعنی بطور مثال در سلول a1 یک رنج تایپ میکنیم b1:b50 و در فرمول نویسی این سلول رو بعنوان مرجع استفاده میکنیم اگر از تابع indirect استفاده نشود سلول مرجع ما توسط تابع sumبعنوان text در نظر گرفته میشود و فرمول قابل اجرا نمی باشد.تنها راهي که به شکست مي انجامد، تلاش نکردن است
کامنت
-
ترجمه فرمول کد:=SUM(INDIRECT("a"&G2&":c"&I2))
با فرض اینکه G2 برابر با 3 و سلول I2 برابر با 8 باشه میشه کد:=SUM(A3:C8)
فرمول INDIRECT یکی از فرمولهای جادویی اکسل هست و خب باید براش خیلی احترام قائل بشیم! کاربرد 1 : یکی از کاربردهای اون در کمبوباکس کردن Datavalidation هستش که قبلا در فروم مثالشو داشتیم. فرض کنید جدول زیر را داریم که در ستون 1 اون عناوین سه گروه قرار داره و در ستون دوم اون سه منطقه یک ستونی (مثلاً S2:S18) با نامگذاری محدوده: گروه مهندس Data1 گروه فنی Data2 گروه ستادی Data3 همانطور که گفتیم Data1، Data2 و Data3 نام سه منطقه یک ستونی هستش که در هر یک از اونها اسامی کارکنان گروه مربوطه قید شده. در دیتاولیدیشن اول نام گروهها فراخوانی میشود و در دیتاولیدیشن دوم با استفاده از فرمول INDIRECT جدول مربوطه فراخوانی میشه و خب اگه در ستون اول نام گروهی انتخاب نشه دیتاولیدیشن دوم خالی خواهد بود. (در فروم یک پست به طور کامل در این خصوص وجود داره.) کاربرد 2: مثال دیگه فرمول فایل پیوست CHAL5 هستش که در اون مجبور هستیم از این فرمول استفاده کنیم. کاربرد 3: در فایل درج عنوان مطابق با فیلتر در دومین راه حل برای پاسخمون از فرمول INDIRECT استفاده شده یادتون باشه در حل بعضی از مسائل ممکن نیست که بدون این فرمول بتونید به پاسخ مناسب برسید. Last edited by Amir Ghasemiyan; 2014/06/28, 16:46.
این نیز بگذرد.کامنت
-
به حضور indirect در فرمولهای زیر توجه کنید: index(indirect(a1);1;1) vlookup(a8;indirect(a1);2;0) که دراونها سلول a1 مقدار یک محدوده مثلاً b1:c4 هستش. که میتونه خودش حاصل یک فرمول باشه و بنابراین متغیره. Last edited by Amirsayyafi; 2013/10/23, 07:59.
این نیز بگذرد.کامنت
-
سلام
يك سوالي براي من پيش اومد
آيا ميشه با استفاده از تابع ايندايركت از يك فايل اكسل ديگه اطلاعات را فراخواني كرد؟
راستش من هرچي سعي كردم همش اشكال REf!*ميگيره
ممنون ميشم راهنماييم كنيدفقر شب را "بی غذا" سر کردن نیست ... فقر روز را "بی اندیشه" سر کردن است !کامنت
-
سلام،بنابراين به فرض براي ارجاع به خانه a1 در شيت 1 اگر شما بنويسيد:
در متن تابع indirect ارجاع به يک آدرس مي دهيم و آرگومان آن حتما" بايد text باشد، و کار اين تابع آن است که محتواي درون آدرسي که در متن آن درج کرده ايم را به ما باز مي گرداند. که البته آن آدرس مي تواند يک سل يا يک محدوده باشد.
کد PHP:=indirect(sheet1!a1)
کد PHP:=indirect("sheet1!a1")
sigpicکامنت
-
سلام و تشكر
جناب آقاي پارسا ميشه يك نمونه برام بفرستيد چون من اين موارد را رعايت كردم ولي بازم اين اشكال را ميگيره، براي فراخواني از داخل همون فايلي كه دارم داخلش فرمول ايندايركت را مينويسم مشكلي ندارم و كار ميكنه ولي ميخوام از يك فايل ديگه اطلاعات را فراخواني كنم كه اشكال ميگيره
ممنونمفقر شب را "بی غذا" سر کردن نیست ... فقر روز را "بی اندیشه" سر کردن است !کامنت
-
باز هم سلام
براي مثال يك فايل زيپ شامل دو فايل اكسل تقديم ميشود
كه ميخوام در فايل اكسل 1 اطلاعات را از فايل اكسل pp فراخواني كند
ممنونمفایل های پیوست شدهفقر شب را "بی غذا" سر کردن نیست ... فقر روز را "بی اندیشه" سر کردن است !کامنت
-
بايد از تابع ADDRESS در داخل تابع INDIRECT استفاده کنيد، داخل خانه F4 فرمول زير را بنويسيد:
کد PHP:=INDIRECT(ADDRESS(1;1;1;1;"[pp.xlsx]"&D2))
کارتان با اين راه مي افتد يا حتما" بايد به خانه F3 هم مربوط گردد؟sigpicکامنت
-
ممنونم استاد
نه نميخواد به F3 مربوط باشه فقط ميخواستم كه نام شيت را از D2 بخونه كه درسته فقط چند تا سوال ديگه:
اول اينكه فكر كنم اين فقط وقتي كار ميكنه كه فايل PP*هم باز باشه چون وقتي ميبندم همون ERROR*را ميده بازم
سوال بعديم را بايد مثالش را آماده كنم بعدا ميپرسم
فقط ميشه يك توضيحي راجب به تابع Address*كه نوشتيد بهم بديد؟
ممنونمفقر شب را "بی غذا" سر کردن نیست ... فقر روز را "بی اندیشه" سر کردن است !کامنت
-
و اما تابع address :
اين تابع ارجاع به يک آدرس مي دهد.
آرگومان اول سطر مربوطه است، آرگومان دوم ستون مربوطه است،
آرگومان سوم مربوط به تعيين نوع آدرس دهي (مطلق و نسبي) است، (به چهار حالت قابل تنظيم است)
آرگومان چهارم مربوط به الگويي است که تابع خروجي خود را بر مبناي آن ارائه مي دهد (مثل a1 يا r1c1 ) اگر آرگومان true يا بدون مقدار باشد از الگوي rc استفاده نخواهد کرد
آرگومان آخر نام شيت را بر مي گرداند و اگر نوشته نشود تابع شيت جاري را مبنا قرار خواهد داد.
پس به عنوان مثال در فرمولي که برايتان نوشتم اگر به جاي خانه a1 بخواهيد خانه b1 برگردانده شود بايد دو آرگومان اول تابع آدرس که 1 و 1 مي باشند را به 1 و 2 تغيير دهيد (يعني سطر اول و ستون دوم شيت مورد نظر )
اين تابع معمولا" با تابع indirect به کار مي رودsigpicکامنت
کامنت