گزارش گیری با فیلتر کردن در اکسل
فایلی اکسلی ساختم که طبق فرمول زیر عملیاتی رو انجام میده:
=IF([ردیف]=1;D2E2;(D2E2)+I1)
این عملیات تا قبل از اینکه فیلتری اعمال کنم بدرستی کار می کنه، ولی بنده میخوام که با اعمال فیلتر، عملیات مذکور برای مورد فیلتر شده صرفا انجام بگیره و فکر میکنم برای این کار نیاز به تعریف یک متغیر دارم.
حالا بنده میخوام به جای I1 و در اصل به جای عدد 1 یک متغیر داشته باشم که نمیدونم چطور تعریفش کنم(لطفا راهنمایی کنید):
اینجا یک سوال مطرح میشه که :
آیا با فیلتر کردن، اکسل اندیس متغیر رو طبق تعداد سطر نمایش داده شده در نظر میگیره یا معیارش شماره سلول هاست و میشه با این کار چنین عملیاتی رو به انجام رسوند؟
پیشاپیش ممنون.
7 پاسخ
معیار همیشه شماره سلول هست.
وقتی فیلتر می کنید باعث میشه سطرهایی نمایش داده نشه.ولی در مخاسبات خللی ایجاد نمیشه.
اگر میشه تصویری از فایل قرار بدید.
*فایلتون با فیلتر کردن محاسباتش درست انجام میشه و من مشکلی مشاهده نکردم.
*
در مورد این جوابتون باید عرض کنم که اصل مشکل بنده با ستون "جمع کل" هست و زمانی که فیلتر میشه برخلاف صحبت شما درست عمل نمیکنه، یعنی اینکه من میخوام برحسب فیلتر مبلغ جمع کل هم تغییر کنه.
فایلتون با فیلتر کردن محاسباتش درست انجام میشه و من مشکلی مشاهده نکردم.
ضمن تشکر از مهندس محمد گورکانی زرندی عزیز بابت پاسخشون باید عرض کنم که موضوع سوال بدلیل تغییر جواب ها به سمت هدف عملیات به " گزارش گیری با فیلتر کردن در اکسل" تغییر داده شد که بنده به شدت توصیه میکنم ضمن مطالعه و تحقیق در این مورد، از این قابلیت فوق العاده استفاده کنید که تا حد زیادی شما رو از کدنویسی راحت میکنه.
ممنون از توجهتون و اینکه میشه نحوه استفاده از متغیر ها رو در اکسل بفرمائید؟
دانلود فایل از اینجا
الان تازه فهمیدم داستان چیه؟
شما باید از pivot table استفاده کنید.
برای تعریف متغیر در اکسل:
روش ماکرو نویسی:
که باید vba بلد باشید.
روش درون workbook و sheet:
1- مقادیر ثابت را در یک sheet جداگانه به صورت ترتیبی قرار دهید. برای زیبایی بهتر
2- در tab مربوط به formula -> define Names ->define name
3- یک اسم به متغیر اختصاص بدید. گستره کاربرد (scope) رو روی workbook بزارید. مقدار را در بخش reffer to مشخص کنید.
حالا در هر کجا در فرمول ها می توانید از نام متغیر مشخص شده استفاده کنید.