目前我正在处理一个自动报告,该报告将通过Excel VBA每周五发送出去。 我已将代码放在一起,但是,它无法正常工作,我无法找出问题所在。
我想要实现的目标:
- 我在Excel中从A列到J列有一组数据(将输入其他行 - 我目前将范围设置为200)
- 我想过滤数据以寻找" N / A"在G栏中
- 我想选择已过滤的行并将其发送到邮箱
我猜测错误在于选择过滤,因为当我收到电子邮件时,有些行是完全空的,或者只包含来自一列的数据等(例如,我应该收到5行,因为那里只有5个N / A细胞,但是,我得到的不仅仅是那个)
以下是我正在使用的代码:
Private Sub Workbook_Open()
Application.DisplayAlerts = False
Call filteringSN
Call Send_Range
Call removeFilter
Application.DisplayAlerts = True
End Sub
Sub filteringSN()
ActiveSheet.Range("$A$1:$J$200").AutoFilter Field:=7, Criteria1:="N/A"
End Sub
Sub Send_Range()
Application.DisplayAlerts = False
ActiveSheet.UsedRange.Offset(1, 0).SpecialCells _
(xlCellTypeVisible).Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "HELLO"
.Item.To = "abc@aaaa.com"
.Item.Subject = "<TEST>"
.Item.Send
End With
Application.DisplayAlerts = True
End Sub
答案 0 :(得分:0)
你的代码对我很有用。 您的Outlook可能只是以一种奇怪的方式格式化您收到的邮件吗?