有条件检查正面价值反对否定

If语句中,如何匹配正数和负数,例如,如果500与-500匹配,则剪切并粘贴

我想到的一个解决scheme是在我做任何事之前改变其中的一个列,但无论如何,我可以改写下面的If语句来匹配一个正单元格和一个负单元格?


 Dim sh1 As Worksheet, sh2 As Worksheet Dim j As Long, i As Long, lastrow1 As Long, lastrow2 As Long Set sh1 = Worksheets("WorksheetA") Set sh2 = Worksheets("WorksheetB") lastrow1 = sh1.Cells.SpecialCells(xlCellTypeLastCell).Row lastrow2 = sh2.Cells.SpecialCells(xlCellTypeLastCell).Row For i = 1 To lastrow1 For j = 1 To lastrow2 If sh1.Cells(i, "H").Value = sh2.Cells(j, "E").Value Then sh2.Cells(j, "O").Value .Cut sh1.Cells(i, "L").Value End If Next j Next i End Sub 

你有没有尝试过使用Abs

 If (Abs(sh1.Cells(i, "H").Value) = Abs(sh2.Cells(j, "E").Value)) Then 

ABS函数返回绝对值,即正值。 所以ABS(-14) = 14 。 你可以使用这两个值。