我在excel中,插入了一个按钮控件,我想用VBA代码来获取该控件所在单元格行位置! 5
展开全部
Sub aa()
Dim shp As Shape
For Each shp In Shapes
irow1 = shp.TopLeftCell.Row '获的shape对象的左上角所在单元格的行号
icol1 = shp.TopLeftCell.Column '获的shape对象的左上角所在单元格的的列号
irow2 = shp.BottomRightCell.Row '获得shape对象的右下角所在单元格的行号
icol2 = shp.BottomRightCell.Column '获得shape对象的右下角所在单元格的列号
Cells(irow1, icol2 + 1) = shp.Name '把shape对象的名字写入shape对象右边一列
Cells(irow1, icol2 + 2) = Shapes(Cells(irow1, icol2 + 1).Value).TopLeftCell.Row '通过引用shape对象的名字,获得shape左上角所在的行号,并写入shape对象右边第二列
Next
End Sub
展开全部
控件是通过编程来执行操作,并且控件是你自己放的。位置不是很清楚吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
引用2724421的回答:
Sub aa()Dim shp As ShapeFor Each shp In Shapes irow1 = shp.TopLeftCell.Row '获的shape对象的左上角所在单元格的行号 icol1 = shp.TopLeftCell.Column '获的shape对象的左上角所在单元格的的列号 irow2 = shp.BottomRightCell.Row '获得shape对象的右下角所在单元格的行号 icol2 = shp.BottomRightCell.Column '获得shape对象的右下角所在单元格的列号 Cells(irow1, icol2 + 1) = shp.Name '把shape对象的名字写入shape对象右边一列 Cells(irow1, icol2 + 2) = Shapes(Cells(irow1, icol2 + 1).Value).TopLeftCell.Row '通过引用shape对象的名字,获得shape左上角所在的行号,并写入shape对象右边第二列NextEnd Sub
Sub aa()Dim shp As ShapeFor Each shp In Shapes irow1 = shp.TopLeftCell.Row '获的shape对象的左上角所在单元格的行号 icol1 = shp.TopLeftCell.Column '获的shape对象的左上角所在单元格的的列号 irow2 = shp.BottomRightCell.Row '获得shape对象的右下角所在单元格的行号 icol2 = shp.BottomRightCell.Column '获得shape对象的右下角所在单元格的列号 Cells(irow1, icol2 + 1) = shp.Name '把shape对象的名字写入shape对象右边一列 Cells(irow1, icol2 + 2) = Shapes(Cells(irow1, icol2 + 1).Value).TopLeftCell.Row '通过引用shape对象的名字,获得shape左上角所在的行号,并写入shape对象右边第二列NextEnd Sub
展开全部
如果不想循环,点哪个控件就返回哪个控件,应该怎么改?或者说在循环下面加一个If判断,所果返回的是被点击的控件就执行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询