Excel 如果…;然后是修正角度测量值的语句
我正在尝试自动执行一个脚本,该脚本自动将角度方向测量值校正到0-360范围内。但每次运行代码时,都会出现运行时错误13类型不匹配。当我要求调试时,它会突出显示函数的Then部分,但我不知道它具体希望我更改什么Excel 如果…;然后是修正角度测量值的语句,excel,vba,Excel,Vba,我正在尝试自动执行一个脚本,该脚本自动将角度方向测量值校正到0-360范围内。但每次运行代码时,都会出现运行时错误13类型不匹配。当我要求调试时,它会突出显示函数的Then部分,但我不知道它具体希望我更改什么 Dim k As Integer For k = 4 To 1004 If Cells(k, 5).Value > 360 Then Cells(k, 5).Value = Cells(k, 5).Value - 360 If Cells(k, 5).Val
Dim k As Integer
For k = 4 To 1004
If Cells(k, 5).Value > 360 Then Cells(k, 5).Value = Cells(k, 5).Value - 360
If Cells(k, 5).Value < 0 Then Cells(k, 5).Value = Cells(k, 5).Value + 360
Next k
Dim k为整数
对于k=4到1004
如果单元格(k,5).Value>360,则单元格(k,5).Value=单元格(k,5).Value-360
如果单元格(k,5)。值<0,则单元格(k,5)。值=单元格(k,5)。值+360
下一个k
您可以使用Abs和Mod进行修正
Dim k As Integer
For k = 4 To 1004
Cells(k, 5).Value = Abs(Cells(k, 5).Value Mod 360)
Next k
如果-15°应为345°而不是15°,则
Dim k As Integer
For k = 4 To 1004
Cells(k, 5).Value = Abs(Cells(k, 5).Value Mod 360 - (Cells(k, 5).Value < 0) * 360)
Next k
Dim k为整数
对于k=4到1004
单元格(k,5)。值=绝对值(单元格(k,5)。值模360-(单元格(k,5)。值<0)*360)
下一个k
单元格出错时的值是多少?可能不是一个数字。你试过Mod
操作符吗?我认为IF-THEN函数会更好,因为大多数测量值都在0-360范围内,所以我只需要对那些超出范围的值进行校正。该列的所有值都是数字