我是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) 然后让公式自动填充,直到数据集的末尾比较组号中的所有值 .