使用索引匹配返回不同的数字格式

使用索引匹配返回不同的数字格式

我设置了一个索引匹配,使用下拉列表从另一个表中获取信息。除了表中的一些信息是数字,一些是百分比之外,其他都运行正常。这意味着百分比被重新调整为 0.8,而不是 80%

我正在使用 =INDEX(E42:E50,MATCH(A3,A42:A50,0)),其中 A3 是下拉菜单,想知道是否有 EXACT 可以用来获得正确的格式?

我可能离题太远了,所以任何建议都会很感激

答案1

这里没有“精确”一词,从概念上讲,对于 Excel 来说,无论格式如何,值都是完全相同的。格式化就是格式化:它不会改变底层值。

但是,只要使用标准格式,Excel 就可以知道单元格的数字格式。因此,您可以使用该CELL("format",cell address)函数来找出答案。

不过,也存在一些困难:

  1. 您的公式返回的是值,而不是实际的单元格地址。幸运的是,如果您可以使用 INDEX/MATCH 找到值,则可以找到单元格地址。它只是为您的公式增加了一层额外的内容。
  2. 了解目标的格式只是成功的一半。现在,您必须以相同的格式格式化输出单元格才能实现目标。但 Excel 并未提供让公式格式化其输出的方法。过去的做法TEXT()甚至不会(直接)允许颜色格式化,而只是允许字符串的文本输出。

第一个很容易实现,使用ADDRESS()和为 INDEX/MATCH 开发的行/列信息。可以使用 包装该ADDRESS()函数INDIRECT()

对于第二种情况,您可以在条件格式规则的测试公式中使用该信息。例如,如果CELL()上一段返回的单元格上使用的函数返回“P2”,则应用的格式可以设置为两位小数百分比(因此,“80.00%”)。如果可以使用多种百分比格式(值可能显示为 80%、80.0%、80.00%等),并且您必须允许所有这些格式,则您需要几个 CF 规则,每个规则都选中“如果为真则停止”。使用常规格式来格式化非百分比目标。反之亦然。

因此,使用常规格式对其中一个或另一个进行格式化。使用公式查找目标值。INDIRECT()在 CF 测试规则公式中使用相同的信息加上 来创建地址并CELL()查找其数字格式。这是测试规则的一半,假设它等于您要测试的百分比(或常规)格式的字符串。所以像这样:

= CELL( "format", INDIRECT( ADDRESS ))) = "P0"

(其中前半部分看起来要复杂得多!)。

设置成功测试的格式以匹配该格式(此示例中为 80%)。

然后,常规格式化会处理不匹配的情况。CF 会处理匹配的情况。并且您当前的公式会找到要格式化的值。

相关内容