需要将VBA宏从activeworkbook更改为特定的工作簿/表

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

我正在构建一个来自VBA的自动电子邮件,它具有特定的范围。但现在宏正在采用活动工作表的特定范围。我不知道如何正确指定我的工作簿和表格..也许有人可以帮忙?

Sub Send()


Dim r As Range

Set r = Range("rm")

With r

ActiveWorkbook.EnvelopeVisible = True

With .Parent.MailEnvelope.Item
.To = ""
.CC = ""
.BCC = ""
.Subject = "Automatic Message: E-comm numbers Today"
.Send

End With

End With




End Sub

它应该在这个工作簿/表中

Workbooks("Copy of Copy of shipments 5.1.xlsm").Sheets("rapportages")

希望你能帮忙:)!

excel vba excel-vba
1个回答
1
投票

使用fully qualified references

Set r = Workbooks("Copy of Copy of shipments 5.1.xlsm"). _
    Sheets("rapportages").Range("rm")

如果不这样做,Excel将从活动工作簿中构造range对象,而不是在这种情况下构建所需的对象。

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