我试图煽动单元格中的值,但尽管文档说Visual Basic允许+ =运算符,但它只是给我“编译错误:预期:表达式”。VBA中的+ =运算符是否不存在?
Range("CellName").Value += 1
是何等的突破,但如果我不
Range("CellName") = Range("CellName") + 1
它工作正常
我试图煽动单元格中的值,但尽管文档说Visual Basic允许+ =运算符,但它只是给我“编译错误:预期:表达式”。VBA中的+ =运算符是否不存在?
Range("CellName").Value += 1
是何等的突破,但如果我不
Range("CellName") = Range("CellName") + 1
它工作正常
不,它不存在VBA。
VB.NET可能需要+=
(虽然我甚至不确定)。
你将不得不使用
Range("CellName").Value = Range("CellName").Value+1
一个很好的参考,可以发现here
VB.Net绝对会。 –
不,它不需要有它的数字,例如> Microsoft Visual Basic帮助 - - > Visual Basic应用程序语言参考 - >视觉
帮助:看http://msdn.microsoft.com/de-de/library/215yacb6%28v=vs.80%29.aspx/http://msdn.microsoft.com/en-us/library/cey92b0t.aspx
VBA运营商的 “官方” 的列表,可以在VBA帮助在这里找到Basic语言参考 - >运营商 - >算术运算符(online here)
也许有争议,但接下来的意见将有救了我大量的时间和头痛:
我会说这是最好忘记一切关于VB和专注于VBA,因为两者是不同的语言。人们不会提及“哦,OCaml,APL,PHP或Fortran有增量运算符”,因为如果范围是VBA,它是无关紧要的。以同样的方式,VB已经或没有的是脱离主题的,通常它只会增加混淆,因为它是相似的。最好使用微软Office的帮助系统,或在网上提供的应用程序的语言参考提供的“本地”的Visual Basic:
http://msdn.microsoft.com/en-us/library/office/gg264383%28v=office.15%29.aspx
根据该官方列表,VBA没有+ =运算符。 不要忘了实际回答问题。 – Sheldon
这真是烦人。我做了以下功能,使我的生活更容易一点:
' ++
Function pp(ByRef x, Optional y = 1)
x = x + y
pp = x
End Function
' --
Function mm(ByRef x, Optional y = 1)
x = x - y
mm = x
End Function
并不能真正帮助你的情况,你仍然必须键入相同的量:
Range("CellName") = pp(Range("CellName"))
但对于简单的循环它增加了它的帮助:
do while cells(x,1) <> ""
pp x
loop
'VBA'与'VB.net'完全不同 - 'VBA'没有那么严格,但是VB.NET又没有'c#'那么严格, 。我喜欢他们 - 'VBA'似乎有限,但如果你使用Excel,那么'VBA'是应用程序的一部分,因此可以非常强大。 – whytheq