تنظیم کرد
استوارت از ویژگی NumberFormat در یک ماکرو برای تنظیم قالب سفارشی برای یک سلول استفاده می کند. او آن را برابر با #،##0.00_);[قرمز](#،##0.00) قرار می دهد، اما وقتی بعداً به آن نگاه می کند، اکسل قالب را به #،##0.00;[قرمز]-#،# تغییر می دهد. #0.00.
شما می توانید قالب سفارشی مجموعه ای از سلول ها را به این ترتیب تنظیم کنید:
Sub SetCells()
Selection.NumberFormat = "#,##0.00_);[Red](#,##0.00)"
End Sub
به طور مشابه، می توانید قالب سفارشی محدوده خاصی از سلول ها را به این ترتیب تنظیم کنید:
Sub SetCells()
Range("A1").NumberFormat = "#,##0.00_);[Red](#,##0.00)"
End Sub
هر یک از این رویکردها، فرمت سفارشی را به درستی تنظیم می کند، همانطور که از طریق آزمایش تأیید شد. اگر فرمت آنطور که انتظار می رود ظاهر نمی شود (و مطمئن هستید که الگوی قالب با آنچه در بالا نشان داده شده است مطابقت دارد)، پس فقط دو دلیل وجود دارد که می توانم به آن فکر کنم که باعث اختلاف می شود. اول، این امکان وجود دارد که کدهای ماکرو دیگری بدون اطلاع شما، به خصوص کد در یک کنترل کننده رویداد، فرمت سفارشی را تغییر دهند. چرا مدیریت رویداد؟ زیرا کنترل کننده های رویداد اغلب تغییرات را به طور خودکار انجام می دهند، معمولاً پس از تغییر سلول یا حتی انتقال از یک سلول به سلول دیگر.
احتمال دوم این است که آنچه در کاربرگ می بینید نتیجه فرمت سفارشی نیست، بلکه در واقع نتیجه یک قالب شرطی است. برای مقابله با این امکان، باید قوانین قالب بندی شرطی را بررسی کرده و احتمالاً تغییر دهید.