因为我是VBA的完整新手,我有一个问题.
我有一列整数,我想要除以60.列是"X".这是我的代码:
For Each element In Worksheets("parsed").Range("X1:X" & MaxRows).Cells
element.Value = element.Value / 60
Next
Run Code Online (Sandbox Code Playgroud)
但我总是得到"类型不匹配".我做错了什么?
首先,确保声明element为范围.其次,.cells从循环中删除.然后在你的循环语句中有效地说For each cell in the range:
Sub SomeProc()
Dim element As Range
Dim MaxRows As Long
With Worksheets("parsed")
MaxRows = .Cells(.Rows.Count, "X").End(xlUp).Row
End With
For Each element In Worksheets("parsed").Range("X1:X" & MaxRows)
If IsNumeric(element.Value) Then
element.Value = element.Value / 60
End If
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
我已经假设它MaxRows是作为X工作表列中的最后一行.