【发布时间】:2021-12-03 19:39:42
【问题描述】:
我有一列包含字符串。对于列中的每一行,我想检查字符串是否以数组中包含的几个字符串之一开头。这个数组可以包含任意数量的字符串来检查列。
我想要的输出是一个数组 {TRUE;FALSE;TRUE;TRUE;etc} 如果字符串以数组中包含的任何字符串开头,则返回 TRUE。
有人知道怎么做吗?谢谢!
为澄清而编辑: Office 365(版本 2109)。我不能共享电子表格本身,但该列包含像 {1.1;1.1.1;1.1.2;1.2;1.3;etc} 这样的值,并且有问题的数组是像 {1.1 ;1.2},所以我希望它知道在这种情况下列中的哪些单元格以 1.1 或 1.2 开头。所以它基本上是一个按层次排序的列表,无论给定的数据行是数组中的任何项的子项还是本身就是数组中的任何项,我都希望能够将其拉入数组中。
理想情况下,这将是一个仅限公式的解决方案,但如果有必要,我对 VBA 很满意。
示例数据
请记住,在实际数据中,B 列中有许多单元格,其中包含的不仅仅是两个条目。
【问题讨论】:
-
这适用于什么版本的 Excel?你能发布一个带有预期结果的小例子吗?
-
Office 365(版本 2109)。我无法共享电子表格本身,但该列包含 {1.1;1.1.1;1.1.2;1.2;1.3*etc*} 之类的值,而有问题的数组是 {1.1;1.2} 之类的东西,所以我在这种情况下,希望它知道列中的哪些单元格以 1.1 或 1.2 开头。所以它基本上是一个按层次排序的列表,无论给定的数据行是数组中的任何项的子项还是本身就是数组中的任何项,我都希望能够将其拉入数组中。
-
请edit在帖子中包含任何澄清。请包括数据模型和预期输出。还要注意您是否需要公式或 vba 并使用所需的方法正确标记它。
-
@ScottCraner 明白了,完成
-
所以从“有问题的数组是 {1.1;1.2} 之类的东西”,我推断这些数组只包含数字,而不包含诸如“1.1.1”之类的条目,这需要作为字符串输入?
标签: excel vba excel-formula