来自矩阵的匹配和条件格式 Table
Match and Conditional Formatting from Matrix Table
我正在为我的矩阵 table 寻求一些体面的帮助,是否有一个好的或最好的方法来使用下拉菜单正确匹配特定矩阵中的依赖实例。
这张图代表我的矩阵table(图1):
如你所见,有很多实例,但水平和垂直它们得到相同数量的 "headers"。那些 "1`s" 在我的例子中代表不兼容,但我们简单地称它为 "match"。那是在一个 sheet 上,它会不时地填充一些新值。
另一个 sheet 实际上是 sheet 用于显示数据及其兼容性可能性的下拉菜单。从主要部分的意义上说,你得到了 "Groups (Group1, Group2...)",而作为主要部分的小组件,你得到了 "dependent groups (AA1, BB2..)"。为了避免大家在这里有解释的误会,为了这个例子我使用了虚构的值:
又名群组。主要部件
依赖组又名。组件
正如您在下面看到的,这是我虚构的 table 但与我在真实案例中应该使用的概念完全相同。
我在图 2 中做了解释,这样你就可以跟着看,WHERE/WHAT 我做到了!
我首先使用的是=匹配函数,一个用于垂直位置(A3),一个用于水平(B4)。此布尔行是使用 =or(index) 完成的,但如您所见,参考了匹配位置。从那里我应该使用 true/false 为我的组框着色,以防案例兼容性是可能的 - 这就是所有的科学。
所以,我的问题是是否有另一种方法可以解决这个问题?如您所见,我在一个地方有 3 行不同的函数,或者想象一下我是否会有更多 "groups" 可以在更多行和计算中增加。
图片2
已编辑:
这是原始 sheet 的屏幕截图,我只是隐藏了一些与信息有关的行,这是数字不一致的原因。如您所见,它与我上面提供的虚拟示例几乎相同。正如我之前提到的,在每个 "box" 的下面,你得到了三行计算。您在这里看到的两倍数字“2”是我使用=匹配函数找到的某个值的位置,一个用于水平查找,另一个用于垂直查找。在这种情况下,它是模型类型,070FX 是位置 2,100FX 是 3,200FX 是矩阵 table 中的第 4 个位置,对于所有其他组依此类推。这些组(模型、端点、气体传感器...)在另一个 sheet 上单独定义,我必须在其中制作唯一列表和依赖列表,以便我可以将它们引用到我的下拉列表中。
EDIT Nr 4! 所以这个公式我用于 true/false
:
=SUMPRODUCT(('0359-matrix'!$A:$A1=F10)*(('0359-matrix'!$B:$CW=$B)+('0359-matrix'!$B:$CW=$C)+('0359-matrix'!$B:$CW=$D)+('0359-matrix'!$B:$CW=$E)+('0359-matrix'!$B:$CW=$F)+('0359-matrix'!$B:$CW=$G)+('0359-matrix'!$B:$CW=$H)+('0359-matrix'!$B:$CW=$I)+('0359-matrix'!$B:$CW=$J)+('0359-matrix'!$B:$CW=$K)+('0359-matrix'!$B:$CW=$L)+('0359-matrix'!$B:$CW=$M)+('0359-matrix'!$B:$CW=$N)+('0359-matrix'!$B:$CW=$O)+('0359-matrix'!$B:$CW=$P)+('0359-matrix'!$B:$CW=$Q)+('0359-matrix'!$B:$CW=F13)+('0359-matrix'!$B:$CW=G13)+('0359-matrix'!$B:$CW=H13)+('0359-matrix'!$B:$CW=I13)+('0359-matrix'!$B:$CW=J13))*'0359-matrix'!$B:$CW1)>0
我只复制了最后一部分,或者当它从第二行开始时..因为写整个函数太长了 - 它会自动减少。
('0359-matrix'!$B:$CW=$Q)+('0359-matrix'!$B:$CW=$B)+('0359-matrix'!$B:$CW=$C)+('0359-matrix'!$B:$CW=$D)+('0359-matrix'!$B:$CW=$E)+('0359-matrix'!$B:$CW=$F))*'0359-matrix'!$B:$CW1)>0
但是在标记的单元格上,我得到了相同的结果:B22 - F22 与 B21 - F21 相同(布尔值)不应该那样,但要遵循颜色,绿色是 False,它必须是带有数组引用。
检查以下内容。 A1 到 E5 是显示哪些片段不兼容(=1)的矩阵。其他必须为空或0
.
在单元格 I8 中,我使用了以下公式(并将其复制到 I11):
=SUMPRODUCT(($A:$A=H8)*(($B:$E=$H)+($B:$E=$H)+($B:$E=$H)+($B:$E=$H))*$B:$E)
公式结果显示了零件的不兼容性数量。例如 AA1
与 BB2
有一个不兼容,但 BB2
与 2 AA1
和 CC3
.
不兼容
要获得 TRUE
/FALSE
使用相同的公式并附加 >0
:如 =SUMPRODUCT(…)>0
对于任何附加 "group"(模型、端点...),您需要添加另一个 +($B:$E=$H)
,其中 $B:$E
指向您的矩阵数据,$H
指向您选择的组值。
公式范围概览:
请注意,这种计算只能告诉一个部分有多少不兼容的部分,而不是不兼容的部分的名称。
已编辑横版
所选单元格中的公式为
=SUMPRODUCT(($A:$A=G8)*(($B:$E=$G)+($B:$E=$H)+($B:$E=$I)+($B:$E=$J))*$B:$E)
你可以向右拉。
我正在为我的矩阵 table 寻求一些体面的帮助,是否有一个好的或最好的方法来使用下拉菜单正确匹配特定矩阵中的依赖实例。
这张图代表我的矩阵table(图1):
如你所见,有很多实例,但水平和垂直它们得到相同数量的 "headers"。那些 "1`s" 在我的例子中代表不兼容,但我们简单地称它为 "match"。那是在一个 sheet 上,它会不时地填充一些新值。
另一个 sheet 实际上是 sheet 用于显示数据及其兼容性可能性的下拉菜单。从主要部分的意义上说,你得到了 "Groups (Group1, Group2...)",而作为主要部分的小组件,你得到了 "dependent groups (AA1, BB2..)"。为了避免大家在这里有解释的误会,为了这个例子我使用了虚构的值:
又名群组。主要部件
依赖组又名。组件
正如您在下面看到的,这是我虚构的 table 但与我在真实案例中应该使用的概念完全相同。
我在图 2 中做了解释,这样你就可以跟着看,WHERE/WHAT 我做到了!
我首先使用的是=匹配函数,一个用于垂直位置(A3),一个用于水平(B4)。此布尔行是使用 =or(index) 完成的,但如您所见,参考了匹配位置。从那里我应该使用 true/false 为我的组框着色,以防案例兼容性是可能的 - 这就是所有的科学。
所以,我的问题是是否有另一种方法可以解决这个问题?如您所见,我在一个地方有 3 行不同的函数,或者想象一下我是否会有更多 "groups" 可以在更多行和计算中增加。
图片2
已编辑:
这是原始 sheet 的屏幕截图,我只是隐藏了一些与信息有关的行,这是数字不一致的原因。如您所见,它与我上面提供的虚拟示例几乎相同。正如我之前提到的,在每个 "box" 的下面,你得到了三行计算。您在这里看到的两倍数字“2”是我使用=匹配函数找到的某个值的位置,一个用于水平查找,另一个用于垂直查找。在这种情况下,它是模型类型,070FX 是位置 2,100FX 是 3,200FX 是矩阵 table 中的第 4 个位置,对于所有其他组依此类推。这些组(模型、端点、气体传感器...)在另一个 sheet 上单独定义,我必须在其中制作唯一列表和依赖列表,以便我可以将它们引用到我的下拉列表中。
EDIT Nr 4! 所以这个公式我用于 true/false
:
=SUMPRODUCT(('0359-matrix'!$A:$A1=F10)*(('0359-matrix'!$B:$CW=$B)+('0359-matrix'!$B:$CW=$C)+('0359-matrix'!$B:$CW=$D)+('0359-matrix'!$B:$CW=$E)+('0359-matrix'!$B:$CW=$F)+('0359-matrix'!$B:$CW=$G)+('0359-matrix'!$B:$CW=$H)+('0359-matrix'!$B:$CW=$I)+('0359-matrix'!$B:$CW=$J)+('0359-matrix'!$B:$CW=$K)+('0359-matrix'!$B:$CW=$L)+('0359-matrix'!$B:$CW=$M)+('0359-matrix'!$B:$CW=$N)+('0359-matrix'!$B:$CW=$O)+('0359-matrix'!$B:$CW=$P)+('0359-matrix'!$B:$CW=$Q)+('0359-matrix'!$B:$CW=F13)+('0359-matrix'!$B:$CW=G13)+('0359-matrix'!$B:$CW=H13)+('0359-matrix'!$B:$CW=I13)+('0359-matrix'!$B:$CW=J13))*'0359-matrix'!$B:$CW1)>0
我只复制了最后一部分,或者当它从第二行开始时..因为写整个函数太长了 - 它会自动减少。
('0359-matrix'!$B:$CW=$Q)+('0359-matrix'!$B:$CW=$B)+('0359-matrix'!$B:$CW=$C)+('0359-matrix'!$B:$CW=$D)+('0359-matrix'!$B:$CW=$E)+('0359-matrix'!$B:$CW=$F))*'0359-matrix'!$B:$CW1)>0
但是在标记的单元格上,我得到了相同的结果:B22 - F22 与 B21 - F21 相同(布尔值)不应该那样,但要遵循颜色,绿色是 False,它必须是带有数组引用。
检查以下内容。 A1 到 E5 是显示哪些片段不兼容(=1)的矩阵。其他必须为空或0
.
在单元格 I8 中,我使用了以下公式(并将其复制到 I11):
=SUMPRODUCT(($A:$A=H8)*(($B:$E=$H)+($B:$E=$H)+($B:$E=$H)+($B:$E=$H))*$B:$E)
公式结果显示了零件的不兼容性数量。例如 AA1
与 BB2
有一个不兼容,但 BB2
与 2 AA1
和 CC3
.
要获得 TRUE
/FALSE
使用相同的公式并附加 >0
:如 =SUMPRODUCT(…)>0
对于任何附加 "group"(模型、端点...),您需要添加另一个 +($B:$E=$H)
,其中 $B:$E
指向您的矩阵数据,$H
指向您选择的组值。
公式范围概览:
请注意,这种计算只能告诉一个部分有多少不兼容的部分,而不是不兼容的部分的名称。
已编辑横版
所选单元格中的公式为
=SUMPRODUCT(($A:$A=G8)*(($B:$E=$G)+($B:$E=$H)+($B:$E=$I)+($B:$E=$J))*$B:$E)
你可以向右拉。