آیدان پرسید که آیا امکان محاسبه تاریخ با استفاده از فیلدها وجود دارد؟ به نظر می رسد که او یک تاریخی می خواهد که دو هفته در آینده باشد و فکر می کند باید یک راه آسان برای محاسبه چنین تاریخ آینده با استفاده از فیلدها وجود داشته باشد. متاسفانه راه آسانی وجود ندارد. در حالی که Word به شما امکان می دهد محاسبات ساده را با استفاده از مقادیر عددی در فیلدها انجام دهید، اما به شما اجازه نمی دهد چنین محاسباتی را با استفاده از تاریخ به جای اعداد انجام دهید.
با این حال، میتوانید تاریخها را به بخشهای ذاتی آنها (ماه، روز، و سال) تقسیم کنید و سپس محاسبات خود را انجام دهید، اما این یک مجموعه کامل از مشکلات جدید را ایجاد میکند. یکدفعه باید نگران باشید که وقتی پایان یک ماه یا سال «غلتان» می کنید چه اتفاقی می افتد. ریاضیاتی که در انجام چنین محاسباتی وجود دارد، بی اهمیت نیست. به عنوان مثال، فیلد ترکیبی زیر را در نظر بگیرید:
{QUOTE "{SET Delay "14"}{SET "DaysInMonth" {IF {DATE @ "MM"} <> 2 {=ROUND(30.575*{DATE @ "MM"},0)-ROUND(30.575*{= {DATE @ "MM"} —1},0)}{IF {=MOD({DATE @ "yy"|, 4)} > 0 "28" "29"}}}{SET "NextMonth" {IF {DATE @ "MM"} = 12 "1/97" "{= {DATE @ "MM"} + 1}/97}}{IF {= {REF Delay} + {DATE @ "dd"}} <= {DaysInMonth} {DATE @ "MMMM {= {REF Delay} + {DATE @ "dd"}}, yyyy"}{QUOTE "{NextMonth @ "MMMM"} {= {REF Delay} + {DATE @ "dd"} — {DaysInMonth}}, {IF {DATE @ "MM"} 12 {DATE @ "yyyy"}{DATE @ "{= 1 + {DATE @ "yyyy"} # "xxxx"}" }}}}"}</blockquote>
این تاریخ را در مدت دو هفته برمی گرداند (در خط اول مشخص شده است که مقدار Delay در آن تنظیم شده است. البته اشکال، ماهیت ترکیبی فیلد است - بیش از 30 فیلد مختلف فقط در این فیلد ترکیبی وجود دارد! حتی این پیادهسازی، به همان اندازه که به نظر میرسد، حیرتانگیز است، سالهای کبیسه را در همه موارد به درستی مدیریت نمیکند.
آیا راه آسانی برای محاسبه تاریخ های آینده وجود دارد؟ بله، وجود دارد—به سادگی از ماکروها استفاده کنید. فقط با چند دستورالعمل ساده می توانید از محاسبات تاریخ در غیر این صورت دشوار کار کنید. این در یک مطلب قبلی پوشش داده شده بود
; همچنین می توانید اطلاعات را در صفحه Word MVP زیر بیابید: