在Excel中的位数组AND?

时间:2010-07-16 16:41:46

标签: excel excel-formula

我的网格是这样的:

  A A A A A
B C C C C C
B C C C C C
B C C C C C
B C C C C C
B C C C C C

每个AB都是从工作表中其他位置的其他工作中创建位数组而得到的数值。

C中,我需要在交叉AB上执行按位AND,并测试结果是否大于零(即,至少有一个匹配的位值“1”)。

必须是纯Excel公式,不能使用宏 - 它以条件格式使用。使用宏来模拟条件格式不是一个选项,也不是创建一个复制C的表并使用宏来存储条件格式可以查看的答案。

AB的值可以存储为1和0的字符串,如果某些字符串魔术更容易执行。

有什么想法吗?

修改

接受的答案给了我我需要的东西,但是对于子孙后代,这里是如何扩展它以扩展该解决方案以给出按位回答:

AND = SUBSTITUTE(SUBSTITUTE(TEXT(VALUE($A2)+VALUE(B$1),"1","0"),"2","1")
OR = SUBSTITUTE(TEXT(VALUE($A2)+VALUE(B$1),"2","1")
XOR = SUBSTITUTE(TEXT(VALUE($A2)+VALUE(B$1),"2","0")

2 个答案:

答案 0 :(得分:2)

将其保存为0和1的字符串,将它们一起添加为数字,将其转换为字符串并查找2。

=ISNUMBER(SEARCH("2",TEXT(VALUE($A2)+VALUE(B$1),"0")))

在单元格B2中复制A2和B1中的数据,然后复制并粘贴。

编辑哇!他们已经放入了DEC2BIN()函数!

=ISNUMBER(SEARCH("2",TEXT(VALUE(DEC2BIN($A2))+VALUE(DEC2BIN(B$1)),"0")))

并留下他们的数字。

答案 1 :(得分:0)

如果您正在进行OR(您正在描述)或=(A + B) > 0,如果您正在进行AND(就像您实际上正在写作),那么=(A + B) > 1怎么样。