
首先你要知道这个的内置名称
你可以先选中这个然后 运行以下代码获得:
Sub SAddress()a = SelectionName
msgbox "所选目标的名称是:" & a
End Sub
把名称记录下来,然后用以下代码来获得左上角和右下角所在单元格,即可获得所在的区域
Sub test()Dim leftAdd As String, rightAdd
leftAdd = Shapes("Picture 2")TopLeftCellAddress(0, 0)
rightAdd = Shapes("Picture 2")BottomRightCellAddress(0, 0)
MsgBox "名称为:Picture 2所在的单元格区域是:" & leftAdd & ";" & rightAdd
End Sub
Xname = ActiveSheetShapes(ActiveSheetShapes(ApplicationCaller)Name)TextFrame2TextRangeCharactersText
Worksheets(Xname)Activate
Sub Macro1()
'改名这样应该就可以了
ActiveSheetShapesAddLine(17775, 10575, 3915, 2715)Select
SelectionName = "abc"
'至于起止点的坐标,好像没有办法。以下录制宏得到的方法
SelectionShapeRangeItem("abc")Left = 2085
SelectionShapeRangeItem("abc")Width = 24975
SelectionShapeRangeItem("abc")Top = 12975
SelectionShapeRangeItem("abc")Height = 39#
SelectionShapeRangeFlip msoFlipVertical
End Sub
我觉得得用遍历的方法,你是嫌遍历慢是吧?但好像没见过其他方法啊,遍历用这个:
for each ch in activesheetchartobject
with ch
if ChartType=msoShapeFlowchartTerminator then
ActiveSheetShapesAddLine(beginx, beginy, endx, endy)Name = mingcheng
With ActiveSheetShapes(mingcheng)
Visible = msoTrue
End With
shape没有weight属性
我试了可以啊,一个
ShFillForeColorRGB = RGB(255, 255, 0)
MsgBox ShFillForeColorRGB获得的值是65535
以上就是关于excel 宏 获取当前图形位置全部的内容,包括:excel 宏 获取当前图形位置、如何用VBA实现,点击自创图形后,获取图形中的文字,然后进入以该文字命名的工作表、VBA菜鸟求各位大神,关于Shapes.addline 方法求教等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)