بروس باید تاریخ هایی را نمایش دهد که نشان دهنده تاریخ "بهترین تاریخ" محصولات است. فرمت مورد نیاز mmddy، ماه دو رقمی، روز دو رقمی و سال یک رقمی است. بنابراین، 28 سپتامبر 2021، 09281 خوانده میشود. با این حال، به نظر میرسد که بروس نمیتواند یک قالب سفارشی ارائه کند که فقط از یک رقم برای یک سال استفاده کند.
ایجاد یک قالب سفارشی برای این کار دشوار نیست، غیرممکن است. قالب بندی سفارشی اکسل امکان دو یا چهار رقم را برای سال ها فراهم می کند، اما نه یک یا سه رقم. به همین دلیل، باید به یک فرمول یا یک تابع تعریف شده توسط کاربر (ماکرو) تکیه کنید.
ابتدا به روش های فرمول نگاه می کنیم. ایده این است که از معادل یک قالب سفارشی (در تابع TEXT) برای بخش هایی که می توان به درستی نمایش داد استفاده کرد و سپس یک رقم تک رقمی برای سال به آن اضافه کرد. هر یک از این فرمول ها به این موارد رسیدگی می کند:
=TEXT(A1,"mmdd") & RIGHT(TEXT(A1,"yy"),1)
=TEXT(A1,"mmdd") & RIGHT(YEAR(A1),1)
اگر ترجیح می دهید، می توانید یک تابع تک خطی تعریف شده توسط کاربر، به این صورت ایجاد کنید:
Function DateCode(DateVal As Date) As String
DateCode = Format(DateVal, "mmdd") & Right(Year(DateVal), 1)
End Function
این تابع اساساً به شکل ماکرو همان کاری را که فرمول دوم بالا انجام می دهد انجام می دهد. برای استفاده از تابع، به سادگی آن را در یک سلول قرار دهید، مانند:
=DateCode(A1)
به یاد داشته باشید که نتیجه هر یک از این رویکردها (فرمول یا UDF) یک رشته متن است. بنابراین، به عنوان مثال، می توانید نتایج را با متن های دیگر ترکیب کنید، به این ترتیب:
="Expires: " & TEXT(A1,"mmdd") & RIGHT(TEXT(A1,"yy"),1)
="Good through " & TEXT(A1,"mmdd") & RIGHT(YEAR(A1),1)
="Use before " & DateCode(A1)