已发布VBA范围

时间:2018-12-14 10:52:17

标签: excel vba range

Sub FormatRange()

Dim xName As Range

Set xName = Range("B3", Range("B2").End(xlDown))

Sheet2.Activate

xName.Font.Color = vbRed

xName.Font.Italic = True

End Sub

在上面的代码中,我在Sheet1中设置了我的初始范围。没有参考Sheet1。即使我激活了sheet2。格式将应用于sheet1范围。这怎么可能?为什么它没有应用到sheet2?

2 个答案:

答案 0 :(得分:1)

当您定义范围并将其分配给范围对象时,它将引用当时处于活动状态的图纸。那就是它的美。这样,您无需使用.Select/.Activate来处理范围对象。

问题是您只在看Rng.Address。要查看完整的地址,请尝试

Sub Sample()
    Dim rng As Range

    Set rng = Range("A1")

    Debug.Print rng.Address(, , , True)
End Sub

您可能想阅读Range.Address property (Excel)

PS :如评论中所述,.Parent.Name可以为您提供线索。它显示了该范围内的“父项”表:)

答案 1 :(得分:0)

这可以解决您的问题吗? (未测试)

- name: SERVER_PORT
            valueFrom:
              configMapKeyRef:
                name: posvod-{{ .Values.version }}-{{ .Values.environment }}
                key: server-port