从特定单元格中提取数据以加载为电子邮件中的文本



我试图从按钮单击生成电子邮件,并从按钮所在行的第一个单元格加载数据(作为电子邮件的主题行)。

示例:在第22行中,我在X列中放置了一个按钮,当它被单击时,它创建了一个电子邮件,使用单元格A22作为我的电子邮件的主题。

我知道如何通过将主题行数据直接输入脚本来实现这一点,但是,我想避免为电子表格中的大量行创建数百个脚本。

这是我目前使用的手动输入方法:


Private Sub CommandButton1_Click()
          Dim outobj, mailobj
          Set outobj = CreateObject("Outlook.Application")
          Set mailobj = outobj.CreateItem(0)
            With mailobj
            .To = "xxxxxxxxx@xxxxxxxx.com"
            .Subject = "XXXXXXXXXXXX"
            .Body = "XXXXXXXXXXXXXXXXXXXXXXX"
            .Display
          End With
          'Clear the memory
          Set outobj = Nothing
          Set mailobj = Nothing
End Sub

我只需要从相应按钮行的A列填充主题。我想我需要创建另一个对象,但我不确定正确的代码是什么,我不确定如何让脚本拉它"。主题= " .

以下是我所尝试的基本数据:

►ActiveSheet.Buttons (Application.Caller) .TopLeftCell

►"按下按钮行:" &ActiveSheet.ShapesApplication.Caller) .TopLeftCell.Row


<nbsp;&nbsp;&nbsp;subject>   .subject = SubjectTo

网上还有很多其他的建议

所有人都在他们的原始脚本中工作,但我不知道如何将它们合并到我想做的事情中。

我甚至尝试使用表单形状而不是ActiveX按钮

从您的代码示例中,似乎您正在使用ActiveX样式按钮。我知道没有办法从ActiveX按钮确定行号,但如果您切换到表单控制类型按钮,检索行很容易。

Sub Button2_Click()
    MsgBox ActiveSheet.Shapes(Application.Caller).TopLeftCell.Row
End Sub

对于大量的行,每行一个按钮是不切实际的。您可以使用一个按钮,该按钮依赖于所选单元格或活动单元格来标识行。另一种可能是工作表。BeforeDoubleClick事件宏,当其中一行被双击时打开一封电子邮件(因此根本没有按钮)。

相关内容

  • 没有找到相关文章

最新更新