所以我的想法是,当我点击属于特定列的任何单元格时,应该会输入一个弹出窗口,我可以输入两个值 - 这两个值都应该在实际单击的列旁边的单独列中自动填充同一排。
我知道这听起来微不足道,但我在Excel宏中毫无希望 - 这甚至可能吗?
答案 0 :(得分:1)
复制以下代码并右键单击工作表标签并选择查看代码并粘贴它。
关闭VBA窗口(Alt + Q关闭VBA窗口)并返回该工作表并检查。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 5 Then
Dim sF1 As String, sF2 As String
sF1 = InputBox("Enter Field 1 Value", "Field One Value Req.")
sF2 = InputBox("Enter Field 2 Value", "Field Two Value Req.")
With Target
.Offset(, 1).Value = sF1
.Offset(, 2).Value = sF2
End With
End If
End Sub
答案 1 :(得分:0)
关于允许代码在该工作簿的所有工作表中运行,请从工作表模块中删除给定代码,并在Thisworkbook模块中应用以下代码,如下所述。
将Excel VBA代码添加到工作簿/此工作簿模块
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Column = 5 Then
Dim sF1 As String, sF2 As String
sF1 = InputBox("Enter Field 1 Value", "Field One Value Req.")
sF2 = InputBox("Enter Field 2 Value", "Field Two Value Req.")
With Target
.Offset(, 1).Value = sF1
.Offset(, 2).Value = sF2
End With
End If
End Sub