与 Excel 2013 中的另一个列表的串联列表列值验证

Concatinated list column value validation with another list in Excel 2013

我的 Excel sheet 中有 3 列(A、B、C),前两列(A & B) 选择列表为 {a,b,c,d,e,f,g,h,i} 并且第三列 (C) 将自动填充基于 A & B 中所做选择的值作为 A1-B1

例如:


|| A | B | C ||
||一个 | f | a-f ||
|| d | g | d-g ||
|| c | h | c-h ||

这里我需要根据列表 {a-c, d-g, c-f} 验证 C 列中的值,如果该值不存在于列表中,它应该阻止 A 中的选择和 B 列显示错误消息。

我正在使用 MS Office 2013

这比我想象的要难,但您可以通过以下方式 "sort of" 使其发挥作用。也许还有另一种方法,但这是我想出的想法,请参阅所附图片。

  1. Columns E, F and G:这些是您要检查的列表。 Good List 都是手动输入的。而 columns F and G 基本上是从 Good List 中检索那些好的值。有关公式,请参阅 row 6。我还将范围名称设为 GoodList > column EGoodListLeft > column FGoodListRight > columns G.

  2. Columns A and B:这两列也是手动输入的。这里没有实现下拉。但是在 row 9 上你可以看到验证规则 (Data > Data Validation > Allow field choose Custome, and use the formulas on row 9 into Formula field)。 Row 9Data Validation.

    的公式

    cell A2 上,输入 =COUNTIF(GoodListLeft,A2)=1,向下拖动或复制,这样您就不需要手动输入它们了。请注意,我使用了 A2,因此当您向下拖动时它会使用相对引用。

    Cell B2 将是 =COUNTIF(GoodListRight,B2)=1.

  3. Cell C2 我有这个公式,=CONCATENATE(A2,"-",B2) 所以它将连接来自 columns A and B 的字符串。但是您需要在 Data Validation Formula.

    中使用 =COUNTIF(GoodList,C2)=1

    查看此图片以了解 Data Validation 设置:

  4. Conditional Formatting:在cell A2、select Conditional Formatting > New Rule > Use a formula...下输入这个公式,=COUNTIF(GoodList,$C2)=0。见下图。

这应该适用于 =$A:$B

希望我解释清楚了。但是,如果您在实施时遇到任何问题,请告诉我。