Excel当单元格A1等于1时单元格B1可以输入任何值,当单元格A1不等于1时单元格B1等于0
答案:4 悬赏:70 手机版
解决时间 2021-03-09 10:28
- 提问者网友:斑駁影
- 2021-03-09 05:29
Excel当单元格A1等于1时单元格B1可以输入任何值,当单元格A1不等于1时单元格B1等于0
最佳答案
- 五星知识达人网友:狂恋
- 2021-03-09 05:34
这种问题应该不能用公式来实现,只能通过VBA,写代码来实现。
下面的是我写的一段代码:你可以复制到VBA中
模块中的代码:
Sub aa(myCells As Range)
If myCells.Count <> 1 Then GoTo myend
If myCells.Column = 1 Then
If myCells.Value = 1 Or myCells.Value = "" Then
Cells(myCells.Row, myCells.Column + 1) = ""
Else
Cells(myCells.Row, myCells.Column + 1) = 0
End If
End If
myend:
End Sub
Sub bb(myCells As Range)
If myCells.Count <> 1 Then GoTo myend
If myCells.Column = 2 Then
If Cells(myCells.Row, myCells.Column - 1).Value <> 1 Then Cells(myCells.Row, myCells.Column - 1).Select
End If
myend:
End Sub
然后在工作表事件中调用上面的代码。如:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call bb(Target)
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Call aa(Target)
End Sub
下面的是我写的一段代码:你可以复制到VBA中
模块中的代码:
Sub aa(myCells As Range)
If myCells.Count <> 1 Then GoTo myend
If myCells.Column = 1 Then
If myCells.Value = 1 Or myCells.Value = "" Then
Cells(myCells.Row, myCells.Column + 1) = ""
Else
Cells(myCells.Row, myCells.Column + 1) = 0
End If
End If
myend:
End Sub
Sub bb(myCells As Range)
If myCells.Count <> 1 Then GoTo myend
If myCells.Column = 2 Then
If Cells(myCells.Row, myCells.Column - 1).Value <> 1 Then Cells(myCells.Row, myCells.Column - 1).Select
End If
myend:
End Sub
然后在工作表事件中调用上面的代码。如:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call bb(Target)
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Call aa(Target)
End Sub
全部回答
- 1楼网友:廢物販賣機
- 2021-03-09 09:08
在你需要的单元格里输入,if(a1=1,b1,0)
- 2楼网友:何以畏孤独
- 2021-03-09 07:31
c1单元格写入公式
=if(and(a1="",b1=""),"",if(a1=b1,"正确",if(a1<>b1,"不正确")))
当a1,b1为空单元格时值为空
=if(or(a1="",b1=""),"",if(a1=b1,"正确",if(a1<>b1,"不正确")))
当a1,b1有一个单元格是空单元格时值为空
- 3楼网友:一袍清酒付
- 2021-03-09 06:24
这个要用VBA。
在工作表标签(左下角,如Sheet1)单击鼠标右键,选“查看代码”,在代码窗口粘贴下列代码即可:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
If Cells(1, 1) = 0 Then
Cells(1, 2) = 0
Else
If Cells(1, 1) <> 1 Then
Cells(1, 2) = ""
End If
End If
End If
End Sub
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯