在Excel电子表格中单击运行代码,最好通过button

我以前从未使用过macros,或者使用过Visual Basic for Applications。 我需要这个作为Microsoft Excel 2013核对清单的一部分。

我的目标:一旦清单已经填写完毕,我希望将活动工作表附加到电子邮件中,同时自动填写电子邮件地址,例如XXX部分的“Checklist_XXX”主题将根据用户的使用情况进行修改清单,所以它可能是Checklist_12345。

我采取的步骤:清单是完整的,我已经创build了一个默认没有代码的ActiveXbutton。

我在网上find了下面的代码,这似乎是我所需要的:

Sub Mail_workbook_Outlook_1() Dim OutApp As Object Dim OutMail As Object Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0) On Error Resume Next With OutMail .to = "myemail@gmail.com,myemail2@gmail.com" .Subject = "Checklist_" .Body = "I have attached my checklist related to change" .Attachments.Add ActiveWorkbook.FullName .Display End With On Error GoTo 0 Set OutMail = Nothing Set OutApp = Nothing End Sub 

我认为这样做:我相信这将创build一个Outlook电子邮件与附加的消息,并将有myemail@gmail.com和myemail2@gmail.com收件人的主题和正文修改。 我将它从.send更改为.display,以便在发送之前进行审阅。

简短的问题:我如何在Excel电子表格中点击运行这个代码,最好通过一个button?

将代码附加到一个ActiveX命令button的单击:

点击button,然后selectView Code
你会被带到一个屏幕上,里面有一些代码:

 Private Sub CommandButton1_Click() End Sub 

只需在那里添加你的程序名称:

 Private Sub CommandButton1_Click() Mail_workbook_Outlook_1 End Sub 

注意:
在可能值得您同时将button名称更新为比CommandButtonx更有意义的东西。
右键单击,select属性并更新(name)字段。