در بسیاری از سازمانها با توجه به فراوانی و تنوع بانکهای اطلاعاتی، گاهی نیاز است گزارشی تهیه گردد که اطلاعات آن در چندین بانک اطلاعاتی قرار دارد و نیاز میشود از همه این جداول برای تهیه گزارش استفاده نماییم.
اگر در نسخههای قدیمیتر از ۲۰۱۳ قرار بر انجام این کار بود مجبور بودیم با استفاده از توابع جستجو مانند VLOOKUP این محاسبات تودرتو را انجام دهیم، که این روش باعث کند شدن سرعت محاسبات در فایل مزبور میگردید. در نسخههای ۲۰۱۳ و ۲۰۱۶ ابزارهای متنوعی برای انجام این کار ارائه گردیده است.
یکی از این ابزارها افزونه قدرتمند Power Pivot میباشد که در گزارش گرفتن از بانکهای اطلاعاتی بسیار قوی عمل مینماید و میتواند با ساختن مدلهای اطلاعاتی در ترکیب با ابزار Pivot Table گزارشهای تحلیلی بسیار متنوعی تولید نماید. البته مهارت در استفاده از این ابزارها نیاز بهصرف وقت مناسب برای یادگیری آنها دارد.
حال اگر به دنبال یک روش ساده و سریعتر جهت ارتباط بین این جداول و تولید گزارش از چندین بانک اطلاعاتی بهصورت همزمان میباشید و تمایل به استفاده از ابزار Power Pivot ندارید میتوانید از یک روش سادهتر جهت ارتباط بین بانکهای اطلاعاتی و تهیه گزارش در اکسل استفاده نمایید.
این روش توسط Ash Sharma و تیم قوی که در زمینه IT دارد و متخصص اکسل هستند ارائه گردیده است و خبر آن توسط استاد Bill Jelen در سایت Mrexcel نشر گردیده است.
دقت داشته باشید که این مدل با استفاده از ابزارهای موجود در نسخه ۲۰۱۶ ارائه و بسیار ساده تعریف گردیده است.
ما میخواهیم بدانیم با توجه به جداول اطلاعاتی که در اختیار داریم، جمع هزینههای خانوارهای ۱ تا ۶ نفره به تفکیک کالاهای خوراکی و غیرخوراکی چه مبلغی میباشد؟
فرض کنید جداول مختلفی در زمینه کالاهای مصرفی خانوار داریم که به شرح زیر دستهبندی گردیده است.
جدول ۱ (جدول دسته کالا):
گروه کالاهای مختلف که در دسته کالاهای خوراکی و غیرخوراکی در جدول ذیل دستهبندی گردیده است.
در این مثال به رنگ سبز مشخص گردیده است.
جدول ۲ (جدول قلم کالا):
قلم کالاهای مختلف مورد استفاده خانواده که در کدام گروه کالا قرار دارد را مشخص مینماید. بین این جدول و جدول ۱ ستون «گروه کالا» مشترک میباشد.
در این مثال این جدول به رنگ آبی مشخص گردیده است.
جدول ۳ (بانک اطلاعاتی هزینه):
در بانک اطلاعاتی سوم قلمهای کالای خریداریشده خانواده در یک بازه زمانی معین مشخص شده است. این بانک اطلاعاتی بهتناسب تعداد نمونه خانواری که انتخاب کردهاید و بازههای مختلف زمانی که اطلاعات را جمعآوری نمودهاید میتواند شامل چند صدهزار ردیف داده باشد، که در واقع بانک اطلاعاتی اصلی این مسئله میباشد.
در این مثال چند عدد نمونه و محدود انتخاب شده است. ستون مشترک بین این بانک اطلاعاتی و جدول ۲، «قلم کالا» میباشد. این جدول به رنگ نارنجی مشخص گردیده است.
جدول ۴ (کد خانوار):
در جدول ۴ تعداد نفرات خانواری که اطلاعات هزینه آنها دریافت گردیده لیست شده است و تعداد نفرات آن در جلوی هر کد خانوار ثبت گردیده است. ستون مشترک بین این جدول و جدول ۳ ستون کد خانوار میباشد.
این جدول به رنگ زرد مشخص گردیده است.
طبق خواسته صورت سؤال، ما جمع هزینههای هر خانوار به تفکیک دسته کالا را نیاز داریم. با توجه به اینکه ما هزینههای هر خانوار را به تفکیک قلم کالا در اختیار داریم لذا میبایست از قلم کالا به دسته کالا برسیم.
بنابراین با توجه به جدول ۲ از قلم کالا به گروه کالا و با توجه به جدول ۱ از گروه کالا به دسته کالا میرسیم. از طرفی در صورت سؤال این اطلاعات را برای خانوارهایی که تعداد اعضای آنها بین ۱ تا ۶ نفر است نیاز داریم.
بنابراین از جدول ۴ باید تعداد اعضای هر خانوار را استخراج کنیم.
بنابراین برای این گزارش ما باید ارتباطی بین دادههای هر ۴ جدول برقرار کنیم تا گزارش خواستهشده را تولید نماییم. برای رسیدن به این گزارش باید مراحل زیر را طی نماییم:
۱. باید ابتدا محدوده هر ۴ جدول را به Table تبدیل نماییم. بنابراین محدوده هر جدول را جداگانه انتخاب و از مسیر Insert > Table گزینه Table را کلیک میکنیم و یا از کلید میانبر Ctrl+T استفاده مینماییم.
۲. از مسیر منوی Data گزینه Relationships را کلیک کرده تا فرم Manage Relationships باز گردد.
فایل پیوست حل مسئله فوق میباشد.
Download “Relationship” relationship.xlsx – 9760 بار دانلود شده است – 367,42 کیلوبایت1- mrexcel.com
6 دیدگاه ها
سلام میخواستم بگم من تو این پیج ریلیشن شیپ را دارم یاد میگیرم مشکلی که نداره از نظر شما؟ و اینکه شما میگین گزینه ریلیشن شیپ را انتخاب کنیم, و دو به دو جدولهایی که با هم ارتباط دارند, من کدوم جدول را انتخواب کنم دقیق بگین, و بعدش باید ok کنم ستون خالی نمیشه انتخواب کرد, برای pivot tsble باید یه محدوده را انتخواب کنیم, میشه دقیق تر بگین؟
سلام، اگر مطابق مثال پست پیش بروید کاملا توضیحات مشخص است، شما میبایست جداولی که نیاز به برقراری ارتباط بین آنها را دارید ابتدا به حالت تیبل درآورده و سپس از ابزار Relationship جداول را انتخاب و ستون های مشترک بین آنها را به یکدیگر مرتبط کنید ، برای PivotTable هم مطابق توضیحات در پست یک سلول خالی را انتخاب و سپس از تب Insert گزینه PivotTable را انتخاب کنید
سلام دو تا worksheet حجیم و یکسان دارم و به دلیل زیاد بودن رکورد امکان ادغام ندارندمی خواستم دو تا شیت ادغام کنم از چه روشی استفاده کنم؟
سلام دوست عزیز
اگر حجم اطلاعات شما انقدر زیاد هست که اگر همه را داخل یک شیت قرار بدهید از یک میلیون ردیف بیشتر میشود چاره ای جز استفاده از دیتابیس های قوی تر مثل sql server یا mysql و یا سایر دیتابیس های قدرتمند ندارید.
سلام وقت بخیر
من حدود 50 تا اکسل حجیم دارم میخوام همه اینها رو توی یه دیتابیس واحد تجمیع کنم که بشه مثل اکسل برای هر ردیفش فیلتر گذاشت
در واقع یه نرم افزاری میخوام که اگر فرضاً 500 م فیلد اطلاعات توش باشه با 50 تا ردیف عمودی مشکلی تو جستجو نداشته باشه، از چه نرم افزاری استفاده کنم که این محدودیت رو نداشته باشه و مثل اکسل هم ساده باشه
سلام دوست عزیز
اگر ساختار همه فایل ها یکی هست بهترین روش استفاده از ابزار power query و یا نرم افزار power bi هست.