اکسل دارای دو نوع قالب بندی مختلف است که می توان آنها را روی سلول اعمال کرد. اولی قالب بندی صریح است. این نوع قالب بندی با استفاده از نوار ابزار یا با استفاده از گزینه Cells از منوی Format اعمال می شود. نوع دوم قالب بندی، قالب بندی شرطی است. این نوع قالب بندی بر اساس مجموعه قوانینی که شما تعریف می کنید اعمال می شود.
درک این نکته مهم است که این دو نوع قالب بندی از یکدیگر جدا و متمایز هستند. به عنوان مثال، اگر یک سلول را به وضوح به صورت قرمز پررنگ فرمت کنید، این شکلی است که ظاهر می شود. اگر بعداً یک قالب شرطی را روی آن اعمال کنید، و آن قالب باعث شود سلول به رنگ سبز ظاهر شود، دقیقاً همان چیزی است که اتفاق میافتد - سلول به رنگ سبز ظاهر میشود ، اما همچنان به رنگ قرمز قالببندی میشود.
این چه ربطی به VBA دارد؟ اگر قالب بندی یک سلول را در VBA آزمایش کنید، قالب بندی که آزمایش می کنید، قالب بندی صریح است. در سناریوی بالا، این بدان معنی است که آزمایش همیشه نشان میدهد که سلول قرمز پررنگ است و هرگز سبز بودن آن را گزارش نمیکند، صرف نظر از اینکه قالببندی شرطی با سلول چه میکند. این به این دلیل است که قالببندی شرطی بر نمایش سلولها تأثیر میگذارد، نه قالببندی زیربنایی (صریح) آن.
نتیجه دیگر همه اینها این است که اگر می خواهید بفهمید که چه قالب بندی شرطی نمایش داده می شود، ممکن است لازم باشد تمام تست های شرطی خود را در VBA دوباره ایجاد کنید. این می تواند نسبتاً به سرعت پیچیده شود. برای اطلاعات بیشتر در مورد این موضوع، یک صفحه عالی وجود دارد که می توانید به آن مراجعه کنید. یکی از صفحات چیپ پیرسون را در اینجا بررسی کنید:
http://www.cpearson.com/excel/CFColors.htm