我目前正在创建一个 VBA 宏,它将搜索名为“电子邮件”或“电子邮件 - 个人电子邮件”的列(这是同一列,但这两个名称是替代品)。
因此,首先搜索电子邮件列,找到后检查电子邮件地址末尾是否有任何点。如果是,它应该删除它们。
我的 VBA 知识有限,而且我不是 IT 专家。所以我主要使用和修改我在互联网上找到的现有脚本。下面是我结合2个宏的代码。它工作正常,但仅当电子邮件列位于同一位置时(在本例中为 S 列)。我应该如何修改代码以使用发现电子邮件标题的列?
我的代码:
Sub GOOD_WORKS_No_Dots_at_End_of_Emails()
Dim strSearch As String
Dim aCell As Range
strSearch = "Email*"
Set aCell = Sheet2.Rows(1).Find(What:=strSearch, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not aCell Is Nothing Then
Sheets("Data").Activate
Dim LR As Long, i As Long
LR = Range("S" & Rows.Count).End(xlUp).Row
For i = 1 To LR
With Range("S" & i)
If Right(.Value, 1) = "." Then .Value = Left(.Value, Len(.Value) - 1)
End With
Next i
Sheets("Automation").Activate
MsgBox "No Dots at the end of email addresses - Done!"
End If
End Sub