بلاگ
آموزش جامع فرمول MAKEARRAY در گوگل شیت
- آیا میدانید چگونه میتوانید آرایههایی با ابعاد دلخواه و محتوای سفارشی در گوگل شیت بسازید؟
- فرمول MAKEARRAY در گوگل شیت چه تفاوتی با سایر توابع آرایهای دارد و چه مزایایی ارائه میدهد؟
- چگونه میتوان قدرت فرمول MAKEARRAY را با تابع LAMBDA ترکیب کرد تا راهحلهای پویا و پیشرفتهای ایجاد کنیم؟
- با چه مثالهای عملی و کاربردی میتوانیم از MAKEARRAY برای بهینهسازی کارهای روزمره خود استفاده کنیم؟
- اشتباهات رایج در استفاده از این فرمول چیست و چگونه میتوان از آنها اجتناب کرد؟
در این مقاله، به تمام این سوالات پاسخ خواهیم داد و شما را با آموزش جامع فرمول MAKEARRAY در گوگل شیت آشنا میکنیم. دنیای اسپردشیتها به سرعت در حال تکامل است و با ظهور توابع جدید و قدرتمندی مانند MAKEARRAY، کاربران میتوانند دادههای خود را با انعطافپذیری و دقت بینظیری مدیریت کنند. این فرمول به شما امکان میدهد تا آرایههایی با ابعاد مشخص ایجاد کرده و محتوای هر سلول را بر اساس یک تابع سفارشی (معمولاً LAMBDA) تعیین کنید. این قابلیت نه تنها باعث صرفهجویی در زمان میشود، بلکه در ایجاد مدلهای پیچیده داده و گزارشهای پویا نیز کاربرد فراوانی دارد. با ما همراه باشید تا گام به گام با این ابزار قدرتمند آشنا شوید.
فرمول MAKEARRAY در گوگل شیت چیست؟
فرمول MAKEARRAY در گوگل شیت یکی از توابع پیشرفته و پویای جدید است که به شما امکان میدهد یک آرایه جدید با تعداد ردیفها و ستونهای مشخص ایجاد کنید. ویژگی منحصر به فرد این فرمول، قابلیت تعریف یک تابع سفارشی (LAMBDA) است که برای محاسبه مقدار هر سلول در آرایه تازه ایجاد شده به کار میرود. به عبارت دیگر، شما نه تنها ابعاد آرایه را تعیین میکنید، بلکه منطق پر کردن هر خانه از آن آرایه را نیز کاملاً در اختیار دارید.
برخلاف توابعی مانند SEQUENCE که یک دنباله خطی از اعداد تولید میکنند، MAKEARRAY به شما اجازه میدهد تا هر سلول را بر اساس موقعیت ردیف و ستون آن (ایندکس) محاسبه و پر کنید. این قابلیت، MAKEARRAY را به ابزاری فوقالعاده برای سناریوهایی تبدیل میکند که نیاز به تولید دادههای ساختاریافته و پیچیده با الگوهای غیرخطی دارید. مثلاً میتوانید یک جدول ضرب، یک ماتریس فاصله، یا هر ساختار داده سفارشی دیگری را به سادگی و تنها با یک فرمول ایجاد کنید.
در واقع، این فرمول یک ابزار عالی برای تولید خودکار دادهها بر اساس قوانین دلخواه است و میتواند در کارهایی مانند شبیهسازی، تولید گزارشهای سفارشی و ساخت داشبوردهای پویا بسیار مفید باشد.
ساختار و آرگومانهای فرمول MAKEARRAY
آشنایی با ساختار صحیح فرمول MAKEARRAY در گوگل شیت اولین قدم برای استفاده مؤثر از آن است. این فرمول دارای سه آرگومان اصلی است:
=MAKEARRAY(rows, columns, LAMBDA)
- rows (تعداد ردیفها): این آرگومان مشخص میکند که آرایه خروجی شما چند ردیف داشته باشد. این مقدار باید یک عدد صحیح مثبت باشد.
- columns (تعداد ستونها): این آرگومان تعیین میکند که آرایه خروجی شما چند ستون داشته باشد. این مقدار نیز باید یک عدد صحیح مثبت باشد.
- LAMBDA (تابع سفارشی): این آرگومان قلب فرمول MAKEARRAY است. یک تابع LAMBDA را دریافت میکند که وظیفه محاسبه مقدار برای هر سلول در آرایه را بر عهده دارد. تابع LAMBDA در اینجا باید دقیقاً دو آرگومان (نام) داشته باشد، که به ترتیب به ایندکس ردیف فعلی (row_index) و ایندکس ستون فعلی (column_index) نگاشت میشوند. این ایندکسها از 1 شروع میشوند. سپس، یک
formula_expression(عبارت فرمول) باید تعریف شود که با استفاده از این دو نام، مقدار نهایی سلول را محاسبه کند.ساختار کلی LAMBDA در MAKEARRAY به شکل زیر است:
LAMBDA(row_index, column_index, formula_expression)
به عنوان مثال، LAMBDA(r, c, r*c) یک تابع LAMBDA است که مقدار هر سلول را با ضرب شماره ردیف (r) در شماره ستون (c) آن محاسبه میکند.
مثالهای کاربردی از فرمول MAKEARRAY
برای درک بهتر فرمول MAKEARRAY در گوگل شیت، به چند مثال عملی میپردازیم:
مثال 1: ایجاد یک جدول ضرب ساده
فرض کنید میخواهید یک جدول ضرب 5×5 ایجاد کنید. با MAKEARRAY، این کار بسیار ساده است:
=MAKEARRAY(5, 5, LAMBDA(r, c, r*c))
این فرمول یک آرایه 5 ردیفه و 5 ستونی ایجاد میکند که در هر سلول، حاصل ضرب شماره ردیف و ستون مربوطه را نمایش میدهد.
مثال 2: تولید دنبالهای از تاریخها
اگر نیاز به تولید یک ماتریس از تاریخها دارید، میتوانید از MAKEARRAY استفاده کنید. مثلاً برای ایجاد یک تقویم کوچک 2×3 که از تاریخ امروز شروع شود:
=MAKEARRAY(2, 3, LAMBDA(r, c, TODAY() + (r-1)*3 + (c-1)))
در این مثال، (r-1)*3 + (c-1) تعداد روزهایی را محاسبه میکند که باید به تاریخ امروز اضافه شود تا به سلول فعلی برسیم، با فرض اینکه هر ردیف 3 ستون دارد.
مثال 3: ایجاد یک ماتریس با مقادیر شرطی
میتوانید منطق پیچیدهتری را درون LAMBDA خود قرار دهید. مثلاً برای ایجاد یک آرایه 4×4 که اگر شماره ردیف بزرگتر از شماره ستون باشد، عدد 1 و در غیر این صورت 0 را نمایش دهد:
=MAKEARRAY(4, 4, LAMBDA(r, c, IF(r > c, 1, 0)))
این فرمول میتواند برای نمایش روابط یا الگوهای خاص در یک ماتریس بسیار مفید باشد.
مثال 4: ترکیب MAKEARRAY با توابع دیگر
قدرت واقعی MAKEARRAY در ترکیب آن با دیگر توابع گوگل شیت نهفته است. فرض کنید میخواهید یک آرایه 3×2 از اعداد تصادفی بین 1 تا 100 تولید کنید:
=MAKEARRAY(3, 2, LAMBDA(r, c, RANDBETWEEN(1, 100)))
هر بار که شیت بهروزرسانی شود، مقادیر این آرایه نیز تغییر خواهند کرد، که برای شبیهسازی یا تولید دادههای نمونه مفید است.
نکات و بهترین روشها برای استفاده از MAKEARRAY
برای بهینهسازی استفاده از فرمول MAKEARRAY در گوگل شیت و جلوگیری از خطاها، رعایت نکات زیر حائز اهمیت است:
- آشنایی با LAMBDA: از آنجا که MAKEARRAY به شدت به تابع LAMBDA وابسته است، درک عمیق از نحوه عملکرد LAMBDA ضروری است. مطمئن شوید که LAMBDA شما دقیقاً دو آرگومان (برای ردیف و ستون) و یک عبارت فرمولی دارد.
- فضای کافی: فرمول MAKEARRAY خروجی خود را در یک آرایه گسترش میدهد. بنابراین، مطمئن شوید که سلولهای کافی در محدوده مقصد خالی هستند تا خروجی فرمول را در خود جای دهند. اگر سلولی پر باشد، فرمول با خطای
#REF!مواجه میشود. - استفاده از توابع نامگذاری شده (Named Functions): برای فرمولهای LAMBDA پیچیده یا پرکاربرد، میتوانید یک تابع نامگذاری شده ایجاد کنید و سپس آن را در MAKEARRAY به کار ببرید. این کار خوانایی و قابلیت استفاده مجدد فرمولهای شما را افزایش میدهد.
- آزمایشهای کوچک: قبل از اعمال MAKEARRAY در مقیاس بزرگ، با ابعاد کوچکتر (مثلاً 2×2 یا 3×3) آزمایش کنید تا از صحت منطق LAMBDA خود اطمینان حاصل کنید.
- بهینهسازی عملکرد: در آرایههای بسیار بزرگ، استفاده از عملیات پیچیده درون LAMBDA میتواند بر عملکرد شیت شما تأثیر بگذارد. در صورت امکان، فرمولهای خود را بهینه کنید.
اشتباهات رایج در استفاده از MAKEARRAY
مانند هر فرمول قدرتمند دیگری، فرمول MAKEARRAY در گوگل شیت نیز میتواند مستعد خطاهای رایج باشد:
- عدم ارائه دو آرگومان به LAMBDA: LAMBDA درون MAKEARRAY باید دقیقاً دو آرگومان (برای ایندکس ردیف و ستون) داشته باشد. عدم رعایت این مورد منجر به خطا میشود.
- تداخل با دادههای موجود: همانطور که قبلاً ذکر شد، اگر در محدوده خروجی MAKEARRAY، سلولهای دیگری پر باشند، فرمول خطا میدهد.
- نامگذاری نامعتبر آرگومانها در LAMBDA: نباید از نامهایی برای آرگومانهای LAMBDA استفاده کرد که با نام محدودهها یا سلولهای موجود تداخل دارند (مثلاً C1).
- بازگشت آرایه از LAMBDA: هر مقدار بازگشتی از تابع LAMBDA در MAKEARRAY باید یک مقدار واحد باشد. بازگرداندن آرایههای تو در تو پشتیبانی نمیشود و منجر به خطا خواهد شد.
- خطاهای تایپی: اشتباهات املایی رایج مانند “Makearraye” یا “Makearray” به جای “MAKEARRAY” میتواند منجر به خطای
#NAME?شود.
مقایسه MAKEARRAY با توابع مشابه (SEQUENCE و ARRAYFORMULA)
برای درک جایگاه فرمول MAKEARRAY در گوگل شیت، مفید است که آن را با توابع آرایهای دیگری مانند SEQUENCE و ARRAYFORMULA مقایسه کنیم.
| ویژگی | MAKEARRAY | SEQUENCE | ARRAYFORMULA |
|---|---|---|---|
| هدف اصلی | ایجاد یک آرایه با ابعاد مشخص و مقادیر محاسبه شده توسط LAMBDA بر اساس ایندکس ردیف/ستون. | تولید یک دنباله خطی از اعداد. | اعمال یک فرمول سلولی بر روی یک محدوده کامل، تبدیل آن به یک فرمول آرایهای. |
| وابستگی به LAMBDA | بسیار زیاد، LAMBDA جزئی جداییناپذیر از آن است. | ندارد (اما میتوان با LAMBDA ترکیب کرد). | ندارد (اما میتوان با LAMBDA ترکیب کرد). |
| تعیین محتوای سلول | کاملترین کنترل، بر اساس ایندکس r و c. | بر اساس نقطه شروع و گام افزایشی. | بر اساس فرمول اصلی که بر روی هر سلول اعمال میشود. |
| انعطافپذیری | بسیار بالا برای الگوهای پیچیده و غیرخطی. | متوسط، برای دنبالههای خطی ایدهآل است. | متوسط، برای تبدیل فرمولهای سلولی به آرایهای. |
| مثال کاربرد | ایجاد جدول ضرب، ماتریسهای سفارشی، تقویمهای پویا. | شمارهگذاری ردیفها، تولید لیست تاریخها، ایجاد لیستهای عددی. | اعمال یک فرمول جمع یا ضرب بر روی یک ستون کامل بدون کشیدن فرمول. |
همانطور که مشاهده میکنید، هر یک از این توابع کاربرد خاص خود را دارند. MAKEARRAY زمانی میدرخشد که شما نیاز به ساخت یک آرایه از صفر دارید و میخواهید هر سلول را بر اساس موقعیت آن در آرایه جدید با یک منطق سفارشی پر کنید.
نتیجهگیری
فرمول MAKEARRAY در گوگل شیت یک افزوده قدرتمند به مجموعه ابزارهای شماست که درک و استفاده از آن میتواند بهرهوری شما را در کار با دادهها به طرز چشمگیری افزایش دهد. این فرمول با ترکیب توانایی ایجاد آرایههایی با ابعاد دلخواه و انعطافپذیری تابع LAMBDA برای تعریف منطق هر سلول، امکانات بینظیری را برای تولید دادههای پویا و ساختاریافته فراهم میکند. از ایجاد جدولهای ضرب ساده گرفته تا شبیهسازیهای پیچیده و گزارشهای سفارشی، MAKEARRAY ابزاری است که به شما اجازه میدهد تا با یک فرمول واحد، حجم زیادی از کار را به صورت خودکار انجام دهید. با تسلط بر این فرمول و رعایت نکات بهترین عملکرد، میتوانید گوگل شیت را به سطوح جدیدی از کارایی برسانید و فرآیندهای مدیریت داده خود را متحول کنید.
لطفاً در مورد کاربرد این فرمول در تحلیلهای آماری و EQ (هوش هیجانی) هم اگر مطلبی دارید به اشتراک بگذارید. چطور دادههای پرسشنامه رو باهاش تحلیل کنیم؟
سوال جالبی بود بابک عزیز. برای تحلیل پرسشنامههای EQ، میتونید از MAKEARRAY استفاده کنید تا نمرات خام رو به صورت خودکار به دستههای مختلف (مثل خودآگاهی یا همدلی) نگاشت کنید. این کار سرعت تحلیل دادههای روانشناختی رو در سازمانها به شدت افزایش میده.
خیلی ممنون، من همیشه فکر میکردم فقط با اسکریپتنویسی میشه چنین کارهایی کرد، ولی حالا میبینم با یک فرمول ساده هم ممکنه.
آیا محدودیتی در تعداد ستونها وجود داره؟ مثلاً برای یک تقویم سالانه میتونم ازش استفاده کنم؟
حسین جان، گوگل شیت محدودیت کلی ۱۰ میلیون سلول برای هر فایل داره. تا زمانی که آرایه شما از این سقف عبور نکنه، مشکلی نخواهید داشت. برای ساخت تقویم، MAKEARRAY یکی از بهترین گزینههاست چون میتونید ۳۶۵ روز رو در ستونهای مشخص و با فرمت دلخواه نمایش بدید.
من از این فرمول برای تولید شماره فاکتورهای هوشمند استفاده کردم. واقعاً سرعت کار تیم فروش رو بالا برد.
به نظرم ترکیب MAKEARRAY با تابع SCAN و REDUCE میتونه کارهای خارقالعادهای انجام بده. تا حالا در مورد اینها مقالهای نوشتید؟
نکته بسیار حرفهای بود کامران عزیز. توابع SCAN و REDUCE جزو قدرتمندترین ابزارهای پردازش لیستها هستن. در نقشه محتوایی ما، آموزش این توابع برای تحلیلهای پیشرفته مالی و بیزنسی در نظر گرفته شده و به زودی منتشر میشه.
این فرمول برای ساختن ماتریسهای تصمیمگیری در جلسات کوچینگ عالیه. میشه به راحتی وزندهی معیارها رو به صورت خودکار تغییر داد.
من با خطای #CALC! مواجه میشم وقتی ابعاد رو منفی میدم. فکر کنم باید حتماً عدد مثبت باشه، درسته؟
درست حدس زدید پویا جان. ابعاد آرایه (تعداد ردیف و ستون) حتماً باید اعداد صحیح مثبت باشن. همچنین مطمئن بشید که آرایه ایجاد شده با دادههای موجود در سلولهای پایین و کنار خودش تداخل نداشته باشه، وگرنه خطای #REF دریافت میکنید.
چقدر خوبه که به جای اکسل، روی گوگل شیت تمرکز کردید. اشتراکگذاری و کار تیمی روش خیلی راحتتره.
دقیقاً فاطمه جان. در فرهنگ سازمانی مدرن، همکاری همزمان (Collaboration) یک اصل اساسیه و گوگل شیت با ابزارهای قدرتمندی مثل MAKEARRAY نشون داده که چیزی از اکسل کم نداره و در بحث کار تیمی حتی جلوتر هم هست.
برای من که به تازگی وارد دنیای دادهها شدم، درک مفهوم LAMBDA یکم سخت بود ولی با مثالهای این مقاله خیلی بهتر متوجه شدم. ممنون از تیم 9persona.
یک سوال داشتم، آیا میتونیم داخل LAMBDA از توابع VLOOKUP هم استفاده کنیم تا دادهها رو از یک جدول دیگه بخونه و در آرایه قرار بده؟
بله مریم عزیز، کاملاً امکانپذیره. شما میتونید در بدنه تابع LAMBDA هر تابع استاندارد دیگهای مثل VLOOKUP، INDEX یا MATCH رو به کار ببرید. این کار باعث میشه بتونید جداول کاملاً سفارشیسازی شدهای بسازید که محتویاتشون از بخشهای مختلف دیتابیس شما استخراج میشه.
آموزشهای مربوط به Google Sheets رو بیشتر بزارید. برای ما که در حوزه مدیریت زنجیره تامین فعالیت میکنیم، این ابزارها حکم طلا رو دارن.
حتماً رضا جان. مدیریت زنجیره تامین نیاز به دقت بالایی در تحلیل دادههای پویا داره و توابع جدید گوگل شیت مثل MAKEARRAY و MAP میتونن تحول بزرگی در داشبوردهای نظارتی شما ایجاد کنن. در برنامههای بعدی، آموزشهای کاربردیتری در این حوزه منتشر خواهیم کرد.
من برای طراحی جدولهای برنامهریزی استراتژیک از این فرمول استفاده کردم و چقدر کارم رو راحت کرد! ممنون از آموزشهای تخصصیتون.
مقاله خیلی کامل بود. فقط یک سوال، اگر ابعاد آرایه خیلی بزرگ باشه (مثلاً ۱۰ هزار در ۱۰ هزار)، آیا سرعت لود شدن شیت پایین نمیاد؟
سوال فنی و مهمی بود مهدی جان. بله، توابع آرایهای و مخصوصاً اونهایی که از LAMBDA استفاده میکنن، بار پردازشی روی مرورگر ایجاد میکنن. برای ابعاد بسیار بزرگ، پیشنهاد میشه محاسبات رو خرد کنید یا از اسکریپتهای بهینهتر استفاده کنید. اما برای اکثر داشبوردهای مدیریتی و گزارشهای بیزنسی، MAKEARRAY عملکرد بسیار سریعی داره.
من به عنوان یک بیزنس کوچ همیشه به کلاینتهام توصیه میکنم که از ابزارهای اتوماسیون استفاده کنن. آیا این فرمول در نسخههای قدیمی اکسل هم کار میکنه یا فقط مختص گوگل شیته؟
سارای گرامی، نکته بسیار هوشمندانهای رو اشاره کردید. تابع MAKEARRAY در حال حاضر در نسخههای بهروز اکسل (Microsoft 365) هم وجود داره، اما سینتکس و نحوه تعاملش با موتور محاسباتی گوگل شیت ممکنه تفاوتهای جزئی داشته باشه. در هر دو پلتفرم، هدف اصلی کاهش وابستگی به ورود دستی دادهها و افزایش دقت در مدلسازیهای بیزنسی است.
واقعاً این تابع MAKEARRAY برای مدیریت پروژههایی که مقیاسشون مدام تغییر میکنه عالیه. تا قبل از این مجبور بودم دستی ردیفها رو اضافه کنم. ترکیبش با LAMBDA چه امکانات دیگهای برای خودکارسازی گزارشهای ماهانه داره؟
سلام امیررضای عزیز، خوشحالیم که این مطلب براتون مفید بوده. استفاده از MAKEARRAY به همراه LAMBDA به شما اجازه میده تا منطقهای شرطی پیچیده رو درون هر سلول پیادهسازی کنید. مثلاً میتونید بر اساس شماره ردیف و ستون، محاسبات متفاوتی برای سناریوهای مختلف مالی یا بودجهبندی انجام بدید، بدون اینکه نیاز باشه فرمول رو به صورت دستی در هزاران سلول کپی کنید. این دقیقاً همان سیستمسازی در سطح دادههاست.