Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.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中不存在运算符?_Vba_Excel_Operators - Fatal编程技术网

+;=VBA中不存在运算符?

+;=VBA中不存在运算符?,vba,excel,operators,Vba,Excel,Operators,我试图证明单元格中的值,但尽管文档中说VisualBasic允许+=运算符,但它只是给了我“编译错误:预期:表达式” 是什么打破了,但如果我打破了 Range("CellName") = Range("CellName") + 1 它工作正常不,它在VBA中不存在 VB.NET可能需要+=(尽管我甚至不确定) 你必须使用 Range("CellName").Value = Range("CellName").Value+1 可以找到一个很好的参考不,它没有数字参考,例如,请参见在VBA帮助中

我试图证明单元格中的值,但尽管文档中说VisualBasic允许+=运算符,但它只是给了我“编译错误:预期:表达式”

是什么打破了,但如果我打破了

Range("CellName") = Range("CellName") + 1

它工作正常

不,它在VBA中不存在

VB.NET可能需要
+=
(尽管我甚至不确定)

你必须使用

Range("CellName").Value = Range("CellName").Value+1

可以找到一个很好的参考

不,它没有数字参考,例如,请参见

在VBA帮助中可以找到VBA运算符的“官方”列表:

帮助-->Microsoft Visual Basic帮助-->Visual Basic for Applications语言参考-->Visual Basic语言参考-->运算符-->算术运算符()

也许会引起争议,但下一个建议会为我节省很多时间和麻烦:

我认为最好忘记关于VB的一切,专注于VBA,因为这两种语言是不同的。人们不会提到“哦,OCaml、APL、PHP或Fortran都有增量运算符”,因为如果范围是VBA,那就不谈了。同样地,VB有或没有的东西也是离题的,通常它只是因为相似性而增加了混淆。更好地使用MS Office提供的“本地”Visual Basic作为帮助系统或在线提供的应用程序语言参考:


真烦人。为了让我的生活更轻松,我做了以下功能:

' ++
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
do while单元格(x,1)”
pp x
环

VBA
VB.net
有很大不同-
VBA
对类型要求不那么严格,但是
VB.net
没有
c>那么严格。我喜欢所有这些-
VBA
似乎有限,但如果你在玩Excel,那么
VBA
是应用程序的一部分,因此功能非常强大。根据官方列表,VBA没有+=运算符。别忘了实际回答这个问题。
do while cells(x,1) <> ""
    pp x
loop