VBA在单元格等于另一个工作表中的单元格时发送电子邮件

问题描述 投票:0回答:1

我试图在一个单元格与另一个单元格中的另一个单元格相等时触发电子邮件。我做了一些研究,发现工作表(“Sheet2”)。范围(“C1”)似乎是最好的方法,但它不起作用。如果我只使用范围(“C1”)将其保留到当前工作表,那么电子邮件发送没问题。但是,一旦我尝试另外一张纸,它不会?

Dim xRg As Range
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
    Set xRg = Intersect(Target, Range("D1:D10"))
    If xRg Is Nothing Then Exit Sub
    If (Range("D1") = Worksheets("Sheet2").Range("C1")) Then
        Call Mail_small_Text_Outlook
    End If
End Sub
excel vba excel-vba
1个回答
0
投票

Worksheet_Change事件链接到1张表。如果将以下代码放在工作表代码选项卡中,则它仅适用于该特定工作表

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$C$1" Then
MsgBox ("Change happend!")
End If

End Sub  

因此,我认为如果您希望所有工作表都能实现这一点,您可以调用模块或将其复制到所有工作表。

© www.soinside.com 2019 - 2024. All rights reserved.