سلام دوستان عزیز وقتتون بخیر؛ آرزوی اوقات خوشی رو براتون داریم 🙂 در این جلسه از سری آموزش های پویش پایدار در خدمتتون هستیم برای آموزش درج اتوماتیک زمان ثبت داده ها در اکسل و استفاده از تابع now بدون تغییر.
ثبت زمان جاری با تابع now بدون تغییر
مطابق معمول، این مطلب آموزشی رو هم در پاسخ به سوال یکی از دانشجوهای دوره جامع اکسل پیشرفته (فرمول نویسی و ابزارهای پیشرفته) تهیه کردیم. آقای دارابی پرسیده بودن که برای ثبت اتوماتیک و بدون تغییر تاریخ و ساعت زمان جاری در اکسل از چه فرمولی استفاده کنیم؟ اول باید خود سوال رو برای شما تشریح کنیم و در ادامه نحوه فرمول نویسی اون رو آموزش بدیم.
برای مثال جدول زیر رو در نظر بگیرید؛ در این جدول میخواهیم زمانیکه شماره فاکتور رو در سلول مربوطه وارد کردیم، تاریخ و ساعت لحظه درج در سلول کناریش وارد بشه. احتمالا پیش خودتون بگید این که کاری نداره! تابع now همین کار رو میکنه دیگه. تا حدودی درسته اما به همین سادگی که فکر کنیم نیست!
ما ابتدا فرمول زیر رو در سلول B3 مینویسیم. در این فرمول گفتیم اگر سلول C3 خالی باشه، سلول B3 هم خالی بذار اما اگر نه با استفاده از تابع NOW تاریخ و زمان اون لحظه رو داخل سلول درج کن.
اما اگر در سلول B3 برای درج اتوماتیک زمان ثبت داده ها در اکسل به صورت زیر فرمول نویسی کنیم، با هربار ورود شماره فاکتور جدید، زمان و تاریخ شماره فاکتورهای قبلی هم آپدیت میشن.
برای مثال در تصویر زیر زمانیکه در ساعت 13:47:12 شماره فاکتور 415 رو در سلول C4 درج کردیم، تاریخ و ساعت لحظه درج شماره فاکتور 509 هم تغییر میکنه و آپدیت میشه. اما راه حل این موضوع چیه؟
راه حل اینه که فرمول رو در سلول B3 به صورت زیر بنویسیم.
تشریح فرمول درج اتوماتیک زمان در اکسل
در این فرمول از دو IF تو در تو استفاده شده است.
در IF اول، بررسی کردیم که آیا شماره فاکتور وارد شده یا نه؟ (“”=C3)
اگر شماره فاکتور خالی باشد، سلول تاریخ هم باید خالی باشد. (“”)
اما اگر نه (شماره فاکتور وارد شده باشد)، دو حالت وجود دارد:
حالت اول اینکه سلول تاریخ خالی باشد؛ اگر سلول تاریخ خالی باشد، با استفاده از تابع NOW تاریخ آن لحظه را درج میکنیم.
حالت دوم اینکه سلول تاریخ خالی نباشد؛ اگر سلول تاریخ خالی نباشد، در واقع از قبل پر شده است و نیازی نیست مجدداً توسط تابع NOW محاسبه و آپدیت شود. در نتیجه مقدار همان سلول را نگه میداریم. این حالت برای زمانی هست که شماره فاکتور جدیدی وارد کردیم و فرمول برای شماره فاکتور قبلی مجدداً محاسبه میشه. چون در شماره فاکتور قبلی تاریخ قبلاً درج شده، نیازی نیست مجدداً توسط تابع now آپدیت بشه و همون چیزی که در سلول وجود داشته باید باقی بمونه.
ارور Circular References در اکسل
اما زمانیکه که ما فرمول رو در سلول B3 نوشتیم و در فرمول از خود سلول B3 استفاده کردیم، ارور Circular References رخ میده.
برای رفع این ارور باید به تب file، بخش Options بریم و از قسمت Formulas تیک گزینه Enable Iterative Calculation رو فعال کنیم و Maximum Iteration رو روی عدد 1 قرار بدیم (مطابق تصویر زیر):
با انجام این کارها و اتوفیل سلول به سمت پایین، مشکل حل میشه و نتیجه مطلوب به صورت تصویر زیر حاصل میشه:
ممنون از توجه شما 🙂
هر گونه سوال، پیشنهاد یا انتقادی در رابطه با دوره رایگان آموزش اکسل دارید در بخش دیدگاهها مطرح نمایید تا بتوانیم بهترین آموزش ها را برای شما علاقمندان به آموزش اکسل تهیه کنیم.
مطالب زیر را حتما مطالعه کنید
سلام
متشکرم خیلی کاربردی بود و کمک بزرگی برای من بود
موفق باشید
سلام چطوری میتونم تاریخ رو شمسی کنم در این تابع
سلام و عرض ادب
با استفاده از تابع shamsidiff در افزونه تقویم و تاریخ شمسی پویش پایدار میتوانید اختلاف دو تاریخ شمسی را در اکسل محاسبه کنید
سلام برای گوگل شیت باید چکار کنیم؟
سلام . بسیار ممنونم . عالی بود . بدون هیچ کدنویسی و صرفا استفاده از تابع اکسل.
سلام استاد من میخوام از این فرمول داخل 1 TABLE استفاده کنم ، اما نمیشه ، لطفا راهنمایی بفرمائید
سلام تشکر از آموزش بسیار کاربردی
فقط در اکسل موبایل که تنظیمات خطای Circular References را نداره چکار کنیم برای انجام این کار