我有一张excel表格,其中包含完整列中的电子邮件(列的顺序不准确且不断变化)。
我使用了看起来像这样的find函数。
Sub emialy()
Cells.Find ("@",,xlValues,xlPart,xlByRows,,,,) ActiveCell.Copy
End Sub
但我收到了错误......
然后,如果程序找到电子邮件列表开始的位置,我想复制第一封电子邮件并打开电子邮件客户端(outlook),请创建一封新电子邮件并将完全复制的电子邮件粘贴到“收件人:”行。< / p>
答案 0 :(得分:1)
使用Find
函数的推荐方法是将Range
类型变量设置为结果。通过这种方式,您可以捕获方案Find
无法在@
的工作表单元格中找到If Not EmailRng Is Nothing Then
。
<强>代码强>
Sub emialy()
Dim EmailRng As Range
Set EmailRng = Cells.Find(What:="@", LookIn:=xlValues, Lookat:=xlPart, SearchOrder:=xlByRows)
If Not EmailRng Is Nothing Then ' succesful find
EmailRng.Copy
Else
MsgBox "Could not find the @ symbol"
End If
End Sub