کاربرد تابع WARPCOLS در اکسل تبدیل کردن یک ستون از دادهها به چند ستون و به عبارت دیگر تبدیل کردن آرایهی یک بعدی به چند بعدی است. به همین صورت میتوان از تابع دیگری به نام WARPROWS برای تبدیل کردن یک ردیف از سلولها به چند ردیف استفاده کرد.
در ادامه با چند مثال ساده شیوهی استفاده از تابع WARPCOLS و WARPROWS اکسل را توضیح میدهیم. با سیارهی آیتی همراه باشید.
روش استفاده از تابع WRAPCOLS در اکسل
سینتکس و فرمول کلی تابع WARPCOLS شامل ۳ آرگومان است:
=WRAPCOLS(a,b,c)
- آرگومان اول ستون و آرایهای که میخواهید آن را به چند ستون یا آرایه تبدیل کنید.
- آرگومان دوم حداکثر تعداد عناصر در هر ستون است و وارد کردن آن الزامی است.
- آرگومان سوم مقداری است که در صورت خالی ماندن آخرین ستون، به جای عناصر خالی قرار میگیرد و یک آرگومان اختیاری است. اگر آرگومان سوم را وارد نکنید، ارور #N/A در سلولهای خالی قرار میگیرد.
و اما مثالی ساده از کاربرد تابع WAPCOLS: فرض کنید که در ستون A نام کارمندان درج شده و میخواهید افراد را به گروههای ۶ نفره تقسیم کنید.
برای این کار از فرمول زیر استفاده میکنیم که آرگومان اول محدوده سلولهای A1 تا A71 و در واقع سلولهای حاوی نام افراد است و آرگومان بعدی عدد 6 است. برای خالی گذاشتن سلولهای باقیمانده از آخرین گروه ۶ نفره نیز آرگومان سوم را "" وارد میکنیم:
=WRAPCOLS(A1:A71,6,"")
این فرمول در سلول C3 درج شده و لذا سلولهای C3 تا C8 حاوی نام اولین گروه 6 نفره از کارمندان خواهد شد و به همین ترتیب در سلولهای D3 تا D8 نام افراد گروه ۶ نفرهی بعدی قرار میگیرد. در واقع ترتیب سلولها به ترتیب سلولهای آرایهی اصلی است.
با توجه به اینکه ۷۱ مضربی از ۶ نیست، گروه آخر کامل نخواهد شد و از "" برای پر کردن آن استفاده میشود. لذا آخرین سلول خالی میماند.
حین کار با تابع WARPCOLS به ۴ نکته توجه کنید:
و اما یک نکتهی مهم: دقت کنید که اگر بعضی از سلولهای ستون موردنظر شما خالی باشد، این سلولها به عنوان عدد صفر در نظر گرفته میشود و در واقع پس از تقسیم شدن ستون موردنظر به چند ستون، سلولهای خالی با سلولهای حاوی عدد 0 جایگزین میشود.
تابع WARPCOLS یک تابع دینامیک است و این یعنی اگر در سلولهای ستون اصلی، دادهها تغییر کند، در سلولهای آرایهی دو بعدی نیز همان تغییرات انجام میشود.
از طرفی دقت کنید که از این تابع در سلولهای معمولی استفاده کنید و در فرمول نویسی در سلولهای محدودهای از سلولها که به جدول تبدیل شده، استفاده نکنید.
برای حالت برعکس یعنی تبدیل کردن چند ستون از دادهها به یک ستون طولانی داده، میتوانید از تابع TOCOL اکسل استفاده کنید.
فرمول تابع WRAPROWS در اکسل
در نرمافزار Excel زمانی که یک ستون یا ردیف طولانی از دادهها دارید و میخواهید آن را به ردیفهای متعدد تبدیل کنید، میتوانید از تابع WRAPROWS استفاده کنید. فرمول این تابع درست مشابه تابع WARPCOLS است و سه آرگومان دارد:
=WRAPROWS(a,b,c)
آرگومان اول آرایهی ورودی است و آرگومان بعدی، طول هر یک ردیفهای آرایهی خروجی است. آرگومان سوم اختیاری است و برای پر کردن سلولهای خالی مانده از آخرین ردیف کاربرد دارد. لذا برای جلوگیری از نمایش ارور #N/A بهتر است آرگومان سوم را خالی نگذارید.
برای توضیح روش فرمول نویسی تابع WARPROWS همان مثال قبلی را بررسی میکنیم: هدف تبدیل کردن آرایهی یکبعدی و طولانی به ردیفهایی با ۷ سلول است.
بنابراین فرمول موردنیاز به صورت زیر است:
=WRAPROWS(A1:A71,7,"")
نتیجه را در تصویر زیر مشاهده میکنید. ترتیب سلولها به این صورت است که در ردیف اول، ۷ سلول اول ستون A قرار گرفته و در ردیف بعدی نیز ۷ سلول بعدی ستون A قرار میگیرد.
نکاتی که در مورد تابع WARPCOLS ذکر شد، در مورد WARPSROWS نیز مصداق دارد. برای تبدیل کردن چند ردیف داده به یک ردیف طولانی از سلولها میتوانید از تابع TOROWS استفاده کنید.
استفاده از WARPCOLS و WARPROWS به صورت دینامیک
همانطور که اشاره کردیم این توابع اکسل به صورت دینامیک عمل میکنند و این یعنی میتوانید به جای آرگومانها از سلولهای دیگر استفاده کنید. به عنوان مثال به جای آرگومان دوم که تعداد عناصر در هر ردیف یا ستون است، میتوانید آدرس سلول دیگری را بدهید که تعداد عناصر در آن درج شده است. به مثال زیر توجه کنید:
یکی از نیازهای کاربران اکسل، تبدیل کردن ستون یا ردیف طولانی از دادههایی است که بعضی از سلولها بدون عدد و عبارت و در واقع خالی است. تابع WARPCOLS و WARPROWS به جای سلول خالی از عدد 0 استفاده میکند که شاید مطلوب نباشد. برای حل این مشکل میتوانید آدرس محدودهی سلولها را با استفاده از یک . تایپ کنید. به عنوان مثال در فرمول زیر از عملگر Trim Ref یا همان نقطه استفاده شده و منظور از A:.A، تمام سلولهای غیرخالی از ستون A است:
=WRAPCOLS(A:.A,6,"")
لذا با وارد کردن فرمول فوق، نیازی به مشخص کردن اولین و آخرین سلول پر شده از ستون A وجود ندارد و اگر در میان سلولها نیز موارد خالی وجود داشته باشد، در نظر گرفته نمیشود.
نکتهی دیگر این است که استفاده از A:.A موجب دینامیک و پویا شدن فرمول میشود و اگر سلولی را در انتهای محدودهی سلولهای پر شدهی قبلی، پر کنیم، به صورت خودکار آرایهی دو بعدی که خروجی فرمول است، آپدیت میشود.
howtogeekسیارهی آیتی