معرفی تابع COUNTA
تابع COUNTA در اکسل برای شمارش سلولهای «خالی نبودن» استفاده میشود. یعنی هر سلولی که هر نوع دادهای داخل آن باشد، توسط این تابع شمرده میشود؛ چه عدد باشد، چه متن، چه تاریخ، چه مقدار منطقی مثل TRUE یا FALSE، چه خطا، و حتی فرمولی که نتیجه آن یک متن خالی باشد.
کاربرد اصلی این تابع زمانی است که میخواهیم بدانیم چند سلول از یک محدوده پر شدهاند. مثلا اگر لیستی از نام دانشآموزان، محصولات، سفارشها یا فرمهای ثبتنام داشته باشیم، با COUNTA میتوانیم تعداد موارد واردشده را سریع به دست آوریم.
مثال ساده: فرض کنید نام شرکتکنندگان یک دوره آموزشی در سلولهای A2 تا A20 وارد شده است. برای شمارش تعداد نامهای واردشده از فرمول زیر استفاده میکنیم:
=COUNTA(A2:A20)
اگر در این محدوده ۱۵ سلول پر باشد، نتیجه تابع عدد ۱۵ خواهد بود.
کاربردهای اصلی تابع COUNTA
- شمارش تعداد سلولهای پر در یک محدوده
- محاسبه تعداد رکوردهای ثبتشده در یک لیست یا جدول
- بررسی کامل بودن اطلاعات فرمها و فایلهای ورود داده
- شمارش تعداد نامها، کدها، تاریخها یا توضیحات واردشده
- ساخت داشبوردهای ساده برای نمایش تعداد موارد ثبتشده
- کنترل کیفیت دادهها و پیدا کردن ردیفهای ناقص
- ترکیب با توابعی مثل IF، SUM، COUNTIF، AND، OR و XLOOKUP برای ساخت فرمولهای کاربردیتر
ساختار (Syntax)
ساختار انگلیسی تابع COUNTA به شکل زیر است:
=COUNTA(value1, value2, ...)
اگر تنظیمات اکسل شما از جداکننده نقطهویرگول استفاده میکند، ساختار را میتوانید به این شکل در نظر بگیرید:
=COUNTA(مقدار1; مقدار2; ...)
در این تابع میتوانید یک محدوده، چند سلول جداگانه، چند محدوده مختلف یا ترکیبی از همه آنها را وارد کنید.
آرگومانها
value1 / مقدار اول
این آرگومان اجباری است. در این بخش باید اولین سلول، محدوده یا مقدار موردنظر برای شمارش را وارد کنید. مثلا میتواند یک محدوده مانند A2:A20 یا یک سلول مثل B5 باشد.
value2 / مقدار دوم
این آرگومان اختیاری است. اگر بخواهید چند سلول یا محدوده جداگانه را با هم بشمارید، میتوانید آرگومانهای بیشتری اضافه کنید. در نسخههای جدید اکسل، تابع COUNTA تا ۲۵۵ آرگومان را پشتیبانی میکند.
value3 تا value255 / مقادیر بعدی
این آرگومانها نیز اختیاری هستند و زمانی کاربرد دارند که دادههای شما در چند محدوده جدا از هم قرار گرفته باشند. مثلا میتوانید تعداد سلولهای پر در ستون نام، ستون ایمیل و ستون شماره تماس را با یک فرمول بشمارید.
مثالهای ساده و پایه
مثال ۱: شمارش سلولهای پر در یک ستون
فرض کنید در ستون A نام مشتریان وارد شده است و میخواهید بدانید چند مشتری در لیست ثبت شدهاند.
=COUNTA(A2:A100)
این فرمول تعداد سلولهای غیرخالی از A2 تا A100 را میشمارد.
مثال ۲: شمارش سلولهای پر در چند ستون
فرض کنید اطلاعات نام، نام خانوادگی و شماره تماس افراد در ستونهای A تا C قرار دارد. برای شمارش همه سلولهای پر در این محدوده از فرمول زیر استفاده میکنیم:
=COUNTA(A2:C20)
اگر در این محدوده متن، عدد یا هر نوع داده دیگری وجود داشته باشد، COUNTA آن را محاسبه میکند.
مثال ۳: شمارش چند محدوده جداگانه
گاهی دادهها در چند بخش جدا هستند. مثلا اطلاعات ثبتنام در دو محدوده A2:A20 و D2:D20 قرار دارد.
=COUNTA(A2:A20;D2:D20)
این فرمول تعداد سلولهای پر در هر دو محدوده را با هم جمع میکند.
مثال ۴: شمارش سلولهای پر در کل یک ستون
اگر بخواهید کل ستون A را بررسی کنید، میتوانید از فرمول زیر استفاده کنید:
=COUNTA(A:A)
توجه کنید اگر ردیف عنوان هم در ستون وجود داشته باشد، آن هم شمرده میشود. پس در بسیاری از موارد بهتر است محدوده را از ردیف دوم شروع کنید.
مثالهای کاربردی و واقعی
مثال ۱: شمارش تعداد سفارشهای ثبتشده
فرض کنید شماره سفارشها در ستون A قرار دارند. برای اینکه بدانید چند سفارش ثبت شده است، از فرمول زیر استفاده کنید:
=COUNTA(A2:A500)
این فرمول برای گزارشهای فروش، انبارداری و پیگیری سفارشها بسیار کاربردی است.
مثال ۲: بررسی کامل بودن اطلاعات یک ردیف با IF
فرض کنید در هر ردیف باید نام، موبایل و شهر مشتری وارد شود. اگر هر سه سلول پر باشند، عبارت «کامل» نمایش داده شود؛ در غیر این صورت «ناقص» نمایش داده شود.
=IF(COUNTA(A2:C2)=3;"کامل";"ناقص")
این فرمول برای کنترل فرمهای ورود اطلاعات بسیار مفید است.
مثال ۳: محاسبه میانگین بر اساس تعداد سلولهای پر با SUM
اگر در ستون B فقط عدد وارد شده باشد و بخواهید مجموع را بر تعداد سلولهای پر تقسیم کنید، میتوانید از ترکیب SUM و COUNTA استفاده کنید.
=IF(COUNTA(B2:B100)=0;0;SUM(B2:B100)/COUNTA(B2:B100))
در این فرمول، اگر هیچ دادهای وجود نداشته باشد، نتیجه صفر میشود تا خطای تقسیم بر صفر رخ ندهد.
مثال ۴: بررسی چند شرط با AND
فرض کنید اطلاعات اصلی یک سفارش در ستونهای A تا D قرار دارد و مبلغهای مربوط به سفارش در ستونهای E تا G هستند. میخواهیم بررسی کنیم که اطلاعات سفارش کامل است و حداقل یک مبلغ هم ثبت شده است.
=AND(COUNTA(A2:D2)=4;SUM(E2:G2)>0)
اگر هر دو شرط درست باشد، خروجی TRUE خواهد بود.
مثال ۵: بررسی وجود حداقل یک داده با OR
فرض کنید میخواهید بررسی کنید آیا در ردیف موردنظر حداقل یک اطلاعات تماس یا حداقل یک وضعیت تکمیلشده وجود دارد یا نه.
=OR(COUNTA(A2:C2)>0;COUNTIF(D2:F2;"تکمیل")>0)
اگر یکی از این دو شرط برقرار باشد، خروجی TRUE میشود.
مثال ۶: ترکیب COUNTA با COUNTIF برای گزارش وضعیت
فرض کنید وضعیت پروژهها در ستون C نوشته شده و میخواهید تعداد کل پروژههای ثبتشده و تعداد پروژههای تکمیلشده را جداگانه بررسی کنید.
=COUNTA(A2:A100)
=COUNTIF(C2:C100;"تکمیل")
فرمول اول تعداد کل رکوردها را میشمارد و فرمول دوم فقط رکوردهایی را میشمارد که وضعیت آنها «تکمیل» است.
مثال ۷: ترکیب COUNTA با XLOOKUP
فرض کنید کد مشتری در سلول E2 وارد میشود و میخواهید نام مشتری را از جدول پیدا کنید. همزمان میتوانید با COUNTA بررسی کنید که آیا کد وارد شده یا نه.
=IF(COUNTA(E2)=0;"کد وارد نشده";XLOOKUP(E2;A2:A100;B2:B100;"یافت نشد"))
اگر سلول E2 خالی باشد، پیام «کد وارد نشده» نمایش داده میشود. اگر کد وارد شده باشد، XLOOKUP نام مشتری را جستجو میکند.
ترکیب تابع COUNTA با فرمولهای دیگر
- ترکیب با IF برای بررسی خالی یا پر بودن اطلاعات
=IF(COUNTA(A2:D2)=4;"اطلاعات کامل است";"اطلاعات ناقص است")
- ترکیب با SUM برای محاسبه نسبت یا میانگین ساده در دادههای عددی
=SUM(B2:B50)/COUNTA(B2:B50)
- ترکیب با AND برای بررسی همزمان چند شرط
=AND(COUNTA(A2:C2)=3;D2>0)
- ترکیب با OR برای بررسی وجود حداقل یک داده یا یک وضعیت خاص
=OR(COUNTA(A2:B2)>0;COUNTIF(C2:D2;"فعال")>0)
- ترکیب با COUNTIF برای مقایسه تعداد کل دادهها با تعداد دادههای دارای شرط
=COUNTIF(C2:C100;"پرداخت شده")/COUNTA(A2:A100)
- ترکیب با XLOOKUP برای جلوگیری از جستجو زمانی که مقدار ورودی خالی است
=IF(COUNTA(F2)=0;"ابتدا کد را وارد کنید";XLOOKUP(F2;A2:A200;B2:B200;"پیدا نشد"))
- ترکیب با SUMPRODUCT و LEN برای شمارش سلولهایی که واقعا دارای متن یا مقدار قابل مشاهده هستند
=SUMPRODUCT(--(LEN(TRIM(A2:A100))>0))
خطاهای رایج و روش رفع آنها
۱) شمارش سلولهایی که ظاهرا خالی هستند
گاهی یک سلول از نظر ظاهری خالی است، اما داخل آن فاصله، فرمول یا کاراکتر نامرئی وجود دارد. COUNTA این سلول را خالی در نظر نمیگیرد و آن را میشمارد.
روش رفع: سلولها را پاکسازی کنید، فاصلههای اضافی را حذف کنید یا برای شمارش دادههای قابل مشاهده از ترکیب LEN و TRIM استفاده کنید.
=SUMPRODUCT(--(LEN(TRIM(A2:A100))>0))
۲) شمارش فرمولهایی که خروجی خالی دارند
اگر در یک سلول فرمولی وجود داشته باشد که نتیجه آن متن خالی باشد، COUNTA آن سلول را میشمارد؛ چون سلول واقعا خالی نیست و داخل آن فرمول وجود دارد.
روش رفع: اگر میخواهید فقط سلولهایی شمرده شوند که خروجی قابل مشاهده دارند، از روش جایگزین با LEN استفاده کنید.
=SUMPRODUCT(--(LEN(A2:A100)>0))
۳) اشتباه گرفتن COUNTA با COUNT
تابع COUNT فقط عددها را میشمارد، اما COUNTA هر سلول غیرخالی را میشمارد. اگر در محدوده شما متن و عدد با هم وجود دارد، استفاده از COUNT ممکن است نتیجه کمتری بدهد.
روش رفع: اگر هدف شمارش همه سلولهای پر است، از COUNTA استفاده کنید. اگر فقط عددها مهم هستند، COUNT انتخاب درستتری است.
=COUNT(A2:A100)
=COUNTA(A2:A100)
۴) استفاده از کل ستون در فایلهای سنگین
فرمولهایی که کل ستون را بررسی میکنند، در فایلهای بزرگ ممکن است باعث کندی شوند.
روش رفع: تا حد امکان محدوده واقعی دادهها را مشخص کنید یا از Excel Table استفاده کنید.
=COUNTA(A2:A1000)
۵) محاسبه اشتباه به دلیل وجود عنوان ستون
اگر از کل ستون استفاده کنید، عنوان ستون نیز شمرده میشود. مثلا اگر در A1 عبارت «نام مشتری» وجود داشته باشد، COUNTA آن را هم محاسبه میکند.
روش رفع: محدوده را از ردیف بعد از عنوان شروع کنید.
=COUNTA(A2:A100)
۶) خطا در جداکننده آرگومانها
در بعضی نسخهها و تنظیمات منطقهای اکسل باید از کاما استفاده شود و در بعضی تنظیمات باید از نقطهویرگول استفاده شود. اگر فرمول خطا داد، ممکن است مشکل از جداکننده آرگومانها باشد.
روش رفع: اگر فرمول با نقطهویرگول کار نکرد، همان فرمول را با کاما امتحان کنید.
=COUNTA(A2:A20,D2:D20)
=COUNTA(A2:A20;D2:D20)
نکات حرفهای و ترفندهای مهم
- اگر فقط میخواهید سلولهای دارای عدد را بشمارید، به جای COUNTA از COUNT استفاده کنید.
- اگر میخواهید سلولهای خالی را بشمارید، از COUNTBLANK استفاده کنید.
- COUNTA سلولهای دارای خطا را هم میشمارد؛ پس اگر در محدوده خطا وجود دارد، نتیجه همچنان شامل آن سلولها میشود.
- سلولی که فقط فاصله دارد، از نظر COUNTA خالی نیست. برای پاکسازی دادهها از TRIM کمک بگیرید.
- اگر دادههای شما ساختار جدولی دارند، بهتر است آنها را به Excel Table تبدیل کنید تا فرمولها خواناتر و پویاتر شوند.
- برای داشبوردها، COUNTA گزینهای سریع برای نمایش تعداد کل رکوردهای ثبتشده است.
- در فایلهای بزرگ، به جای استفاده از کل ستونها، محدودههای مشخص و محدود را انتخاب کنید.
- در اکسلهای جدید مثل Microsoft 365، میتوانید COUNTA را همراه با توابع جدیدتر مثل FILTER، UNIQUE و XLOOKUP استفاده کنید.
- برای جلوگیری از خطای تقسیم بر صفر، هنگام تقسیم بر نتیجه COUNTA بهتر است از IF استفاده کنید.
تفاوت تابع COUNTA با توابع مشابه
تفاوت COUNTA با COUNT
COUNT فقط سلولهای دارای عدد را میشمارد، اما COUNTA همه سلولهای غیرخالی را میشمارد. اگر محدوده شامل متن، عدد، تاریخ و مقدار منطقی باشد، COUNTA انتخاب مناسبتری است.
=COUNT(A2:A100)
=COUNTA(A2:A100)
تفاوت COUNTA با COUNTBLANK
COUNTA سلولهای پر را میشمارد، اما COUNTBLANK سلولهای خالی را میشمارد. این دو تابع معمولا برای بررسی کامل بودن دادهها در کنار هم استفاده میشوند.
=COUNTBLANK(A2:A100)
تفاوت COUNTA با COUNTIF
COUNTA همه سلولهای غیرخالی را میشمارد، اما COUNTIF فقط سلولهایی را میشمارد که یک شرط مشخص داشته باشند. مثلا فقط وضعیتهای «فعال» یا فقط محصولات یک دسته خاص.
=COUNTIF(C2:C100;"فعال")
تفاوت COUNTA با ROWS
تابع ROWS تعداد ردیفهای یک محدوده را میشمارد؛ چه پر باشند و چه خالی. اما COUNTA فقط سلولهای غیرخالی را میشمارد.
=ROWS(A2:A100)
تفاوت COUNTA با LEN
LEN تعداد کاراکترهای داخل یک سلول را میشمارد، اما COUNTA تعداد سلولهای غیرخالی را محاسبه میکند. اگر بخواهید بررسی کنید واقعا چیزی در سلول دیده میشود یا نه، LEN میتواند در کنار COUNTA مفید باشد.
=LEN(A2)
سازگاری با نسخههای مختلف اکسل
تابع COUNTA یکی از توابع قدیمی و پایه اکسل است و تقریبا در همه نسخههای رایج اکسل پشتیبانی میشود.
- Microsoft 365
- Excel 2024
- Excel 2021
- Excel 2019
- Excel 2016
- Excel 2013
- Excel 2010
- Excel 2007
- نسخههای قدیمیتر اکسل
- Excel for Mac
- Excel Online
در نسخههای جدید اکسل، تعداد آرگومانهای قابل استفاده بیشتر است و کار با محدودههای بزرگ بهتر مدیریت میشود. با این حال، در فایلهای حجیم بهتر است از محدودههای دقیق استفاده کنید تا سرعت محاسبات کاهش پیدا نکند.
سؤالات پرتکرار درباره تابع COUNTA
آیا COUNTA سلولهای دارای متن را میشمارد؟
بله. هر سلولی که متن داشته باشد توسط COUNTA شمرده میشود.
آیا COUNTA عددها را هم میشمارد؟
بله. COUNTA عدد، متن، تاریخ، مقدار منطقی و خطا را میشمارد.
آیا COUNTA سلولهای واقعا خالی را میشمارد؟
خیر. سلولهایی که کاملا خالی هستند، شمرده نمیشوند.
چرا COUNTA سلولی را که خالی دیده میشود میشمارد؟
احتمالا داخل سلول فاصله، فرمول یا کاراکتر نامرئی وجود دارد. COUNTA این موارد را خالی حساب نمیکند.
برای شمارش فقط عددها از چه تابعی استفاده کنیم؟
برای شمارش فقط سلولهای عددی، تابع COUNT مناسبتر است.
برای شمارش سلولهای خالی از چه تابعی استفاده کنیم؟
برای شمارش سلولهای خالی باید از COUNTBLANK استفاده کنید.
آیا COUNTA در داشبوردهای اکسل کاربرد دارد؟
بله. یکی از کاربردهای رایج آن نمایش تعداد کل رکوردها، سفارشها، مشتریان یا فرمهای ثبتشده در داشبوردها است.
آیا COUNTA ردیفهای مخفی را هم میشمارد؟
بله. COUNTA سلولهای مخفی یا فیلترشده را هم میشمارد. اگر میخواهید فقط دادههای قابل مشاهده را محاسبه کنید، باید از روشهای دیگری مثل SUBTOTAL یا AGGREGATE کمک بگیرید.
جمعبندی و پیشنهاد یادگیری بعدی
تابع COUNTA یکی از سادهترین و در عین حال کاربردیترین توابع اکسل است. این تابع برای شمارش سلولهای غیرخالی استفاده میشود و در لیستها، فرمها، گزارشها و داشبوردها کاربرد زیادی دارد.
مهمترین نکته این است که COUNTA هر سلولی را که واقعا خالی نباشد میشمارد؛ حتی اگر داخل آن فرمول، فاصله یا خطا وجود داشته باشد. بنابراین هنگام استفاده از آن باید به کیفیت دادهها توجه کنید.
برای یادگیری بهتر، پیشنهاد میشود بعد از COUNTA سراغ توابع COUNT، COUNTBLANK، COUNTIF، SUM، IF و XLOOKUP بروید. این توابع در کنار COUNTA میتوانند بسیاری از نیازهای روزمره شما در اکسل را پوشش دهند.
