我正在尝试使用某种触发器来允许此工作表的用户获取输出值(通过我创建的算法)并将其转录到另一张工作表中。
它应该转录值的单元格将通过从用户获取行名称和列名来确定。
在此示例中,用户将分别插入X和Y作为其行名和列名。一旦他们点击了触发按钮(不一定是一个按钮,我愿意使用任何类型的触发器,但我认为必须有一个才能使其工作),“Value(Rounded)”中的值标记的细胞将转录到相应的细胞:
此单元格是我要插入值的位置。
这个目标是自动化。理想情况下,用户只需要输入行名称和列名称,然后按下按钮(或任何其他触发器),这将把值转录到另一个工作表中。
答案 0 :(得分:1)
这必须是VBA吗?这可以通过一个非常简单的公式来完成。
假设:
Input
(将对输入的所有引用更改为该表的实际名称)在我们的Output
工作表的单元格B2中,输入此公式,然后上下复制:
=IF(AND(Input!$B$1=$A2,Input!$B$2=B$1),Input!$B$4,"")
答案 1 :(得分:0)
您需要在SHEET代码中使用事件宏(而不是模块代码)。以下是两个示例,说明如何在特定单元格上更改单元格或是否发生双击:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("E3")) Is Nothing Then
'Do something of Range("E3") has been double clicked
'(Basic Example)
'Range("G3").Value = "Range("B3").value
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
'If a cell has chanced...
If Not Intersect(Target, Range("B3")) Is Nothing Then
'Do something
End If
End Sub
答案 2 :(得分:0)
添加按钮可以通过创建形状(矩形或任何其他形状)来完成,右键单击它并选择"分配宏"。在那里,您可以选择在单击该形状后应执行的宏。但需要注意的是,宏需要是一个公共子"。