已关闭,此问题需要更focused。目前不接受答复。
**想改善这个问题吗?**更新问题,使其仅通过editing this post关注一个问题。
7年前关闭。
Improve this question
我有一个表,其中的行代表客户,每个月,我在每行上添加一列,表示他们的订单类型(A,B或C)。
我需要确定每个客户谁做了一个类型A的订单(在任何一个月),然后,在接下来的一个月,做了一个类型C的订单。
然而,如果在从“A”到“C”类型的订单(一个或多个月做“C”)之后,客户返回到“A”,我不需要识别他。
“B”订单在找到“A”订单后无动于衷
给出的示例:
Client M1 M2 M3 M4 Identify
01 A B C C Yes
02 A B C A No
03 A C B A No
04 B B A C Yes
05 B A C B Yes
06 C A B B No
07 A A A C Yes
08 A A A A No
09 A C A C Yes
10 A C C A No
等等。
我不知道我是否可以用一个简单的公式或使用VBA来完成。
**已编辑:**由于每个月我都添加一个新列,公式或VBA应该考虑所有可能性(如“ACCA”,“ACCCCA”等)。还添加了客户端07、08、09和10作为示例。
先谢谢你。
JT
1条答案
按热度按时间monwx1rj1#
如果没有VBA,一个简单的方法是:(在F2中,然后向下复制)
作为“OnlyDoesWhatIAskedFor”-UDF将其放入模块中:
然后在单元格中输出(按F2键并简单地向下复制)
它只检查范围内的A-C顺序,而B将被忽略,并且A-C-A也输出“否”…
编辑
如果只有最后一个AC/ACA计数,那么你需要这样的东西:(在模块中)
您可以在下图中看到它执行的每个步骤: