永发信息网

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
全部回答
  • 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
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯