【问题标题】:What does & do in VBA在 VBA 中做什么和做什么
【发布时间】:2018-07-03 04:24:07
【问题描述】:

我是 VBA 新手,在& 上有一个问题,下面这段代码中的两个& 是做什么的,我们可以删除最后一个吗?

Range("H2").Formula = "=COUNTIF(H4:H" & WKB2.Range("F" &     
Rows.Count).End(xlUp).Row & ",""AMB"")"

其他一些代码只有一个&,但仍然有效。例如:

ActiveSheet.Range("F5:F" & lastrow1 - 1).Formula = "=IF(C5>0,""CC"",""AMB"")"

这里有什么区别。

提前致谢。

【问题讨论】:

  • 下面的代码怎么样

标签: vba


【解决方案1】:

& 是 VBA 中两个可能的字符串连接运算符之一。
+ 也是可能的,but IMO & is better

例如"A" & "B" 将产生“AB”。

或者,使用你的一个例子 - 比如说lastrow1 = 5,所以lastrow1 - 1 = 4,所以这个:

ActiveSheet.Range("F5:F" & lastrow1 - 1)

...将变成:

ActiveSheet.Range("F5:F4")

【讨论】:

  • 感谢 Christian,它清楚地解释了它的作用,您介意了解第一个代码。通过删除第二个&,第一个代码是否仍然有效?如下: Range("H2").Formula = "=COUNTIF(H4:H" & WKB2.Range("F" & Rows.Count).End(xlUp).Row ",""AMB"")"
  • @Classique 你是什么意思?只需删除&
  • @JohnyL 是的,只需从第一个代码中删除第二个 & ,它是否仍然有效,为什么。
  • @Classique 当然,它不会起作用 - 会有错误。你没试过吗? :)
  • 删除将不起作用,因为需要第二个&",""AMB"")" 与字符串的其余部分连接起来。不过,我不知道 Excel 公式,所以我不确定 COUNTIF 做了什么以及它需要什么参数。
【解决方案2】:

对于 Excel 公式和 VBA - 1 或 2 '&' 的确切位置和位置取决于您的用例。

要与公式的其余部分连接,您需要 &variable&(所以 2 &s)。

如果末尾没有要连接的内容,但开头有内容,则使用 &variable。

如果开头没有要连接的内容,但结尾有要连接的内容,则使用变量&。

如果开头或结尾没有要连接的内容,则只需使用变量。

希望这是有道理的。

【讨论】:

    猜你喜欢
    • 2014-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多