你能改变 EXCEL 中的对象类型吗

你能改变 EXCEL 中的对象类型吗

我在 EXCEL 文档中创建了一个带有文本的矩形对象并对其进行了大量格式化,如果我想突然将其更改为圆形(斜)类型,有没有办法在 EXCEL 中执行此操作?

现在,我会创建一个圆形(倾斜)对象,然后通过复制格式图标复制对象的格式。至于对象的尺寸,我只需手动复制即可。此外,对象内部的文字也是手动复制的。我希望有更快的方法来做到这一点。

答案1

您可以使用 VBA 宏来执行此操作。诚然,我尝试使用 Excel 2013,因此 2010 的情况可能略有不同。

Selection.ShapeRange.AutoShapeType = msoShapeOval

将选定的形状更改为椭圆形

Selection.ShapeRange.AutoShapeType = msoShapeRectangle

将其改回原样。

您还可以设置高度、宽度等,如以下示例所示:

Sub Macro3()
    ActiveSheet.Shapes.Range(Array("Oval 3")).Select
    Selection.ShapeRange.Height = 53.8582677165
    Selection.ShapeRange.ScaleHeight 1.11, msoFalse, msoScaleFromTopLeft
    Selection.ShapeRange.AutoShapeType = msoShapeOval
End Sub

以上选择了一个特定的形状。您可以让 VBA 找到所有形状。ActiveSheet.Shapes将返回一个您可以循环的范围,检查当前形状AutoShapeType并在需要时进行更改。

相关内容