gpt4 book ai didi

vba - 选择 - ShapeRange 和图表问题

转载 作者:行者123 更新时间:2023-12-02 07:45:57 26 4
gpt4 key购买 nike

我发现从我的手工选择中获取名称属性时出现问题。

我使用非常简单的代码来获取选定的形状名称:

Selection.ShapeRange(i).Name

一切正常,我得到了自动形状、智能艺术、图表的名称。当我只选择一个对象并且该对象是图表时,问题就会出现。我尝试执行我的代码(或尝试其他任何方法,例如一些简单的:顶部、左侧和其他方法),但收到这样的错误:

Run-time error "438":

Object doesn't support this propert or method

我不明白。单独选择图表时与与其他图表/形状一起选择时,图表的可能方法列表是否不同?

最佳答案

这就是你正在尝试的吗?

If TypeName(Selection) = "ChartArea" Then
Debug.Print ActiveChart.Parent.Name
Else
Debug.Print Selection.ShapeRange(1).Name
End If

我假设您运行此代码时选择了Shape

编辑

或者您可以使用Selection.Parent.Parent.Name代替ActiveChart.Parent.Name

在学校学习几何时,我了解到正方形可以是矩形,但矩形不能称为 >正方形。两者都是几何形状,但它们具有不同的属性。类似地,矩形和图表都是形状,但它们不一定必须共享相同的属性。另一个例子是 Range 是一个 Object,但 Shape 也是一个。但这样你就不能用同一个秤来衡量它们。它们必须作为单独的对象来处理

上面的代码可以进一步缩小为

Select Case TypeName(Selection)
Case "ChartArea": Debug.Print Selection.Parent.Parent.Name
Case "Range": Debug.Print Selection.Address
Case Else: Debug.Print Selection.ShapeRange(1).Name
End Select

关于vba - 选择 - ShapeRange 和图表问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21477566/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com