ویژگی تصویر

آشنایی با تابع SECOND در اکسل

  /  اکسل   /  تابع SECOND در اکسل
بنر تبلیغاتی الف

تابع SECOND در اکسل ثانیهٔ زمان را به‌صورت عدد صحیح (از 0 تا 59) برمی‌گرداند. این تابع زمانی مفید است که بخواهید مؤلفهٔ ثانیهٔ یک مقدار زمان یا تاریخ-زمان را استخراج کنید، برای مقایسه‌ها، محاسبات دقیق زمانی یا تولید گزارش‌های زمانی دقیق‌تر. در اکسل انگلیسی نام تابع SECOND است؛ در برخی نسخه‌های محلی‌شده نام آن ممکن است ترجمه شده باشد.

نحو (Syntax)

نحو تابع ساده است:

=SECOND(serial_number)

در اینجا serial_number می‌تواند یک سلول حاوی زمان یا تاریخ-زمان، یک عبارت زمان مانند TIME(10,20,30)، یا یک رشتهٔ متنی که با فرمت زمان قابل‌شناسایی باشد (مثلاً “12:34:56”). خروجی عدد صحیحی بین 0 تا 59 خواهد بود.

مثال‌های پایه‌ای

  • اگر A1 حاوی مقدار 08:15:23 باشد، =SECOND(A1) خروجی 23 خواهد داد.
  • =SECOND(TIME(14,5,7)) نتیجه 7 را برمی‌گرداند.
  • اگر مقدار سلول حاوی تاریخ و زمان باشد، مانند 2025-11-03 18:20:45، تابع فقط جزء ثانیهٔ زمان (45) را برمی‌گرداند.

نمونهٔ فرمول‌ها (کد)

=SECOND(A1)

این فرمول مقدار ثانیهٔ موجود در سلول A1 را برمی‌گرداند. اگر A1 زمان 09:12:34 باشد، خروجی 34 خواهد بود.

=SECOND("23:59:05")

مثال بالا برای یک رشتهٔ زمانی مستقیم است و مقدار 5 را بازمی‌گرداند. اگر رشته قابل‌فهم برای اکسل نباشد، خطای #VALUE! رخ می‌دهد.

استخراج ثانیه از مقدار تاریخ-زمان و تبدیل به ثانیهٔ کل

گاهی نیاز داریم مجموع ثانیه‌ها از ابتدا (مثلاً تبدیل زمان به ثانیهٔ کل) را محاسبه کنیم. برای مثال تبدیل 02:30:15 به 9015 ثانیه (2*3600 + 30*60 + 15):

=HOUR(A1)*3600 + MINUTE(A1)*60 + SECOND(A1)

در این فرمول HOUR و MINUTE هم برای استخراج ساعت و دقیقه به‌کار می‌روند و حاصل به ثانیه تبدیل می‌شود. اگر A1 فقط زمان باشد یا تاریخ+زمان باشد، نتیجه صحیح خواهد بود.

کار با اعشار ثانیه (میلی‌ثانیه)

تابع SECOND فقط بخش صحیح ثانیه را برمی‌گرداند و میلی‌ثانیه‌ها را نشان نمی‌دهد. اگر به ثانیهٔ دقیق‌تر (با اعشار) نیاز دارید، می‌توانید از ارزش عددی زمان (که در اکسل برحسب روز است) کمک بگیرید:

=MOD(A1,1)*86400

این فرمول تعداد ثانیه (شامل اعشار) از نیمه‌شب تا زمان موجود در A1 را برمی‌گرداند چون یک روز برابر 86400 ثانیه است. برای استخراج میلی‌ثانیه می‌توان خروجی را ضرب یا گرد کرد:

=ROUND((MOD(A1,1)*86400 - INT(MOD(A1,1)*86400))*1000,0)

این فرمول میلی‌ثانیهٔ زمان موجود در A1 را تقریب می‌زند.

نمونهٔ جدول مقایسه ورودی و خروجی

ورودیفرمولخروجی
08:15:23=SECOND(A2)23
2025-11-03 13:05:07=SECOND(A3)7
“00:00:00.250”=MOD(A4,1)*864000.25 -> 0.25 ثانیه (250 میلی‌ثانیه)

موارد پیشرفته و کاربردی

  • شمارش سطرهایی که مقدار ثانیهٔ آن‌ها بیش از مقدار خاصی است:
    =SUMPRODUCT(--(SECOND(A2:A100)>30))

    این فرمول تعداد ردیف‌هایی که ثانیهٔ زمان در بازه A2:A100 بیشتر از 30 است را شمارش می‌کند. در نسخه‌های قدیمی‌تر اکسل ممکن است نیاز به Ctrl+Shift+Enter باشد.

  • فیلتر کردن یا شرط‌گذاری روی ثانیه در Power Query یا فیلتر پیشرفته برای تحلیل رویدادهای لاگ، ثبت زمانی رخدادها (event logs) یا داده‌های سنسور.
  • محاسبه تفاضل زمانی دقیق در صورتی که اختلاف بیش از یک روز باشد: برای اختلاف زمان بین B1 و A1 که ممکن است منطق عبور از نیمه‌شب داشته باشد:
    =MOD(B1-A1,1)*86400

    این فرمول همیشه اختلاف زمان در ثانیه را از 0 تا 86399 برمی‌گرداند و از اشکال عبور از نیمه‌شب جلوگیری می‌کند.

اشتباهات رایج و راه‌حل‌ها

  • خطای #VALUE!: معمولاً به‌خاطر فرمت متن نامتعارف است. برای رفع از VALUE یا DATEVALUE/TIMEVALUE استفاده کنید:
    =IFERROR(SECOND(TIMEVALUE(A1)), "زمان نامعتبر")

    این فرمول ابتدا سعی می‌کند مقدار متنی را به زمان تبدیل کند و در صورت خطا پیام مناسب نمایش دهد.

  • مشکل فرمت: اگر سلول شامل رشته‌ای مثل “2025/11/3 9:4:3” باشد، اکسل ممکن است آن را نشناسد. بهتر است ورودی‌ها را با TEXT یا توابع متن پاک‌سازی کنید.
  • سوءتفاهم با تاریخ: SECOND فقط بخش ثانیه را از زمان می‌گیرد؛ تاریخ تأثیری ندارد ولی اگر مقدار شما عددی بزرگ (مثلاً تعداد روزها) باشد، باید MOD برای گرفتن بخش اعشاری زمان استفاده شود.

نکات تخصصی و بهینه‌سازی

  • SECOND تابع غیر‌ناپایدار (non-volatile) است و در محاسبات بزرگ مشکلی ایجاد نمی‌کند. بهتر است فرمول‌های ساده و قابل‌فهم نگه داشته شوند تا سرعت محاسبه حفظ شود.
  • در مجموعه‌های بزرگ داده، تبدیل همهٔ مقادیر متنی به زمان در یک ستون کمکی (با TIMEVALUE) و سپس استفاده از SECOND روی آن ستون، کارایی را افزایش می‌دهد و خطاها کاهش می‌یابد.
  • برای گزارش‌گیری زمانی دقیق، همیشه از فرمت‌دهی سلول و کنترل ورودی‌ها (مثلاً از Data Validation) استفاده کنید تا ورودی‌های نامعتبر حذف شوند.

خلاصهٔ کاربردی

تابع SECOND ساده اما کاربردی است: برای استخراج ثانیه از زمان‌ها، تجزیه و تحلیل لاگ‌ها، محاسبهٔ ثانیه‌های کل و ترکیب با HOUR و MINUTE برای محاسبات زمان دقیق. آگاهی از محدودیت آن در برابر میلی‌ثانیه‌ها، چگونگی برخورد با رشته‌های متنی و نحوهٔ استفاده در فرمول‌های برداری (SUMPRODUCT و غیره) به شما کمک می‌کند تا از آن به‌طور موثری استفاده کنید.

آیا این مطلب برای شما مفید بود ؟

خیر
بله
موضوعات شما در انجمن: