Excel - 形状中的条件格式?

kcr*_*ley 8 conditional-formatting microsoft-excel

很长一段时间以来,我认为不可能让形状(例如,文本框)具有由公式设置的值,但事实证明您可以。同样,您似乎无法将条件格式应用于形状(该选项在 Excel 2007 的功能区中呈灰色);是否有一些秘密方法可以解决这种变灰问题,并将条件格式应用于形状?如果不同类型的形状或格式的答案不同,我特别尝试有条件地将不同的颜色应用于矩形。

我想要这样做的原因是因为我们不能在这种特定情况下使用宏。

Eng*_*ast 4

不,但你可以假装它

你可以伪造它,但需要一些设置。除非你需要很大的形状,否则它会起作用。以下是在 Excel 2010 中创建n 个不同条件格式形状的步骤。


tl;dr对于您想要的每个条件,使用 1 个额外的单元格和 1 个文本框。每个文本框都设置为显示带有巨大轮廓和阴影的巨型文本,并且颜色全部相同。额外的单元格设置为仅在值满足条件时才显示文本。


  1. 创建n 个辅助列,除非值满足正确的条件,否则这些列将显示为空白。n = 3 情况的一个简单例子可能是:(我们"888"稍后会解释为什么我使用

    =IF(A1=1,"888","") =IF(A1=2,"888","") =IF(A1=3,"888","")
    不过,目前只需用文本填充辅助列,而不是公式。

  2. 设置每个辅助列中文本颜色的格式以适合该条件

  3. 创建 1 个大小正确的文本框并输入任意文本(例如“Hello World”)
  4. 按照您喜欢的方式设置边框格式,但确保填充No Fill
  5. 右键单击文本,然后单击上下文菜单底部附近的“设置文本效果格式...”
  6. 将文本轮廓设置为符合条件 1 的正确颜色的实线
  7. 将轮廓样式设置为 25pt 或其他非常高的值
  8. 将阴影设置为“外部”>“偏移中心”,透明度为 0%,大小为 200%
  9. 复制此文本框n-1次,现在您总共有n
  10. 依次将每个颜色设置更改为您需要的颜色设置
  11. 返回并将每个公式设置为辅助列之一,并确保将其连接到正确的列
  12. 如果文本框中填写的文本不正确,请返回每个文本框并进行更改
  13. 对于每个文本框,将字体大小设置为 70 或用颜色完全填充文本框所需的任何大小
  14. 一切设置完毕后,返回并将辅助列更改为公式化。让他们显示占用大量空间的文本,例如 8、# 或某些方框符号。
  15. 测试它以确保对于每个值,一个文本框显示颜色,其余文本框不显示填充
  16. 将所有文本框堆叠起来(“对齐”>“左对齐”和“对齐”>“顶部”可能会有所帮助)并将它们分组,这样它们就不会那么容易弄乱

这是我做的模型的一些屏幕截图。
请注意哪个框的颜色随着值的变化而变化。如果我把它们叠起来,它看起来就像一个单一的形状改变颜色。

值1

值2

值3

  • 我希望有某种徽章“在 SuperUser.com 存在之前,在测试期间在 StackOverflow 上提出问题,并迁移到另一个网站,并在 6 1/2 年后接受”。 (2认同)
  • 这是令人难以置信的黑客和创意。 +1 (2认同)