我希望能够创建一个宏来将单元格 B 中的值更改为 ,EPTBSIET
如果它等于单元格 E 中的值 - SIETCO
。我已经能够编译一个IF
公式,但宁愿不将值写入另一个单元格。有什么建议吗?
=IF(ISNUMBER(FIND("SIETCO",E2)),"EPTBSIET","")
答案1
您可以使用以下 VBA 代码将包含“SIETCO”的输入值更改为范围内的“EBTBSIET”A1:A10。您应该能够轻松地根据您的需要进行调整。
在代码编辑器中,您需要将此代码添加到您希望使用它的工作表,而不是模块。
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A10")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
Application.EnableEvents = False
If Not Target.Find("SIETCO", LookIn:=xlValues) Is Nothing Then
Target.Value = "EBTBSIET"
End If
Application.EnableEvents = True
End Sub
来源:http://msdn.microsoft.com/en-us/library/office/ff839775(v=office.15).aspx