VBA でこれを行う場合は、次のマクロをワークブックに追加できます。
編集
あなたのコメントは、元の質問が示唆するように末尾だけでなく、先頭と末尾のゼロの両方を探していると述べています。その場合は、3 つのゼロがどこにあるかをチェックする単純な条件ステートメントを使用して、これを実現できます。
可能であればFormat
、セルNumber type
が先頭のゼロを削除する方がはるかに簡単です。それが不可能な場合は、それを実現するマクロを次に示します。
Public Sub CompareValues()
Dim rowCount As Integer, currentRow As Integer
Dim firstCellValue As String
Dim secondValValue As String
rowCount = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
Dim test As String
For currentRow = rowCount To 1 Step -1
'remove three leading or trailing 0's from value
test = Left(Cells(currentRow, 1).Value, 3)
If Left(Cells(currentRow, 1).Value, 3) = "000" Then
firstCellValue = Right(Cells(currentRow, 1).Value, Len(Cells(currentRow, 1).Value) - 3)
Else
firstCellValue = Left(Cells(currentRow, 1).Value, Len(Cells(currentRow, 1).Value) - 3)
End If
secondValValue = Cells(currentRow, 2).Value
If Not IsEmpty(firstCellValue) And Not firstCellValue = "" Then
If firstCellValue = secondValValue Then
Cells(currentRow, 1).Value = secondValValue
Else
Cells(currentRow, 1).EntireRow.Delete
End If
End If
Next
End Sub
マクロ前
マクロ後