我有一个列表,其中一列中的所有金额都设置为Dr和Cr格式,并且我记录了一个宏,该宏会自动过滤并搜索“ Cr”符号并将其更改为负数,但是当我的列表增加并更新时,此宏无法正常工作。我在VBA中使用了自动过滤器,但没有一个能完美运行。
我正在寻找一个代码,当它在列中找到“ Cr”时,应将其更改为负数。
答案 0 :(得分:0)
尝试可能会有所帮助:
Option Explicit
Sub test()
Dim ws As Worksheet
Dim Lastrow As Long, Row As Long
With ThisWorkbook.Worksheets("Sheet1")
'Find Last row of column A in sheet ws
Lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row
'Loop rows from bottom to top
For Row = 1 To Lastrow
'Check value lenght
If Right(.Range("A" & Row).Value, 2) = "Cr" Then
.Range("A" & Row).Value = Abs(.Range("A" & Row).Value) * -1
End If
Next Row
End With
End Sub