我想设置单元格范围内的形状文本。
在通过形状下面的代码我环路我activesheet
,如果给定的范围内masqueA
相交与topleftcell
那么select
这种形状和这一组文字selection
。
Sub numShape()
Dim masqueA As Range
Set masqueA = Range("b33:l42")
cpt = 1
For Each shapeTemp In ActiveSheet.Shapes
If Not Intersect(Range("masqueA"), shapeTemp.TopLeftCell) Is Nothing Then
shapeTemp.Select
Selection.TextFrame.Characters.Text = "cpt"
cpt = cpt + 1
End If
Next shapeTemp
End Sub
但是我有这个错误: Run-Time error'1004' : Application-defined or object-defined error
有人可以向我解释为什么我有这个错误以及如何解决它。顺便说一句,我的代码正在做我想做的事情吗?
谢谢!
masqueA
是一个范围而不是一个定义的名称。如果您想按名称引用范围,请使用Range("b33:l42").Name = "masqueA"
and Range("masqueA")
as is just use Intersect(masqueA, shapeTemp.TopLeftCell)
。
Sub numShape()
Dim masqueA As Range
Set masqueA = Range("b33:l42")
cpt = 1
For Each shapeTemp In ActiveSheet.Shapes
If Not Intersect(masqueA, shapeTemp.TopLeftCell) Is Nothing Then
shapeTemp.TextFrame.Characters.Text = "cpt"
cpt = cpt + 1
End If
Next shapeTemp
End Sub
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句