Excel 列T中的单元格(同一行)也显示错误。我一直在思考如果iserror(buyrate)或iserror(selrate),那么else并继续上面的公式。沿着正确的路线-不幸的是,设置buyrate时出现错误-因此我们在设置值之前进行测试(直接引用范围)。。。
Excel 列T中的单元格(同一行)也显示错误。我一直在思考如果iserror(buyrate)或iserror(selrate),那么else并继续上面的公式。沿着正确的路线-不幸的是,设置buyrate时出现错误-因此我们在设置值之前进行测试(直接引用范围)。。。,excel,vba,Excel,Vba,列T中的单元格(同一行)也显示错误。我一直在思考如果iserror(buyrate)或iserror(selrate),那么else并继续上面的公式。沿着正确的路线-不幸的是,设置buyrate时出现错误-因此我们在设置值之前进行测试(直接引用范围)。。。我已经更新了代码…感谢到目前为止的帮助。事实上,我已经更改了原始的If标准,并且它以前是有效的。但是,当我包含您已经包含的新测试时,我会得到一个错误,“NEXT WITHOUT FOR”。我已经在我原来的帖子中更新了代码。非常感谢您的帮助 Se
列T中的单元格(同一行)也显示错误。我一直在思考
如果iserror(buyrate)或iserror(selrate),那么else
并继续上面的公式。沿着正确的路线-不幸的是,设置buyrate时出现错误-因此我们在设置值之前进行测试(直接引用范围)。。。我已经更新了代码…感谢到目前为止的帮助。事实上,我已经更改了原始的If
标准,并且它以前是有效的。但是,当我包含您已经包含的新测试时,我会得到一个错误,“NEXT WITHOUT FOR”。我已经在我原来的帖子中更新了代码。非常感谢您的帮助
Set sht2 = Sheets("sheet2")
last_row = sht2.Cells.Find(What:="*", After:=[A1], LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
For row_no = 2 To last_row
If IsError(sht2.Range("R" & row_no)) Or IsError(sht2.Range("S" & row_no)) Then
y = "#N/A"
Else
buyrate = sht2.Range("R" & row_no)
selrate = sht2.Range("S" & row_no)
buyccy = sht2.Range("E" & row_no)
selccy = sht2.Range("G" & row_no)
If buyrate >= selrate And buyccy = "USD" Then
y = selrate
ElseIf buyrate >= selrate And buyccy <> "USD" Then y = buyrate
ElseIf buyrate < selrate And selccy = "USD" Then y = buyrate
Else: y = selrate
End If
sht2.Range("T" & row_no).Value = y
Next
Set sht2 = Nothing
End Sub
Sub Comparison()
Dim sht2 As Worksheet
Dim array_b()
Dim last_row As Integer
Dim row_no As Integer
Dim buyccy As String
Dim buyrate As String
Dim selrate As String
Dim y As String
Set sht2 = Application.ActiveWorkbook.Sheets("Sheet1")
'last_row = sht2.Range("A1").End(xlDown).Row
last_row = sht2.Cells.Find(What:="*", After:=[A1], LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'ReDim array_b(row_no - 1, 3)
For row_no = 2 To last_row
If IsError(sht2.Range("R" & row_no)) Or IsError(sht2.Range("S" & row_no)) Then
y = "#N/A"
Else
buyrate = sht2.Range("R" & row_no)
selrate = sht2.Range("S" & row_no)
buyccy = sht2.Range("E" & row_no)
If buyrate >= selrate And buyccy <> "USD" Then y = buyrate Else y = selrate
End If
sht2.Range("T" & row_no).Value = y
Next
Set sht2 = Nothing
End Sub