迷你图根据不同的值改变颜色

Sparkline to change colour based on different values

我想让我的迷你图根据值改变颜色以反映产品过期并显示产品何时交付:

颁发日期(C10)、到期日期(D10)、迷你图(J10)、证书状态(K10):

理想情况下,我希望单元格为绿色,并且随着日期临近到期,我希望单元格填充为红色 - 一旦证书状态更改为“已交付”迷你图将变为灰色.除了基本的迷你图,我是新手,其他任何东西都会产生错误或解析错误

听起来您想要的是动态更改 color1。您可以通过插入一个值并连接到一个字符串来做到这一点。假设输入第 10 行,如您的问题:

=SPARKLINE(NOW()-C10,
{
  "charttype","bar";
  "max",D10-C10;
  "color1",IF(
    K10="Delivered",
    "gray",
    "rgb("&INT(255*(NOW()-C10)/(D10-C10))&","&INT(255*(D10-NOW())/(D10-C10))&",0)"
  )
})
  • 在这里,您的数据输入是 Now()-C10,它会传递到迷你图。
  • 如果 K10="Delivered".
  • IF 语句会将颜色覆盖为灰色
  • rgb 字符串将颜色设置为越接近过期日期越红,越接近发行日期越绿。

如果你想要一个完整的灰色条,你可以将 max 属性 设置为 (K10<>"Delivered")*(D10-C10)