作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想问一下,如果在这个 Range("D2:D500") 中输入了“Denied”这个词,那么它所在的行之后的值不能只在 E 列中输入。
只要“拒绝”字词进入 D 列,然后 仅低于 E 列的单元格无权输入任何值,否则用户只能在 A、B、C 和 D 列输入值。如果用户在 E 列中输入值,则显示消息“您不允许”并清除该单元格的内容。
对于同一行,我使用的以下代码如下:
' 此代码用于 D 列,用于清除同一行中的数据
If rngTarg Is Nothing Then GoTo ExitHandler
For Each rngToChk In rngTarg
Select Case rngToChk.Value
Case "Denied"
rngToChk.Offset(0, -1).ClearContents
rngToChk.Offset(0, -2).ClearContents
rngToChk.Offset(0, 1).ClearContents
rngToChk.Offset(0, 2).ClearContents
End Select
Next rngToChk
' this code for Column E which will help to user that it won’t have access to enter data in the same row
For Each cell In rngTarg
If cell.Offset(0, -1) = "Denied" Then
cell.Select
MsgBox Excel.Application.UserName & ", As you enter <" & cell.Offset(0, -1) & "> in Column D" _
& vbNewLine & "That is why you cannot enter Value.", vbokOnly + vbInformation, "Information"
cell.ClearContents
cell.Offset(1, 0).Select
GoTo ExitHandler
End If
Next cell
我希望它有助于理解我的查询。
最佳答案
无需使用 VBA。您可以使用 Data Validation
E2:E LastCell
.在 Excel 2007+ 中,它是 E2:E1048576
.对于旧版本,它是 E2:E65536
.只需选择单元格E2
然后按 Shift + End + 向下箭头Data
选项卡,然后单击 Data Validation
Custom
在 Formula
类型 =COUNTIF($D$1:$D1,"Denied")=0
如下所示Ok
我们完成了关于excel - 拒绝进入取决于值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68606926/
我是一名优秀的程序员,十分优秀!