【发布时间】:2010-10-04 18:09:25
【问题描述】:
我已将宏分配给几个按钮。
如何在宏内部找出点击了哪个按钮?
我正在以用户表单的形式进行操作,他可以在其中输入家庭成员:
姓名1:
姓1:
姓名2:
surname2: |添加下一个成员|
我希望按钮总是出现在最后添加的人的最后一行。
为简单起见,我认为最好有 100 个空表格
工作表,但一开始都是不可见的。
然后,当用户单击添加下一个成员时,我只需使下一行可见,
并将按钮移动到下一个人。但要做到这一点,我需要知道我目前的位置。
与删除类似,当单击删除按钮时,我会使行不可见。
姓名1:
姓1: [删除]
姓名2:
姓2: [删除]
name3:
surname3: |添加下一个成员|
我需要知道点击了哪个删除按钮。
编辑: 在网络上找到 - 你认为什么,似乎是最好的/方式
Dim r As Range
Set r = ActiveSheet.Buttons(Application.Caller).TopLeftCell
Range(Cells(r.Row, r.Column), Cells(r.Row, r.Column)).Select
【问题讨论】:
-
为了澄清您的编辑,您似乎只有一组按钮,但您一直在移动它们。因此,您真正需要知道的就是如何将按钮排成一排。是这样吗?
-
I 个“删除”按钮,并在“添加”按钮处。
-
好的,我找到了获取按钮的方法,但看起来您已经找到了。您可以简化 Select 语句,但它看起来不错。
-
最后一行简化为
R.SELECT