【发布时间】:2021-02-08 05:22:17
【问题描述】:
我想检查用户窗体中的所有复选框。每个复选框的编号从 2 到 15。当一个复选框被选中时,它将从 Excel 单元格发送一封电子邮件。
例如Checkbox2 从工作表中的 A2 读取数据
我尝试制作循环。
Sub MailExcelVbaOutlookDisplay()
Dim zm1 As Variant
Dim ctl As Control
Dim i As Variant
For i = 2 To 15
Set ctl = Me.Controls("CheckBox" & i)
If ctl.Visible = True Then
zm1 = i
Dim kola As Variant
kola = Sheets("DataBase").Range("A" & zm1.Value).Value
Dim kolb As Variant
kolb = Sheets("Database2").Range("B" & zm1.Value).Value
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = kolb
.CC = ""
.Subject = "subject"
.HTMLBody = "body"
.Attachments.Add Attachment_Box.Value
.Display
End With
Set OutMail = Nothing
Set OutApp = Nothing
End If
Next i
Unload Me
End Sub
【问题讨论】:
标签: excel vba checkbox userform