编译错误 - 需要变量 - 无法分配给此表达式
Compile Error - Variable Required-can't assign to this expression
这是我正在复制的代码:
Private Sub btnRefresh_Click()
Dim W As Worksheet: Set W = ActiveSheet
Dim Last As Integer: Last = W.Range("A100").End(xlUp).Row
If Last = 1 Then Exit Sub
Dim Symbols As String
Dim i As Integer
For i = 2 To Last
Symbols = Symbols & W.Range("A" & i).Value & "+"
Next i
Symbols = Left(Symbols, Len(Symbols - 1))
Debug.print Last
Debug.print Symbols
End Sub
我很确定问题出在第三行。我本来写的
Dim Last as Integer: Set Last = W.Rang("A100").End(xlUp).Row
我意识到 Set
只适用于对象,所以我删除了它。现在我收到错误信息:
Compile Error. Variable Required-cannot assign to this expression.
知道哪里出了问题吗?
是这行:
Symbols = Left(Symbols, Len(Symbols - 1))
您正在尝试从字符串中减去一个数字。我觉得应该是
Symbols = Left(Symbols, Len(Symbols) - 1)
从 Symbols
的长度中减去 当你遇到编译错误时,它会突出显示错误所在的行。就我而言,它突出显示了减号。
这是我正在复制的代码:
Private Sub btnRefresh_Click()
Dim W As Worksheet: Set W = ActiveSheet
Dim Last As Integer: Last = W.Range("A100").End(xlUp).Row
If Last = 1 Then Exit Sub
Dim Symbols As String
Dim i As Integer
For i = 2 To Last
Symbols = Symbols & W.Range("A" & i).Value & "+"
Next i
Symbols = Left(Symbols, Len(Symbols - 1))
Debug.print Last
Debug.print Symbols
End Sub
我很确定问题出在第三行。我本来写的
Dim Last as Integer: Set Last = W.Rang("A100").End(xlUp).Row
我意识到 Set
只适用于对象,所以我删除了它。现在我收到错误信息:
Compile Error. Variable Required-cannot assign to this expression.
知道哪里出了问题吗?
是这行:
Symbols = Left(Symbols, Len(Symbols - 1))
您正在尝试从字符串中减去一个数字。我觉得应该是
Symbols = Left(Symbols, Len(Symbols) - 1)
从 Symbols
的长度中减去 当你遇到编译错误时,它会突出显示错误所在的行。就我而言,它突出显示了减号。