过滤所选控件的行(形状)

时间:2015-03-13 08:18:12

标签: excel excel-vba vba

这是带箭头的表格示例:

enter image description here

当我按箭头时,我想获得相应的目标字段值 我想为所有箭头分配一个宏。

我已经完成了第一个箭头

Sub Arrow()
dim targetField as String
    targetField = Sheet1.Cells(11, 4).Value
End Sub

2 个答案:

答案 0 :(得分:0)

  

当我按下第二个箭头时,我想运行此(箭头())宏和   增加行号

你真的想这样做吗? 如果是这样,以下伪代码就是这样做的。

dim rVar as Int
dim cVar as Int

rVar = 11
cVar = 4

targetField = Sheet1.Cells(rVar, cVar).Value

rVar+1
cVar+1

但这可能不是你想要做的。 不要硬编码行和列然后递增,而是考虑查找单击对象的范围,然后将其用作导航起始点,例如:选择列0(箭头所在的那个)和-2行(两个步骤到离开你的箭头位置)

答案 1 :(得分:0)

我找到了简单的解决方案

Sub Arrow()
 Dim r As Range
    'find the range of the button clicked.
    Set r = ActiveSheet.Shapes(Application.Caller).TopLeftCell
     targetField = r.Offset(0, -1)
End Sub