我是VBA和Stack Overflow的新手 .
我没有使用宏 Logger ,因为我正在制作的宏需要是动态的 . 从 Marketo
导出的数据不会始终以相同顺序的列导出 .
我正在尝试创建执行以下操作的宏:
-
在电子表格 Headers 中搜索以下列:电子邮件地址,组编号,母带规则得分和主数据指示器 .
-
从这些标识的列中选择所有数据并按降序排序 .
-
插入一个EXACT公式,用于比较旁边新列中的组编号列 .
-
过滤结果为TRUE
-
删除所有具有TRUE结果的行
-
并且不过滤,只留下错误的结果
这是我在网上找到的用于查找和排序列的宏:
Public Sub LocateSortGroupNumber()
Dim rngAddress As Range
Set rngAddress = Range("A1:BZ1").Find("Group Number")
If rngAddress Is Nothing Then
MsgBox "Group Number column was not found"
Exit Sub
End If
With Range(rngAddress, rngAddress.End(xlDown))
.Cells.Sort key1:=.Columns(1), order1:=xlDescending, _
Orientation:=xlTopToBottom, Header:=xlYes
End With
End Sub
我重新创建了这个宏三次以搜索和过滤其他命名列 .
这就是我用来创建组号旁边的新列:
Public Sub InsertColumn()
Dim DischargeDate As Range
Set DischargeDate = Range("A1:BZ1").Find("Group Number")
If DischargeDate Is Nothing Then
MsgBox "Group Number column was not found"
Exit Sub
Else
Columns(DischargeDate.Column).Offset(, 1).Resize(, 1).Insert
End If
End Sub
创建新列后,我需要插入一个EXACT公式,比较像这样的组号列值,例如: =EXACT(P2,P3)
然后让公式自动填充,直到数据集的末尾比较组号中的所有值 .