Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.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 不使用VBA在字符串中循环_Excel_Excel Formula - Fatal编程技术网

Excel 不使用VBA在字符串中循环

Excel 不使用VBA在字符串中循环,excel,excel-formula,Excel,Excel Formula,假设我有一个始终为二进制的字符串,并输入到单元格E3中,例如: “猫,猫,狗” 我想用一个IF语句来解释这个,所以 如果(E3=类别1,0) 有没有一种方法可以让上面的if语句在不使用VBA的情况下对字符串起作用?也许可以告诉它在“,”之前或之后测试任何字符?此外,理想情况下,if语句将通过3个单元格应用,因此它看起来像: 1 1 0 我可以在Excel中使用RC方法吗?对于可变/不等的字符串长度,要使它工作起来有点困难。请参阅下图。我在B4:B9中将其作为数组公式(Ctrl+Shift+En

假设我有一个始终为二进制的字符串,并输入到单元格E3中,例如:

“猫,猫,狗”

我想用一个IF语句来解释这个,所以

如果(E3=类别1,0)

有没有一种方法可以让上面的if语句在不使用VBA的情况下对字符串起作用?也许可以告诉它在“,”之前或之后测试任何字符?此外,理想情况下,if语句将通过3个单元格应用,因此它看起来像:

1
1
0

我可以在Excel中使用RC方法吗?

对于可变/不等的字符串长度,要使它工作起来有点困难。请参阅下图。我在
B4:B9
中将其作为数组公式(Ctrl+Shift+Enter)输入:

=1-MOD(SMALL(IF(MID(B1,ROW(INDIRECT("1:"&LEN(B1))),LEN(B2))=B2,ROW(INDIRECT("1:"&LEN(B1))),IF(MID(B1,ROW(INDIRECT("1:"&LEN(B1))),LEN(B3))=B3,ROW(INDIRECT("1:"&LEN(B1)))+0.5)),ROW(INDIRECT("1:"&INT(LEN(B1)/MIN(LEN(B2),LEN(B3)))+1))),1)*2

什么是“如果(E3=‘cat’,1,0’”意思?您是否试图检查E3是否仅为“cat,cat,cat…”-即字符串中没有“dog”?目标是能够在F列中写下,如果e列中的值为cat,则为“买入”;如果值为dog,则为“卖出”。我想在不使用VBA的情况下,通过循环E中的每个单元格在B中写入相应的值,所以我想,如果我将E列中的所有值都设置为字符串,然后检查上面的方法是否可行?那么在E列下有值?如果值是“猫”,你想让B说“买”,否则说“卖”?您的描述非常混乱。很高兴提供更多的澄清-但是的,这是目标,不确定没有VBA这是否可能。这是一些非常好的公式操作。我甚至可以把它印在t恤上0)