Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Excel工作表中可视化组合_Excel_Vba - Fatal编程技术网

在Excel工作表中可视化组合

在Excel工作表中可视化组合,excel,vba,Excel,Vba,我有一个工作表,可以检测有毒组合(两个不应该同时存在的变量)。在一张表格中,我想交叉所有变量,并突出显示交叉两个有毒变量的单元格 例如,单元格E1(变量1)和A5(变量2)是有毒的组合,所以我想突出显示单元格E5(这可以是X或a格式,这无关紧要) 在另一张纸上,这些有毒组合的定义是,只需在同一行中输入彼此后面的两个变量即可 我很难理解如何处理这个问题。一个想法是输入一个公式(如果存在),该公式如下所示: =IF cell E1 and cell A5 are on the same row in

我有一个工作表,可以检测有毒组合(两个不应该同时存在的变量)。在一张表格中,我想交叉所有变量,并突出显示交叉两个有毒变量的单元格

例如,单元格E1(变量1)和A5(变量2)是有毒的组合,所以我想突出显示单元格E5(这可以是X或a格式,这无关紧要)

在另一张纸上,这些有毒组合的定义是,只需在同一行中输入彼此后面的两个变量即可

我很难理解如何处理这个问题。一个想法是输入一个公式(如果存在),该公式如下所示:

=IF cell E1 and cell A5 are on the same row in worksheet ... then x else ""
所以我的问题是:有没有人有过这种情况的经验,如果有,你会/曾经如何应对。或者我可以用上面演示的公式吗?还是使用VBA是明智的

如果有什么不清楚的地方,请告诉我

编辑:截图

确定有毒组合的工作表:

有毒组合“可见”的工作表


您可以使用vlookup进行此操作。 假设在SOD矩阵中,元素名称位于A列和第1行,而在SOD描述中,元素位于C列和E列。假设SOD描述位于名为“SODdesc”的选项卡上

单元格C5中的公式为

=if(VLOOKUP($A5;SODdesc!C:E;3;0)=C$1;“有毒的”)

仅当SOD说明表的C列中没有重复项时,此选项才有效

如果存在重复项,另一个可行的解决方案是创建一个额外的列(G),例如G10将是
=C10和E10
,而带有H10的列H是
=E10和C10

那么C5中的公式将变成:
=if(非isna(vlookup($A5&C$1;SODdesc!G:G;1;0));if(非isna(vlookup($A5&C$1;SODdesc!H:H;1;0));“有毒”)


我并没有创建一个完整的文件来测试公式,但是如果你知道一点excel公式是如何工作的,你应该会有这个想法。

假设变量是a、B、C。在“结果”工作表中,它们被写入范围
B1:D1
A2:A4
。假设A和B是有毒的。在单元格
C2
B3
中是否需要
X
?如果是这样,“查找”工作表中的数据是如何呈现的,即
A、B
和/或
B、A
?是否可以连续出现两个以上的问题?您需要澄清您的问题。第二张纸到底是什么样的?它是两列中的多行,每行上恰好有一个有毒组合,第一列中的变量a和第二列中的变量B?发布屏幕截图?我添加了两个屏幕截图,一个用于工作表,用户需要输入有毒的组合(不应该在一起),另一个用于工作表,这是可行的。这个想法是,用户在第一张工作表中输入有毒组合,并自动显示第二张屏幕截图中显示的红细胞。谢谢Peter,我今天晚些时候再查看