excel - 运行分配给该行中单元格的宏的按钮
问题描述
我希望将一个按钮分配给一个宏,按下该宏时将发送一封电子邮件,该电子邮件引用与该按钮位于同一行的单元格中的数据。
我有发送电子邮件的代码,但目前只知道如何将其直接链接到某些单元格,例如 A1、B1、C1。
Sub Email_From_Excel_Basic()
Dim emailApplication As Object
Dim emailItem As Object
Set emailApplication = CreateObject("Outlook.Application")
Set emailItem = emailApplication.CreateItem(0)
' Now we build the email.
emailItem.to = Range("A1")
emailItem.Subject = Range("B1")
emailItem.Body = Range("C1")
emailItem.Display
Set emailItem = Nothing
Set emailApplication = Nothing
End Sub
我想要做的是单击分配给一行的按钮,然后使用该行中的单元格引用运行宏。
任何帮助将不胜感激。
谢谢
解决方案
我的建议是有一个按钮并让它在活动行上触发。您可以在工作表中选择所需的行,然后按 按钮。该ActiveCell.row
属性将拉动您的选择。该ws.Cells
函数接受 row 和 column 的参数。使用ActiveCell.row
指定行,同时对列进行硬编码以选择所需的单元格。
使用Active<anything>
某些宏可能会变得棘手,但只要按钮和数据在同一个工作表上,你应该没问题。
Dim ws As Worksheet
Dim row As Integer
Set ws = ActiveSheet
row = ActiveCell.row
emailItem.to = ws.Cells(row, 1)
emailItem.Subject = ws.Cells(row, 2)
emailItem.Body = ws.Cells(row, 3)
推荐阅读
- .net-core - 什么是基于微服务的架构中的上游和下游服务?
- image - 上传图片生成特效视频
- ajax - AJAX 默认配置
- javascript - 遍历对象数组的嵌套子对象并使属性等于 false - JavaScript
- android - Android Studio 更改默认底部导航行为
- azure - 为什么我的 ARM 部署采用 Invalidrequestformat
- android - osmdroid地图只查看网格,没有外部存储权限可以使用osmdroid吗?
- java - Google sheet API(使用 java)显示“消息”:“请求的身份验证范围不足。”,“状态”:“PERMISSION_DENIED”
- python - 修改后的模块的内置 reload() 没有像我预期的那样工作
- c# - 如何首先使用实体编写以下查询代码