根据另一个单元格中的input值指定单元格中的值

这是我的代码:

Private Sub Worksheet_Change(ByVal Target As Range) If Range("A1").Value = "ORACLE" Then Range("B1").Value = "DATABASE" ElseIf Range("A1").Value = "UNIX" Then Range("B1").Value = "SERVER" End If End Sub 

我如何做整个列?

尝试这个:

 Private Sub Worksheet_Change() Dim rng As Range Range("A1").Select For Each rng In Range("A:A") If rng.Value = "ORACLE" Then ActiveCell.Offset(0, 1).Value = "DATABASE" ActiveCell.Offset(1, 0).Select ElseIf rng.Value = "UNIX" Then ActiveCell.Offset(0, 1).Value = "SERVER" ActiveCell.Offset(1, 0).Select End If Next rng End Sub 

这不依赖于活动单元,并且由于它基于列A中的事件,所以如果列A改变,这只会改变列B中的单元格。

 Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("A:A")) Then If Target.value = "ORACLE" Then Range("B" & Target.Row).value = "DATABASE" ElseIf Target.value = "UNIX" Then Range("B" & Target.Row).value = "SERVER" End If End If End Sub