بلاگ
آموزش جامع فرمول CHOOSECOLS در گوگل شیت
- چگونه میتوانم تنها ستونهای خاصی را از یک مجموعه داده بزرگ در گوگل شیت انتخاب کنم؟
- آیا راهی برای انتخاب و مرتبسازی مجدد ستونها بدون کپی و چسباندن دستی وجود دارد؟
- فرمول CHOOSECOLS دقیقاً چه کاری انجام میدهد و چه مزایایی نسبت به روشهای سنتی دارد؟
- چگونه میتوانم با استفاده از این فرمول، ستونها را به صورت پویا و بر اساس نیازهای مختلف انتخاب کنم؟
در این مقاله جامع، به تمام این سوالات پاسخ خواهیم داد و شما را با یکی از قدرتمندترین و کاربردیترین توابع جدید در گوگل شیت، یعنی فرمول CHOOSECOLS در گوگل شیت، آشنا خواهیم کرد. اگر با مجموعههای داده بزرگ سروکار دارید و نیاز به استخراج یا مرتبسازی مجدد ستونهای خاصی دارید، این مقاله برای شما نوشته شده است. ما نه تنها نحوه استفاده از این فرمول را به صورت گام به گام توضیح میدهیم، بلکه کاربردهای پیشرفته، اشتباهات رایج و تفاوت آن با سایر روشها را نیز بررسی خواهیم کرد تا بتوانید به بهترین شکل از آن در تحلیل دادههای خود بهرهبرداری کنید.
فرمول CHOOSECOLS در گوگل شیت چیست؟
فرمول CHOOSECOLS در گوگل شیت یک تابع جدید و بسیار کارآمد است که به شما امکان میدهد ستونهای مشخصی را از یک آرایه یا محدوده داده انتخاب کرده و آنها را در یک آرایه جدید برگردانید. این فرمول به معنای واقعی کلمه “انتخاب ستونها” است و ابزاری فوقالعاده برای سازماندهی، فیلتر کردن و نمایش دادهها به شکلی دلخواه محسوب میشود. پیش از این، برای انجام چنین کاری اغلب نیاز به استفاده از فرمولهای پیچیدهتر مانند QUERY یا ترکیبی از ARRAYFORMULA و ارجاعات ستون بود، اما CHOOSECOLS این فرآیند را به طرز چشمگیری ساده کرده است.
تصور کنید یک جدول با دهها ستون اطلاعات مشتری دارید، اما برای گزارش خاصی فقط به نام، ایمیل و شماره تلفن آنها نیاز دارید. فرمول CHOOSECOLS در گوگل شیت این امکان را به شما میدهد که با یک دستور ساده، دقیقاً همین سه ستون را استخراج کرده و یک نمای تمیز و متمرکز از دادههای مورد نیاز خود ایجاد کنید. این فرمول جزء توابع آرایهای است، به این معنی که میتواند یک آرایه کامل از نتایج را به صورت خودکار در سلولهای مجاور پخش کند و نیازی به کشیدن فرمول به سلولهای دیگر ندارید.
ساختار و آرگومانهای فرمول CHOOSECOLS
ساختار کلی فرمول CHOOSECOLS در گوگل شیت بسیار ساده و قابل درک است:
=CHOOSECOLS(آرایه_اصلی, ستون1, [ستون2], ...)
آرایه_اصلی(array): این آرگومان اجباری است و به محدوده دادهای (مثلاًA1:Z100) یا آرایهای (نتیجه یک فرمول دیگر) اشاره دارد که میخواهید ستونها را از آن انتخاب کنید.ستون1(col_num1): این آرگومان نیز اجباری است و شماره ستونی را که میخواهید انتخاب کنید، مشخص میکند. این عدد میتواند یک عدد مثبت (برای ستون از چپ به راست) یا یک عدد منفی (برای ستون از راست به چپ) باشد.[ستون2], ...([col_num2], ...): اینها آرگومانهای اختیاری هستند. شما میتوانید به تعداد نامحدود شماره ستونهای دیگر را اضافه کنید تا چندین ستون را به صورت همزمان انتخاب نمایید. ترتیب وارد کردن این اعداد، ترتیب نمایش ستونها در خروجی را نیز تعیین میکند.
چرا از CHOOSECOLS استفاده کنیم؟ مزایا و کاربردها
استفاده از فرمول CHOOSECOLS در گوگل شیت مزایای متعددی دارد که آن را به ابزاری ضروری برای هر کسی که با دادهها کار میکند، تبدیل میکند:
1. سادگی و خوانایی بالا
برخلاف فرمولهای پیچیده مانند QUERY که نیاز به یادگیری یک زبان پرس و جوی خاص دارند، CHOOSECOLS با یک نگاه قابل فهم است. تنها کافی است محدوده داده و شماره ستونهای مورد نظر را مشخص کنید.
2. استخراج و مرتبسازی مجدد دادهها
یکی از اصلیترین کاربردهای این فرمول، استخراج تنها ستونهای مورد نیاز از یک مجموعه داده بزرگ است. علاوه بر این، شما میتوانید ترتیب نمایش ستونها را نیز با تغییر ترتیب آرگومانهای شماره ستون، به راحتی تغییر دهید. این قابلیت برای تهیه گزارشهای مختلف یا آمادهسازی دادهها برای داشبوردها فوقالعاده مفید است.
3. انعطافپذیری در انتخاب ستونها
شما میتوانید ستونها را بر اساس شمارههای مثبت (از چپ) یا منفی (از راست) انتخاب کنید. این انعطافپذیری به ویژه زمانی که ساختار ستونهای شما ممکن است تغییر کند یا وقتی میخواهید به سادگی آخرین ستون یا ستونهای انتهایی را انتخاب کنید، بسیار کارآمد است.
4. کاهش پیچیدگی فرمولها
در بسیاری از سناریوها که پیش از این نیاز به ترکیب چندین فرمول یا استفاده از QUERY بود، فرمول CHOOSECOLS در گوگل شیت میتواند کار را به تنهایی و با کارایی بیشتری انجام دهد و در نتیجه، فرمولهای شما را سادهتر و قابل مدیریتتر میکند.
5. عملکرد پویا و خودکار
از آنجا که CHOOSECOLS یک فرمول آرایهای است، نیازی به کشیدن آن ندارید. نتیجه به صورت خودکار در سلولهای مجاور پخش میشود. همچنین، اگر دادههای اصلی شما تغییر کنند، خروجی CHOOSECOLS نیز به صورت خودکار بهروزرسانی خواهد شد.
نحوه استفاده از CHOOSECOLS: راهنمای گام به گام
برای درک بهتر نحوه عملکرد فرمول CHOOSECOLS در گوگل شیت، بیایید چند مثال عملی را بررسی کنیم.
مثال 1: انتخاب یک ستون خاص
فرض کنید دادههای شما در محدوده A1:D10 قرار دارند و میخواهید فقط ستون دوم (B) را استخراج کنید.
=CHOOSECOLS(A1:D10, 2)
این فرمول محتوای ستون B را از سطر 1 تا 10 در سلولهایی که فرمول را وارد کردهاید (مثلاً در E1) نمایش میدهد.
مثال 2: انتخاب چندین ستون به ترتیب دلخواه
اگر میخواهید ستونهای اول (A)، سوم (C) و دوم (B) را به همین ترتیب از محدوده A1:D10 انتخاب کنید:
=CHOOSECOLS(A1:D10, 1, 3, 2)
خروجی این فرمول ابتدا محتوای ستون A، سپس C و در نهایت B را نمایش خواهد داد.
مثال 3: استفاده از شماره ستونهای منفی
شماره ستونهای منفی از سمت راست محدوده شروع به شمارش میکنند. -1 به معنای آخرین ستون، -2 به معنای ستون یکی مانده به آخر و الی آخر است.
اگر میخواهید آخرین ستون (D) و ستون یکی مانده به آخر (C) را از محدوده A1:D10 انتخاب کنید:
=CHOOSECOLS(A1:D10, -1, -2)
این فرمول ستون D را در خروجی به عنوان اولین ستون و ستون C را به عنوان دومین ستون نمایش میدهد.
مثال 4: انتخاب ستونها با استفاده از آرایه متغیر
شما میتوانید شماره ستونها را در یک آرایه یا محدوده دیگری قرار دهید و آن را به عنوان آرگومان به CHOOSECOLS بدهید. این کار برای انتخاب پویا بسیار مفید است.
فرض کنید در سلول F1 عدد 1 و در G1 عدد 3 و در H1 عدد 2 را وارد کردهاید.
=CHOOSECOLS(A1:D10, F1:H1)
این فرمول نیز همانند مثال 2 عمل میکند، اما شماره ستونها را به صورت پویا از محدوده F1:H1 میخواند. این قابلیت برای ساخت داشبوردهای تعاملی که کاربر میتواند ستونهای نمایش داده شده را انتخاب کند، بسیار کاربردی است.
تکنیکهای پیشرفته با فرمول CHOOSECOLS
قدرت واقعی فرمول CHOOSECOLS در گوگل شیت زمانی آشکار میشود که آن را با سایر توابع گوگل شیت ترکیب کنید.
1. ترکیب CHOOSECOLS با FILTER
برای فیلتر کردن سطرها و سپس انتخاب ستونهای خاص:
=CHOOSECOLS(FILTER(A1:D10, C1:C10="مورد نظر"), 1, 4)
این فرمول ابتدا سطرهایی را که در ستون C مقدار “مورد نظر” دارند، فیلتر میکند و سپس از بین نتایج فیلتر شده، ستونهای 1 و 4 را برمیگرداند.
2. ترکیب CHOOSECOLS با SORT
برای مرتبسازی دادهها و سپس انتخاب ستونهای خاص:
=CHOOSECOLS(SORT(A1:D10, 2, TRUE), 1, 3)
این فرمول ابتدا محدوده A1:D10 را بر اساس ستون دوم (صعودی) مرتب میکند و سپس ستونهای 1 و 3 را از نتایج مرتب شده نمایش میدهد.
3. ترکیب CHOOSECOLS با UNIQUE
برای استخراج مقادیر منحصر به فرد از ستونهای انتخاب شده:
=UNIQUE(CHOOSECOLS(A1:D10, 2))
این فرمول ابتدا ستون دوم را انتخاب میکند و سپس فقط مقادیر منحصر به فرد (بدون تکرار) را از آن ستون نمایش میدهد.
4. انتخاب ستونها بر اساس نام هدر (Header Name)
اگرچه CHOOSECOLS مستقیماً بر اساس نام هدر کار نمیکند، میتوانید آن را با توابع دیگری مانند MATCH ترکیب کنید تا شماره ستون را به صورت پویا بر اساس نام هدر پیدا کنید.
=CHOOSECOLS(A1:D10, MATCH("نام_ستون", A1:D1, 0))
این فرمول ستونی را انتخاب میکند که هدر آن “نام_ستون” باشد. A1:D1 شامل هدرهای جدول شماست.
اشتباهات رایج و رفع اشکال
با وجود سادگی، ممکن است در استفاده از فرمول CHOOSECOLS در گوگل شیت با چند مشکل رایج مواجه شوید:
1. خطای #REF!
این خطا معمولاً زمانی رخ میدهد که شما یک شماره ستون را خارج از محدوده آرایه اصلی مشخص کرده باشید. به عنوان مثال، اگر آرایه شما A1:D10 (4 ستون) باشد و شما 5 را به عنوان شماره ستون وارد کنید، با این خطا مواجه خواهید شد. همچنین، اگر از اعداد منفی استفاده میکنید، مطمئن شوید که عدد منفی از تعداد کل ستونهای آرایه شما بزرگتر نباشد (مثلاً برای 4 ستون، نمیتوانید -5 را استفاده کنید).
راه حل: شماره ستونهای خود را بررسی کنید و مطمئن شوید که در محدوده معتبر آرایه اصلی قرار دارند.
2. فراموش کردن آرگومانها
CHOOSECOLS حداقل به دو آرگومان نیاز دارد: آرایه اصلی و حداقل یک شماره ستون. اگر یکی از اینها را فراموش کنید، با خطا مواجه خواهید شد.
راه حل: اطمینان حاصل کنید که هر دو آرگومان اصلی (آرایه و شماره ستون اول) را به درستی وارد کردهاید.
3. استفاده از آرگومانهای غیرعددی برای شماره ستون
آرگومانهای شماره ستون باید اعداد صحیح (مثبت یا منفی) باشند. اگر متن یا مقادیر غیرعددی دیگری را وارد کنید، فرمول کار نخواهد کرد.
راه حل: مطمئن شوید که شماره ستونها را به صورت عددی وارد میکنید. اگر از ارجاع سلولی استفاده میکنید، اطمینان حاصل کنید که آن سلول شامل یک عدد باشد.
مقایسه CHOOSECOLS با روشهای دیگر
قبل از معرفی فرمول CHOOSECOLS در گوگل شیت، روشهای دیگری برای انتخاب ستونها وجود داشت. بیایید مقایسهای سریع داشته باشیم:
1. کپی و چسباندن دستی
- CHOOSECOLS: پویا، خودکار، با تغییر دادههای اصلی بهروز میشود، زمانبر نیست.
- کپی/چسباندن: ایستا، نیاز به تکرار دستی دارد، با تغییر دادهها بهروز نمیشود، مستعد خطا.
2. فرمول QUERY
- CHOOSECOLS: سادهتر برای انتخاب ستونها، بدون نیاز به یادگیری SQL مانند.
- QUERY: قدرتمندتر برای فیلتر کردن پیچیده سطرها و تجمیع دادهها، اما برای صرفاً انتخاب ستونها ممکن است پیچیدهتر باشد. QUERY میتواند ستونها را بر اساس نام هدر انتخاب کند که CHOOSECOLS به تنهایی قادر به آن نیست.
3. ARRAYFORMULA با Column Index
گاهی اوقات از =ARRAYFORMULA({A:A, C:C}) برای انتخاب ستونها استفاده میشد.
- CHOOSECOLS: بسیار منعطفتر در انتخاب ترتیب ستونها و استفاده از ایندکسهای منفی.
- ARRAYFORMULA با Column Index: عمدتاً برای ستونهای متوالی یا با ارجاعات مستقیم به ستونها استفاده میشد که انعطاف کمتری در مرتبسازی مجدد یا استفاده از ایندکسهای پویا داشت.
در مجموع، برای وظیفه خاص “انتخاب و مرتبسازی مجدد ستونها”، فرمول CHOOSECOLS در گوگل شیت در اکثر موارد بهترین و سادهترین راه حل است.
مثالهای کاربردی و سناریوها
بیایید چند سناریوی واقعی را که فرمول CHOOSECOLS در گوگل شیت میتواند در آنها مفید باشد، بررسی کنیم:
1. تهیه گزارش خلاصه
فرض کنید یک شیت داده از فروش دارید که شامل ستونهای “تاریخ”، “نام محصول”، “دسته بندی”، “مقدار”، “قیمت واحد”، “مشتری” و “روش پرداخت” است. برای یک گزارش روزانه، فقط به “تاریخ”، “نام محصول” و “مقدار” نیاز دارید.
=CHOOSECOLS(A:G, 1, 2, 4)
این فرمول یک جدول خلاصه با ستونهای مورد نظر شما ایجاد میکند.
2. آمادهسازی داده برای نمودار
اگر برای یک نمودار خاص، فقط نیاز به دو ستون از دادهها دارید که در یک مجموعه داده بزرگتر پراکنده شدهاند، میتوانید از CHOOSECOLS استفاده کنید تا آنها را کنار هم بیاورید.
=CHOOSECOLS(Sheet1!A:Z, 5, 12)
این فرمول ستونهای 5 و 12 را از Sheet1 استخراج کرده و آماده رسم نمودار میکند.
3. پنهان کردن اطلاعات حساس
اگر مجموعهای از دادهها شامل اطلاعات حساسی مانند شماره کارت اعتباری یا شماره ملی است، میتوانید از CHOOSECOLS استفاده کنید تا فقط ستونهای بدون اطلاعات حساس را به اشتراک بگذارید یا در یک نمای عمومی نمایش دهید.
=CHOOSECOLS(A:Z, 1, 2, 3, 5, 7)
با این کار، ستونهای حاوی اطلاعات حساس (مانند ستون 4 و 6) از خروجی حذف میشوند.
نتیجهگیری
فرمول CHOOSECOLS در گوگل شیت ابزاری قدرتمند و بسیار کارآمد است که نحوه کار ما با دادهها را در گوگل شیت متحول کرده است. سادگی، انعطافپذیری و قابلیت ترکیب آن با سایر توابع، CHOOSECOLS را به یک انتخاب عالی برای استخراج، مرتبسازی مجدد و ارائه دادهها به شیوهای تمیز و متمرکز تبدیل میکند. با تسلط بر این فرمول، میتوانید به طور قابل توجهی کارایی خود را در تحلیل دادهها افزایش دهید، فرمولهای پیچیده را ساده کنید و گزارشهای دقیقتر و متناسبتری ایجاد نمایید. امیدواریم این آموزش جامع به شما کمک کرده باشد تا این ابزار ارزشمند را به طور کامل درک کرده و در پروژههای خود به کار بگیرید.
یک سوال: اگر بخواهم محدودهای از ستونها را انتخاب کنم (مثلاً از ستون ۲ تا ۱۰) باید تکتک عدد بدهم یا راه سادهتری هم هست؟
سپیده جان، میتوانید از تابع SEQUENCE(1, 9, 2) در داخل CHOOSECOLS استفاده کنید تا اعداد ۲ تا ۱۰ را به صورت خودکار برای شما تولید کند و نخواهید دستی تایپ کنید.
آموزش گام به گامتون خیلی خوب بود. منتظر ترفندهای بیشتری از گوگل شیت هستیم.
من برای گزارشهای EQ (هوش هیجانی) تیمم از این فرمول استفاده کردم و چقدر کارم رو سریع کرد! قبلاً کلی وقت صرف هاید کردن ستونها میکردم.
نوشین جان، هاید کردن ستونها راهکار موقتی است، اما CHOOSECOLS یک دیتای تمیز و اختصاصی برای شما میسازد که برای تحلیلهای عمیقتر بسیار مناسبتر است.
آیا این فرمول روی عملکرد (Performance) شیت تأثیر منفی نمیذاره اگه حجم دادهها خیلی زیاد باشه؟
آرش عزیز، برعکس؛ چون این تابع جزو توابع بومی و جدید گوگل است، بسیار بهینه عمل میکند. اما همیشه در شیتهای با بیش از ۱۰۰ هزار ردیف، بهتر است تعداد فرمولهای آرایهای را مدیریت کنید.
یک دنیا ممنون. به خصوص بخش مثالهای عملی خیلی به درکم از فرمول کمک کرد.
خواهش میکنم سمیرا جان. هدف ما در 9persona سادهسازی مفاهیم پیچیده برای کاربردهای واقعی بیزنسی است.
من از این فرمول در کنار تابع SORT استفاده کردم و نتیجه فوقالعاده بود. برای مرتبسازی لیست مشتریان بر اساس اولویت خرید خیلی کاربردیه.
آیا این فرمول محدودیت در تعداد ستونهای انتخابی دارد؟ مثلاً میتوانیم ۵۰ ستون را همزمان انتخاب کنیم؟
محدودیت خاصی جز محدودیت کلی سلولهای گوگل شیت وجود ندارد شیوا جان. شما میتوانید هر تعداد ایندکس که نیاز دارید را به فرمول معرفی کنید.
ممنون. لطفاً در مورد فرمول CHOOSEROWS هم یک مقاله بنویسید. فکر میکنم مکمل این بحث باشه.
حتماً بابک عزیز. تابع CHOOSEROWS هم دقیقاً منطقی مشابه دارد اما برای سطرها. به زودی مقالهای جامع در این باره منتشر خواهیم کرد.
برای منی که به عنوان ادمین سیستم فعالیت میکنم، یادگیری این توابع جدید باعث افزایش بهرهوری تیم میشه. ممنون از آموزشهای به روزتون.
خوشحالیم که مفید بوده پریسا جان. ارتقای مهارتهای فنی ادمینها مستقیماً روی نظم کل سازمان تأثیر مثبت دارد.
خیلی عالی بود. من همیشه با ستونهای اضافی در خروجیهای CRM مشکل داشتم. این فرمول نجاتبخش بود.
یک سوال فنی؛ آیا میتوانیم از اعداد منفی هم برای انتخاب ستونها استفاده کنیم؟ مثلاً برای انتخاب از آخر به اول؟
هوشمندانه بود ساناز جان! بله، گوگل شیت از اعداد منفی هم پشتیبانی میکند. مثلاً عدد 1- به معنای آخرین ستون و 2- به معنای یکی مانده به آخر است.
آیا این تابع در نسخههای قدیمی اکسل هم کار میکند یا فقط مختص گوگل شیت است؟
حامد عزیز، این تابع در نسخه Microsoft 365 و اکسل ۲۰۲۱ به بعد اضافه شده است. در نسخههای قدیمیتر اکسل باید از ترکیب توابع INDEX و SEQUENCE استفاده کنید که کمی پیچیدهتر است.
من برای تحلیل پرسشنامههای Enneagram از گوگل شیت استفاده میکنم. این فرمول برای استخراج پاسخهای مربوط به هر تیپ شخصیتی از یک دیتابیس بزرگ واقعاً عالیه.
چه کاربرد جالبی الناز جان! بله، وقتی با دادههای روانشناختی و تعداد زیاد سوالات طرف هستید، جداسازی ستونهای مرتبط با هر شاخص با این فرمول بسیار سریعتر انجام میشود.
آیا راهی هست که به جای دادن شماره ستون به صورت دستی، نام ستون رو بدیم؟ چون ممکنه در آینده جای ستونها در فایل اصلی عوض بشه.
مهدی عزیز، به صورت مستقیم خیر، اما میتوانید با ترکیب تابع MATCH در ورودیهای CHOOSECOLS، شماره ستون را بر اساس نام آن به صورت داینامیک پیدا کنید. این هوشمندانهترین روش برای ساخت گزارشهای منعطف است.
مقاله بسیار جامع و کاربردی بود. مخصوصاً بخش مربوط به اشتباهات رایج. برای من که تازه با گوگل شیت کار میکنم عالی بود.
اگر در ایندکسها عددی بزرگتر از تعداد ستونهای منبع بدهیم، چه اتفاقی میافتد؟ ارور میدهد؟
بله آقا رضا، در این صورت با خطای #VALUE! مواجه میشوید. برای جلوگیری از این مشکل، پیشنهاد میشود همیشه محدوده منبع را دقیق چک کنید یا از تابع IFERROR برای مدیریت خطا استفاده کنید.
من به عنوان یک بیزنس کوچ همیشه به دنبال راههایی برای سادهسازی گزارشهای تیمم هستم. این فرمول میتونه خطای انسانی رو در کپی-پیستهای روزانه خیلی کم کنه.
دقیقاً همینطور است خانم علوی. در نگاه بیزنس کوچی، اتوماسیون فرآیندهای کوچک مثل همین مدیریت دادهها، زمان آزاد بیشتری برای تصمیمگیریهای استراتژیک به مدیران میدهد.
آیا میتوانیم از این فرمول به صورت ترکیبی با تابع FILTER استفاده کنیم؟ یعنی اول دادهها فیلتر بشن و بعد ستونهای خاصی انتخاب بشن؟
نیما جان، ترکیب این دو تابع فوقالعاده است! شما میتوانید تابع FILTER را به عنوان آرگومان اول (Array) در CHOOSECOLS قرار دهید. این کار برای ساخت داشبوردهای مدیریتی پویا بسیار کاربردی است.
ممنون از مقاله خوبتون. من در گزارشهای مالیام نیاز دارم که ستونها رو جابجا کنم. مثلاً ستون ۵ بیاد اول. آیا با این فرمول ترتیب هم عوض میشه؟
بله سارا جان، یکی از بزرگترین مزایای CHOOSECOLS همین است. شما میتوانید ایندکسها را به هر ترتیبی که میخواهید وارد کنید، مثلاً (5, 1, 2) و فرمول دقیقاً به همان ترتیب ستونها را برای شما مرتب میکند.
واقعاً جای خالی این فرمول در گوگل شیت حس میشد. من قبلاً برای انتخاب ستونها از آکولاد و ویرگول استفاده میکردم که خیلی گیجکننده بود. آیا CHOOSECOLS سرعت پردازش بالاتری نسبت به روش قدیمی دارد؟
امیرحسین عزیز، دقیقاً همینطور است. روش قدیمی استفاده از Array Literal ({}) برای حجم دادههای بالا کمی سنگین بود. CHOOSECOLS نه تنها خوانایی فرمول را بالا میبرد، بلکه به دلیل ساختار بهینهاش، مدیریت حافظه را در شیتهای سنگین بهتر انجام میدهد.