Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.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
VBA使用公式1C1查找左直到空格_Vba_Excel - Fatal编程技术网

VBA使用公式1C1查找左直到空格

VBA使用公式1C1查找左直到空格,vba,excel,Vba,Excel,我目前有一段VBA代码,用于查找左侧的前两个字符,即: Range("EB5").Select ActiveCell.FormulaR1C1 = "=LEFT(Input!R[-2]C[-92],2)" Range("EB5").Select Selection.AutoFill Destination:=Range("EB5:EB" & rownumfinal) 然而,我希望这能找到左边的字符,直到有一个空格 是否有人可以建议如何执行此操作?使用查找功能,而不是硬编码2作为左功能的第

我目前有一段VBA代码,用于查找左侧的前两个字符,即:

Range("EB5").Select
ActiveCell.FormulaR1C1 = "=LEFT(Input!R[-2]C[-92],2)"
Range("EB5").Select
Selection.AutoFill Destination:=Range("EB5:EB" & rownumfinal)
然而,我希望这能找到左边的字符,直到有一个空格


是否有人可以建议如何执行此操作?

使用
查找
功能,而不是硬编码
2
作为
功能的第二个参数:

"=LEFT(Input!R[-2]C[-92],FIND("" "",Input!R[-2]C[-92])-1)"
也。这通常是不必要的,也是导致错误的主要原因

您的代码可以简化为一条语句:

Range("EB5:EB" & rownumfinal).FormulaR1C1 = _
    "=LEFT(Input!R[-2]C[-92],FIND("" "",Input!R[-2]C[-92])-1)"

使用
FIND
函数代替硬编码
2
作为
LEFT
函数的第二个参数:

"=LEFT(Input!R[-2]C[-92],FIND("" "",Input!R[-2]C[-92])-1)"
也。这通常是不必要的,也是导致错误的主要原因

您的代码可以简化为一条语句:

Range("EB5:EB" & rownumfinal).FormulaR1C1 = _
    "=LEFT(Input!R[-2]C[-92],FIND("" "",Input!R[-2]C[-92])-1)"

您需要将公式中的引号加倍。;)此外,我可能会使用
“=LEFT(Input!R[-2]C[-92]&“”,FIND(“”,Input!R[-2]C[-92])-1)”
,以防原始文本中不总是有空格。:)嗨,谢谢你的回复。这导致了一个编译错误:Expected:end-of-statement在查找之后(“有什么想法吗?@JDRows您注意到我们必须将引号加倍的修订版了吗?很抱歉,我该怎么做才能让它在没有空间返回单元格值的情况下?您需要将公式中的引号加倍)。)另外,我可能会使用
“=LEFT(Input!R[-2]C[-92]&“”,FIND(“”),Input!R[-2]C[-92])-1)
以防原始文本中不总是有空格。:)您好,感谢您的回复。这会导致编译错误:应为:FIND(“有什么想法吗?@JDRows您注意到我们不得不将引号加倍的修订吗?很抱歉,这让我很痛苦,如果没有空间返回单元格的值,我该怎么做?