فهرست مطالب
اگر تنها راهی که برای ایجاد فیلتر در برگههای Google میدانید، ابزار استاندارد است، یک سورپرایز برای شما دارم. :) با من تابع FILTER را بررسی کنید. فرمولهای آماده زیادی وجود دارد که میتوانید قرض بگیرید، همراه با یک ابزار قدرتمند جدید که مجموعه ابزارهای فیلتر را به شدت تکمیل میکند.
مدتی پیش نحوه فیلتر کردن در Google Sheets با استفاده از ابزار استاندارد را توضیح دادیم. ما به نحوه فیلتر کردن بر اساس مقدار و شرایط اشاره کردیم. با این حال، صفحات گسترده همیشه بیش از آنچه ما می دانیم در خود دارند. و این بار میخواهم تابع فیلتر برگههای Google را با شما بررسی کنم.
شما آن را در اکسل پیدا نخواهید کرد، بنابراین قطعا ارزش بررسی کردن را دارد.
سیستکس تابع فیلتر کاربرگنگار Google
FILTER در کاربرگنگار Google دادههای شما را اسکن میکند و اطلاعات مورد نیاز را که با معیارهای شما مطابقت دارد، برمیگرداند.
برخلاف فیلتر استاندارد کاربرگنگار Google، این تابع این کار را انجام نمیدهد. با داده های اصلی خود هر کاری انجام دهید سطرهای یافت شده را کپی می کند و آنها را در هر کجا که فرمول را می سازید قرار می دهد.
این نحو بسیار آسان است زیرا هر آرگومان برای خود صحبت می کند:
=FILTER(range, condition1, [condition2, ...])- محدوده داده هایی است که می خواهید فیلتر کنید. الزامی است.
- شرایط 1 یک ستون یا ردیف به همراه معیارهای TRUE/FALSE است که باید تحت آن قرار گیرد. الزامی است.
- شرایط2،... ، و غیره، مخفف ستون ها/ردیف ها و/یا معیارهای دیگر هستند. اختیاری.
توجه. هر یک شرط باید به اندازه محدوده باشد.
توجه داشته باشید. اگر از چند شرط استفاده می کنید، همه آنها باید برای ستون ها یا ردیف ها باشند. عملکرد فیلتر برگههای Google شرایط مختلط را نمیدهد.
اکنون، با در نظر گرفتن این یادداشتها، بیایید ببینیم که چگونه آرگومانها به فرمولهای مختلف شکل میگیرند.
نحوه استفاده از تابع FILTER در Google Sheets
میخواهم همه را به شما نشان دهم مثالها هنگام فیلتر کردن یک جدول کوچک که در آن برخی سفارشها را دنبال میکنم:
جدول شامل 20 ردیف با انواع مختلف داده است که برای یادگیری عملکرد عالی است.
11>نحوه فیلتر کردن در برگههای Google بر اساس متن
مثال 1. متن دقیقاً
ابتدا، من از تابع میخواهم فقط سفارشهایی را نشان دهد که دیر اجرا میشوند. من محدوده ای را برای فیلتر وارد می کنم — A1:E20 — و سپس شرط را تنظیم می کنم — ستون E باید برابر با Late :
=FILTER(A1:E20,E1:E20="Late")
<3 باشد>
مثال 2. متن دقیقاً نیست
من میتوانم از تابع بخواهم همه سفارشها را دریافت کند، مگر آنهایی که دیر شدهاند. برای آن، من به یک عملگر مقایسه ویژه () نیاز دارم که به معنی معادل نیست :
=FILTER(A1:E20,E1:E20"Late")
مثال 3. متن حاوی
اکنون میخواهم به شما نشان دهم که چگونه تابع فیلتر برگههای Google را بر اساس تطابق جزئی بسازید. یا به عبارت دیگر — اگر متن حاوی باشد.
آیا متوجه شده اید که شناسه های سفارش در ستون A حاوی اختصارات کشور در انتهای خود هستند؟ بیایید یک فرمول برای بازیابی ایجاد کنیمسفارشهایی که از کانادا ارسال شدهاند ( CA ).
به طور معمول، شما از نویسههای عام برای این کار استفاده میکنید. اما وقتی صحبت از فرمول FILTER می شود، توابع FIND و SEARCH هستند که به این روش عمل می کنند.
نکته. اگر ترجیح میدهید هنگام فیلتر کردن بر اساس تکرار کلمات ساده، از قرار دادن توابع دیگر خودداری کنید، به راحتی افزونه توضیح داده شده در پایان را امتحان کنید.
توجه داشته باشید. اگر حروف متن مهم است، از FIND استفاده کنید، در غیر این صورت، SEARCH را انتخاب کنید.
عملکرد SEARCH برای مثال من به خوبی انجام می شود زیرا حروف متن نامربوط است:
=SEARCH(search_for, text_to_search, [starting_at])- search_for متن است من می خواهم پیدا کنم. بسیار مهم است که آن را با دو گیومه بپیچید: "ca" . مورد نیاز است.
- text_to_search محدوده ای است که می توان متن مورد نیاز را اسکن کرد. ضروری. برای من A1:A20 است.
- starting_at موقعیت شروع جستجو را نشان می دهد — تعداد کاراکتری که باید از آن شروع به جستجو کرد. این کاملا اختیاری است اما باید از آن استفاده کنم. ببینید، همه شناسههای سفارش از حروف و اعداد تشکیل شدهاند، به این معنی که ممکن است یک جفت CA در جایی در این بین رخ دهد. الگوی یکسان همه شناسه ها به من این امکان را می دهد که از کاراکتر 8 شروع به جستجوی CA بکنم.
بعد از جمع آوری تمام این قسمت ها با هم، به نتیجه دلخواه می رسم:
=FILTER(A1:E20,SEARCH("ca",A1:A20,8))
نحوه فیلتر کردن بر اساس تاریخ و زمان در Google Sheets
فیلتر کردن بر اساس تاریخ و زمان نیز نیازمند استفاده ازتوابع اضافی بسته به معیارهایتان، ممکن است لازم باشد DAY، MONTH، YEAR یا حتی DATE و TIME را در عملکرد اصلی فیلتر برگههای Google جاسازی کنید.
نکته. اگر با این موارد آشنا نیستید یا همیشه مسائل را با قرارها بهم میزنید - جای نگرانی نیست. ابزاری که در پایان توضیح داده شد به هیچ وجه نیازی به عملکرد ندارد. 13 18>
توجه. این تنها در صورتی کار میکند که سلولهای شما دارای واحدهای زمانی همراه با تاریخ نباشند (شما میتوانید صفحهگسترده آنها را بهطور پیشفرض اضافه کنید). برای اطمینان، کافی است یک سلول را انتخاب کنید و آنچه در نوار فرمول ظاهر می شود را بررسی کنید:
اگر زمان وجود دارد و حذف آن گزینه ای نیست، باید از QUERY استفاده کنید. یا یک وضعیت پیچیده تر در عملکرد فیلتر برگه های Google شما، مانند این:
=FILTER(A1:E20,C1:C20>=DATE(2020,1,9),C1:C20
نکته. در زیر در مورد شرایط متعدد با جزئیات بیشتر صحبت می کنم.
مثال 2. تاریخ شامل
اگر فقط به یک ماه یا یک سال خاص علاقه دارید، می توانید با توابع MONTH و YEAR به نتیجه برسید. محدوده را با تاریخ ها درست در آن قرار دهید ( C1:C20 ) و تعداد ماه (یا سال) را مشخص کنید که باید برابر با ( =1 ):
=FILTER(A1:E20,MONTH(C1:C20)=1)
مثال 3. تاریخ قبل/بعد است
برای دریافت داده هایی که قبل یا بعد از تاریخ مشخص شده قرار می گیرند، به DATE نیاز دارید تابع و چنین عملگرهای مقایسه ای بزرگتراز (>)، بزرگتر یا مساوی با (>=)، کمتر از (<)، کمتر یا مساوی (<=).
در اینجا سفارشاتی که در و بعد از 1 ژانویه 2020:
=FILTER(A1:E20,D1:D20>=DATE(2020,1,1))
البته، می توانید به راحتی DATE را با MONTH یا YEAR در اینجا جایگزین کنید. نتیجه با نتیجه فوق تفاوتی نخواهد داشت:
=FILTER(A1:E20,YEAR(D1:D20)>=2020)
مثال 4. زمان
هنگامی که در Google Sheets بر اساس زمان فیلتر می شود، مته دقیقاً مشابه با تاریخ. شما از تابع TIME اضافی استفاده می کنید.
به عنوان مثال، برای دریافت فقط روزهای دارای مهر زمانی بعد از ساعت 2:00 بعد از ظهر، فرمول این خواهد بود:
=FILTER(A1:B10,A1:A10>TIME(14,0,0))
با این حال، وقتی صحبت از استفاده از تابع HOUR می شود (مانند MONTH برای تاریخ ها)، بازی کمی تغییر می کند. زمان در صفحات گسترده به اندازه کافی دشوار است، بنابراین چند تنظیم لازم است.
برای برگرداندن همه ردیفهای دارای مهر زمانی بین 2:00 PM و 12:00 PM ، این کار را انجام دهید. این:
- محدوده را با مهرهای زمانی ( A1:A10 ) در یک تابع HOUR جداگانه محصور کنید. این نشان می دهد که کجا باید نگاه کنید.
- سپس تابع HOUR دیگری را برای تنظیم زمان اضافه کنید.
=FILTER(A1:B10,HOUR(A1:A10)>=HOUR("2:00:00 PM"))
نکته . ببینید که نتیجه شامل 12:41 PM نمی شود؟ دلیل آن این است که صفحه گسترده آن را به عنوان 00:41 که کمتر از 2:00 است، در نظر می گیرد.
اگر راه حل ظریف تری پیدا کردید، لطفاً آن را در بخش نظرات زیر به اشتراک بگذارید.
نحوه فیلتر کردن در کاربرگنگار Google با استفاده از مراجع سلولی
هر بار که فیلتر کاربرگنگار Google ایجاد میکنیدفرمول، باید شرط را به این صورت وارد کنید: یک کلمه یا قسمت آن، تاریخ، و غیره. مگر اینکه با مراجع سلولی آشنا باشید.
آنها موارد زیادی را در مورد فرمول ها آسان می کنند. زیرا به جای تایپ کردن همه چیز، میتوانید به سادگی به سلولهای دارای شرایط مراجعه کنید.
یادتان میآید که چگونه تمام سفارشهایی را که با تأخیر انجام میشوند، جستجو کردم؟ من می توانم به سرعت به E4 با متن Late مراجعه کنم تا همین کار را انجام دهم:
=FILTER(A1:E20,E1:E20=E4)
نتیجه اصلاً متفاوت نخواهد بود:
می توانید این کار را با تمام فرمول های ذکر شده تکرار کنید. به عنوان مثال، از افزودن توابع بیشتری مانند DATE خودداری کنید و فقط به سلول با تاریخ مورد علاقه مراجعه کنید:
=FILTER(A1:E20,C1:C20=C15)
نکته. مراجع سلولی همچنین به شما امکان میدهند از صفحه دیگری فیلتر کنید. فقط باید نام برگه را بیاورید:
=FILTER(Orders!A1:E20,Orders!C1:C20=Orders!C15)
فرمولهای Google Sheets FILTER با چندین معیار
در حالی که من قبلاً از یک شرط در همه فرمولهای فیلتر کاربرگنگار Google استفاده میکردم، احتمال آن بیشتر است. که باید یک جدول را با چند شرط در یک زمان فیلتر کنید.
مثال 1. IS BETWEEN logic
برای یافتن تمام ردیف هایی که بین دو عدد/تاریخ/زمان قرار می گیرند، گزینه اختیاری است. آرگومان های تابع مفید خواهند بود - شرایط2 ، شرایط3 ، و غیره. شما فقط هر بار همان محدوده را کپی می کنید اما با یک شرط جدید.
ببین، من فقط سفارشهایی را برمیگردانم که بیشتر از 250 دلار اما کمتر از 350 دلار قیمت دارند:
=FILTER(A1:E20,B1:B20>=250,B1:B20<350)
مثال 2. یا منطق درعملکرد فیلتر برگههای Google
متأسفانه، برای دریافت تمام ردیفهایی که حاوی رکوردهای مختلف در یک ستون مورد علاقه هستند، روش قبلی انجام نمیشود. بنابراین چگونه میتوانم همه سفارشهایی را که هم در راه هستند و هم با تأخیر بررسی کنم؟
اگر روش قبلی را امتحان کنم و وضعیت هر سفارش را به یک شرط جداگانه وارد کنم، خطای #N/A را دریافت میکنم:
بنابراین، برای تنظیم صحیح منطق OR در تابع FILTER، باید این دو معیار را در یک شرط جمع کنم:
=FILTER(A1:E20,(E1:E20="Late")+(E1:E20="On the way"))
افزودن فیلتر به Google Sheets به چندین ستون
چیزی که حتی از اعمال چند شرط برای یک ستون محتملتر است، ایجاد فیلتری در Google Sheets برای چندین ستون است.
آرگومان ها همه یکسان هستند. اما هر بخش جدید از فرمول به یک محدوده جدید با معیارهای خاص خود نیاز دارد.
بیایید سعی کنیم تابع FILTER در برگههای Google سفارشاتی را که تحت همه قوانین زیر قرار دارند برگردانیم:
- ارزش آنها باید 200-400 دلار باشد:
A1:E20,B1:B20>=200,B1:B20<=400
- در ژانویه 2020 موعد مقرر می شود:
MONTH(C1:C20)=1
- و هنوز در راه هستند:
E1:E20="on the way"
همه این قسمت ها را کنار هم قرار دهید و فرمول فیلتر برگه های Google شما برای چندین ستون آماده است:
=FILTER(A1:E20,B1:B20>=200,B1:B20<=400,MONTH(C1:C20)=1,E1:E20="on the way")
روشی بدون فرمول برای فیلتر پیشرفته Google Sheets
عملکرد FILTER بسیار عالی است، اما گاهی اوقات ممکن است بیش از حد باشد. پیگیری همه آرگومانها، جداکنندهها، توابع تودرتو و غیره میتواند بسیار گیجکننده و زمانبر باشد.مصرف کننده است.
خوشبختانه، ما راه حل بهتری داریم که هم از عملکرد فیلتر برگه های Google و هم از ابزار استاندارد آنها فراتر می رود - چندین VLOOKUP مطابقت دارد.
از نام آن متحیر نشوید. شبیه تابع Google Sheets VLOOKUP است زیرا منطبقات را جستجو می کند. درست مانند عملکرد FILTER. همانطور که در بالا انجام دادم.
در اینجا 5 مزیت اصلی ابزار نسبت به عملکرد فیلتر برگههای Google آمده است:
- شما برنده شدید نباید در مورد اپراتورها برای شرایط مختلف فکر کنید — فقط یکی را از لیست انتخاب کنید:
من واقعاً شما را تشویق می کنم که Multiple را نصب کنید VLOOKUP مطابقت دارد و آن را اجرا کنید. برای بررسی بیشتر گزینه های آن، از صفحه آموزشی آن دیدن کنید یا یک ویدیوی آموزشی ویژه را تماشا کنید: