EXCEL_VBA If Target.Column = 2 And Target.Row = 6 Then问题

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target.Row = 6 Then
Select Case Target.Value

Case 1
Target.Value = "BA"
Case 2
Target.Value = "XA"

End Select
End If
End Sub
为什么这语句在第2单元格中输入1不显示'BA'和第6单元格中输入1不显示'XA'
写错了,应该是在第2单元格中输入1不显示'BA'和第6单元格中输入1不显示'BA',
怎么写才能都可以在两个单元格中输入1都显示BA呢

If Target.Column = 2 And Target.Row = 6 Then
这句话错了And语法是同时满足,也就是你的这个要在第6行第2格即B6输入数字会出现你要的效果追问

写错了,应该是在第2单元格中输入1不显示'BA'和第6单元格中输入1不显示'BA',
怎么写才能都可以在两个单元格中输入1都显示BA呢

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-06-06
你需要在第六行第二列的那个单元格也就是B6输入数字才有用,你的IF连接符是and追问

写错了,应该是在第2单元格中输入1不显示'BA'和第6单元格中输入1不显示'BA',
怎么写才能都可以在两个单元格中输入1都显示BA呢

追答

你所说的第2个单元格的是A2,B2,C2还是什么2,第六个是A6,B6,还是什么6?
Target.Column = 2 or Target.Row = 6
如果你不懂,改上面的代码试试。

追问

要在两个‘区域地方’显示

追答

Target.Column = 2 or Target.Column = 6

试试这个,替代原来的Target.Column = 2 And Target.Row = 6就可以了。

本回答被提问者和网友采纳
第2个回答  2016-06-06
你这句只是B6单元格的值
相似回答