گرگوری تمایل دارد رنگ فونت را در یک سلول بر اساس یک فرمول مشخص کند. به عنوان مثال، یک سلول ممکن است حاوی یک تابع IF ساده باشد، مانند =IF(A1>A2,5,7) . اگر "5" برگردانده شود، او دوست دارد فونت عادی باشد، اما اگر "7" برگردانده شود، دوست دارد آن را قرمز کند. و، لازم به ذکر است، گرگوری نمی خواهد از قانون قالب بندی شرطی استفاده کند.
بدون استفاده از ماکرو (همانطور که به اختصار توضیح داده شد) هیچ راهی برای تعیین رنگ فونت در فرمول وجود ندارد. ساده ترین راه برای انجام این کار - خوب، ساده ترین راه که از قالب بندی شرطی استفاده نمی کند - ایجاد یک قالب سفارشی برای سلول حاوی فرمول است. خود قالب بسیار ساده است:
[red][=7]General;General
بخش اول قالب سفارشی (قبل از نقطه ویرگول) نشان می دهد که چگونه اعداد مثبت باید قالب بندی شوند. قسمت بعد از نقطه ویرگول نشان می دهد که چگونه اعداد منفی باید قالب بندی شوند. (بخش دوم، منفی گنجانده شده است، زیرا اگر اینطور نباشد، اکسل فرمت مفرد را برای هر مقداری که ممکن است در سلول ظاهر شود، چه مثبت یا منفی، اعمال می کند.)
قسمت اول، برای مقادیر مثبت، نشان می دهد که اگر مقدار در سلول "7" باشد، آنگاه مقدار به رنگ قرمز نشان داده می شود. اگر هر مقدار مثبت دیگری باشد (از جمله "5")، با یک فونت معمولی نشان داده می شود. اگر اطلاعات بیشتری در مورد نحوه ایجاد فرمت های سفارشی می خواهید، می توانید یک آموزش عالی را در سایت Mynda Treacys بیابید:
https://www.myonlinetraininghub.com/excel-custom-number-format-guide
البته اشکال استفاده از فرمت های سفارشی در این روش این است که در واقع روی مقدار "7" کلید زده شده است. اگر چیزی کمی کلی تر می خواهید، به طوری که اگر هر نتیجه ای که در آن A1 کمتر یا مساوی A2 باشد، منجر به قرمز شدن سلول شود، ممکن است به یک رویکرد مبتنی بر کلان علاقه مند باشید. مثال زیر به عنوان یک تابع تعریف شده توسط کاربر پیاده سازی شده است:
Function TColor(n1 As Double, n2 As Double) As Boolean
If n1
برای استفاده از UDF، فقط آن را به فرمول خود اضافه کنید، به روش زیر:
=IF(A1>A2,5,7)+TColor(A1,A2)
UDF A1 را با A2 مقایسه می کند و اگر A1 بزرگتر باشد، رنگ متن روی نرمال تنظیم می شود. اگر کمتر یا مساوی A2 باشد، رنگ متن روی قرمز تنظیم می شود.