我正在尝试编写一个执行以下操作的宏:
我有以下但它不起作用,现在似乎还有错误“无法获取工作表函数类的Match属性。
Option Explicit
Sub Testing()
Dim x As Long
Dim y As Long
Dim LastRow As Long
Dim MatchedRow As Long
Dim RowValue As String
LastRow = Range("A999999").End(xlUp).Row
For x = LastRow To 1 Step -1
RowValue = Range("A" & x).Value
If Application.WorksheetFunction.CountIf(Range("A1:A" & x), Range("A" & x).Text) > 1 Then
MatchedRow = Application.WorksheetFunction.Match(RowValue, Range("A1:A" & x), 0)
If Range("C" & MatchedRow).Value <> "" Then
Range("A" & x).EntireRow.Delete
End If
End If
Next x
End Sub
我希望有人可以提供帮助。
答案 0 :(得分:3)
发生错误是因为RowValue
被声明为字符串。如果列A有数字,MATCH
函数将返回错误(除非数字被格式化为文本)。
将Dim RowValue As String
更改为Dim RowValue As Variant
,它将适用于所有数据类型