使用带PrintArea的Range时VBA错误400

时间:2017-05-12 14:47:46

标签: excel vba excel-vba excel-2010

对于项目,我需要在Excel上打印一张表,该区域取决于事件。 作为一个初学者,我试图单独解决这个问题,但我不知道该怎么做。

以下是我的代码示例:

Dim var1 As Range
Dim var2 As Range
Dim var3 As Range

Set var1 = Range("$A$1:$A$10")
Set var2 = Range("$A$12:$A$15")

With ActiveSheet
    .PageSetup.PrintArea = Union(var1, var2).Address
    Set var3 = Range(.PageSetup.PrintArea)
    MsgBox (rngCompany3)
End With

我得到的唯一一件事是“错误400”,没有更多解释。我已经知道它在哪里:Set var3 = Range(.PageSetup.PrintArea)是原因。

我还尝试了Set var3 = .Range(.PageSetup.PrintArea)Set var3 = Range(.PageSetup.PrintArea.Address),但它没有弄明白。

如果您有任何想法,请告诉我,我会很高兴。谢谢,克莱门特。

1 个答案:

答案 0 :(得分:0)

.PrintArea 获取 Range() 的地址

.PrintArea = Me.Range("<RangeName>").Address