excel vba判断表格上期是否有圆形,如果没有就画出圆形,并画出当前,如果上期有圆形,则只画出当前圆形
时间: 2023-05-13 15:04:49 浏览: 66
可以使用以下代码来实现:
Sub DrawCircle()
Dim lastCircle As Shape
Dim currentCircle As Shape
Dim ws As Worksheet
Set ws = ActiveSheet
'判断上期是否有圆形
If ws.Shapes.Count > 0 Then
Set lastCircle = ws.Shapes(ws.Shapes.Count)
If lastCircle.Type = msoShapeOval Then
'上期有圆形,只画出当前圆形
Set currentCircle = ws.Shapes.AddShape(msoShapeOval, 100, 100, 50, 50)
Else
'上期没有圆形,画出上期和当前圆形
Set lastCircle = ws.Shapes(ws.Shapes.Count - 1)
Set currentCircle = ws.Shapes.AddShape(msoShapeOval, 100, 100, 50, 50)
lastCircle.Copy
currentCircle.Paste
End If
Else
'上期没有圆形,画出上期和当前圆形
Set currentCircle = ws.Shapes.AddShape(msoShapeOval, 100, 100, 50, 50)
currentCircle.Copy
currentCircle.Paste
End If
End Sub