根据其他单元格的条件格式将某个单元格设为必填项第 2 部分

根据其他单元格的条件格式将某个单元格设为必填项第 2 部分

我希望实现以下目标:

C 列已根据数据输入进行条件格式化,如果数据超出范围,单元格背景将变为红色。

我想在输入数据时通过强制输入框强制在工作表底部输入数据,并且由于数据超出范围,单元格被条件格式化为红色。在此示例中,注释是在单元格 B101 中进行的。我该如何修改下面的代码,以便如果 B101 已经包含文本,则注释在 B102 中进行,如果 B102 包含文本,则注释在 B103 中进行,依此类推。

Private Sub worksheet_change(byval target as range)
If target.rows.count > 1 Or target.Columns.Count > 1 Then
  Exit Sub
End if

Dim com As String
Dim comm1 As String

Set isect = Application.Intersect(target,Range("C1:C100"))
If isect Is Nothing Then

Else

If target.DisplayFormat.Interior.Color = RGB(255,0,0) Then
   com = "Enter comment at bottom of sheet"

   Do While comm1 = ""
     comm1 = Application.InputBox(prompt:=com, Type:=2)
     On Error GoTo myloop
     If comm1 = False Then
        comm1 = ""
     End If

myloop:
   On Error GoTo -1
   Loop
   Range("B101").Value = comm1

Else
   Range("B101").value = ""
End If
End If
End Sub

答案1

您可以添加 Do While 循环:

Dim i As Long
i = 101

Do While Range("B" & i).Value <> ""
    Debug.Print Range("B" & i).Address
    i = i + 1
Loop
' Now that we're out of the loop, the next cell will be empty
Range("B" & i).Value = "Comment here"

编辑:或者,你也可以这样做Range("B101").End(xlDown).Offset(1,0).Value = "Comment Here"

相关内容