在工作簿A中搜索字符串,而此字符串是Workbook B中较大字符串的一部分

时间:2016-06-17 11:44:10

标签: vba excel-vba macros excel

这是关于Excel中的宏的问题:

我正在使用2本工作簿。工作簿A中包含以下形式的字符串:

"x ind. y" 

其中x和y表示某些任意字符串,字符串为" ind。"在他们之间。让我们说我感兴趣的一个这样一个特殊的字符串发现自己在单元格B2中。

现在我想提取x作为子串,直到" ind"子。我可以使用以下公式来做到这一点:

=left(B2,search(""ind"",B2)-1)

这个公式已经证明自己可以正常工作,所以没有问题。 我的问题是,如何将此公式的结果分配给我的宏中的字符串?然后,如果我有这个字符串,我想在工作簿B中搜索它。

我不能使用这样的东西:

dim word as string
...
word = "=left(B2,search(""ind"",B2)-1)"

word.formula = "=left(B2,search(""ind"",B2)-1)"

我可以做Range("some cell").Formula = "=left(B2,search(""ind"",B2)-1)"但是这会将公式的结果粘贴到某个单元格中,但这不是我想要的,我只想将它存储在字符串' word' 。

1 个答案:

答案 0 :(得分:0)

如果" x"之间总是有空格。和" ind。",试试这个:

word = Left(wbA.Range("B2").Value, InStr(wbA.Range("B2").Value, "ind.") - 2)

wbA是对工作簿A的引用。