比较Excel

时间:2015-06-16 22:50:09

标签: database excel excel-vba vba

我想要达到的目的是查看

如果它存在于 列F 中,我最终希望 Cell A4 复制单元格格式在 列F 中与 Cell C4 的值匹配。

还在跟着我?

作为参考,我的文件如下所示:

enter image description here

A列 中的单元格值基于Sheet2。

因此,通过一个简单的公式,我设法比较了这些值,并且只有在存在实际匹配时才更改A列。

=IF(C4=F:F, IF(C4<>"","x",Sheet2!A4), Sheet2!A4)

这里唯一的问题是,如果 Cell C4 匹配 Cell F4 。如果它匹配,让我们说 Cell F5 ,语句将为FALSE,我需要它为TRUE(因为 C4的值 确实可以在 列F 中找到。

我尝试使用$ F:$ F代替F:F进行变换,但这并没有区别。设置范围(F2:F5)也不起作用。

这是我被困的地方。

一旦我想到这一点,我就可以继续找到一种复制匹配单元格格式的方法。如果你已经知道的话,请随意透露我是如何做到这一点的。会让我有些头疼。

2 个答案:

答案 0 :(得分:1)

尝试以下方法:

=IF(IFERROR(MATCH(C4,F:F,0),0)>0,IF(C4<>"","x",Sheet2!A4), Sheet2!A4)

编辑公式错误(; - &gt;,)

编辑:

好的,所以忘了你的公式,并试着做我认为你想要的,这是:

能够将工作中的解析器列表复制到您的颜色代码方案中,然后将该格式应用于此人负责的所有故障单。必须有一种方法可以根据颜色告知是否将票证分配给不在工作中的人员(不在列表中),或者未分配给任何人。我假设你的工作人数非常有限,因为如果没有,就很难区分颜色。

同时工作的人很少,你能做的就是:

  1. 将工作人员命名为“工人”
  2. 将新范围命名为“colors”
  3. 对于具有颜色编码的每一行,请输入颜色的名称或引用颜色的其他方式。我输入了“黄色”,“红色”,“绿色”,“蓝色”,并为“x”添加了黑色。
  4. 选择故障单栏中的顶部单元格,选择新的条件格式规则,输入以下公式

    =IFERROR(INDEX(colors;MATCH($C1;workers;0));"x")="Yellow"
    

    选择此项应具有黄色填充,并应用于整个Tickets列。

  5. 红色,绿色,黑色等也一样。
  6. 这样做,我设法得到以下行为:  1.我可以更改名称列中的名称,条件格式不会更改

    1. 如果票证由列表中的某人解决,则TicketX的背景颜色与名称列表中的名称相同

    2. 如果任何人都没有解决故障单,则公式返回“”,这不在任何条件格式规则中,因此它保持白色

    3. 如果票证是由不在工作的人解决的,则公式计算为“x”,这与条件格式中的黑色相关联,因此单元格变为黑色(可以考虑在此处添加白色文本以便能够看票号。

    4. 现在这不是那么漂亮,因为你必须制作这么多规则,但正如我所说,如果你要区分颜色,不管怎么说都不会有太多。

答案 1 :(得分:0)

要回答第一个问题,即在F列中查看C4是否存在,您可以将以下公式放在单元格E4中。

= IFERROR(INDEX($ F $ 2:$ F $ 5,MATCH(C4,$ F $ 2:$ F $ 5)),&#34;&#34)

如果名称存在,它将放置名称,如果没有,则显示空白字段。只需拖动此公式吞吐量列E(或您想要的任何列)。

为了匹配格式并且不想进入VBA(假设您没有很多可能性),您可以在E的新列中添加条件格式。 #34;经典&#34;条件格式的样式,当单元格包含&#34; Henk&#34;的特定文本时,创建一个新规则来设置自定义格式。然后继续为其他可能的选项制定规则。例如,在单元格E4中创建条件格式后,更改&#34;适用于&#34;要申请Sheet1的字段!$ C $ 2:$ C $ 5.