Excel 一个单元格中有多个单词,如何在不分隔的情况下分隔

Excel 一个单元格中有多个单词,如何在不分隔的情况下分隔,excel,excel-formula,vba,Excel,Excel Formula,Vba,由于错误的在线调查设置,多项选择题、全选题和应用题的答案都集中在一个单元格中。例如: 所有可选选项如下所示: A12B1234C3D845E00091F 具有响应的单元格如下所示: 单元格A1:A12C3E00091 单元格A2:B1234F 单元A3:C3D845F 有100个这样的细胞有随机反应 我需要以某种方式自动化数据提取,然后计算每个选项 我试着用左,右等等。它并没有真正的帮助 我确实使用了Find,然后尝试提取数据,但我不确定是否有一个函数可以从单元格中的特定起点工作 如果有人能帮忙

由于错误的在线调查设置,多项选择题、全选题和应用题的答案都集中在一个单元格中。例如:

所有可选选项如下所示:

A12
B1234
C3
D845
E00091
F

具有响应的单元格如下所示:

单元格A1:
A12C3E00091

单元格A2:
B1234F

单元A3:
C3D845F

有100个这样的细胞有随机反应

我需要以某种方式自动化数据提取,然后计算每个选项

我试着用左,右等等。它并没有真正的帮助

我确实使用了Find,然后尝试提取数据,但我不确定是否有一个函数可以从单元格中的特定起点工作

如果有人能帮忙的话

谢谢。

  • 将数据复制到范围A2:A101
  • 在B1:G1中,输入A、B、C、D、E、F
  • 在B2中,输入=LEN($A2)-LEN(替换为($A2,B$1,“))
  • 将B2复制到B2:G101
结果:

将其复制到vba模块中,并使用Countwords(RangeString、SearchTerm)作为单元格函数:

Public Function CountWords(r As String, Search As String) As Integer
Dim a As Variant, str As String, Count As Integer
For Each a In Range(r).Value
    str = str & a
Next a
Count = (Len(str) - Len(Replace(str, Search, ""))) / Len(Search)
CountWords = Count
End Function
So=CountWords(“A1:A10”;“A12”)计算A1:A10范围内的A12。

Kartike

如果我没弄错的话,你想知道哪些选项在有响应的单元格中表示。我认为你使用find是正确的。要测试选项1是否位于单元格A1中,请运行:

=ISNUMBER(FIND("A12"; A1))
如果包含字符串“A12”,则返回TRUE,否则返回FALSE。答案字符串位于A2下方的一列中,选项字符串位于B1右侧的一行中,您可以通过使用

=ISNUMBER(FIND(B$1;$A2))
从B2单元开始

问候,,
Mats

我认为给出的答案会有帮助。您是否尝试过使用
instr
功能?您只需要检查6种可能性,因此您可以设置6条if语句来检查每个单元格并根据每个结果进行处理。这与我的代码基本相同,但不能计算同一答案的多次出现次数。