我想选择一个单元格,然后在另一个单元格中更改文本。
例如:
选择 cell.A1 后, cell.B1 的文本为“你好”
选择 cell.A2 后, cell.B1 的文本为“再见”
Visual Basic for Excel中的应用程序可以实现吗?
谢谢!
答案 0 :(得分:0)
以下内容将满足您的需求。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = ActiveSheet.Range("A1").Address Then
ActiveSheet.Range("B1").Value = "Hello"
Else
If Target.Address = ActiveSheet.Range("A2").Address Then
ActiveSheet.Range("B1").Value = "Goodbye"
End If
End If
End Sub
或者,您可以使用Case语句而不是if-else(根据T.J.L.的建议)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case Target.Address
Case Range("A1").Address
Range("B1").Value = "Hello"
Case Range("$A$2").Address
Range("B1").Value = "Goodbye"
Case Else
Range("B1").Value = "Wrong cell selected"
End Select
End Sub
答案 1 :(得分:0)
将其放置在工作表对象代码中
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Me.Range("A1")) Is Nothing Then
Me.Range("B1").Value2 = "hello"
ElseIf Not Intersect(Target, Me.Range("A2")) Is Nothing Then
Me.Range("B1").Value2 = "goodbye"
End If
End Sub