我找不到任何问我想要的东西......
我使用两个条件来设置我的选择(找到值" Reducer",然后在它下面的单元格中,找到"" {一个空单元格})。 / p>
我无法找到一种方法来选择符合这些条件的单元格,然后列出单元格地址(我想在消息框中显示单元格地址,提醒他们'错误的位置&# 39)
最终会有更多的细胞需要寻找,这就是我想要搜索多个细胞的原因。
简而言之,我希望我的代码找到两个条件,选择符合条件的单元格,并显示一条弹出消息,说明错误所在的单元格。
Private Sub Worksheet_Change(ByVal Target As Range)
If ActiveSheet.Range("J11").Value < 0 Then
MsgBox "You have exceeded the maximum allowable pipe length for this section. Please review your selection before continuing. ", vbOKOnly, "Inoperable Pipe Length"
End If
Do While ActiveSheet.Range("J17,J7").Value = "Reducer"
If ActiveSheet.Range("J18,J8").Value = "" Then
G = Sheets("Pipe Calcs").Range("J18,J8").Address
MsgBox "Please Select a reducer size in cell " & G & ActiveCell.Address(False, False), vbCritical, "No Reducer Size Selected"
Exit Sub
Else
End
End If
Loop
End Sub
答案 0 :(得分:1)
Private Sub Worksheet_Change(ByVal Target As Range)
If ActiveSheet.Range("A1").Value < 0 Then
MsgBox "You have exceeded the maximum allowable pipe length for this section. Please review your selection before continuing. ", vbOKOnly, "Inoperable Pipe Length"
End If
For Each cell In Range("J1:J1000")
If cell.Value = "Reducer" Then
If Range(cell.Address).Offset(1, 0) = "" Then
G = Sheets("Pipe Calcs").Range(cell.Address).Offset(1, 0).Address
MsgBox "Please Select a reducer size in cell " & G
Range(Cell.Address).Offset(1, 0).Select
Exit Sub
End If
End If
Next
End Sub
上面的代码将检查列J
是否为“Reducer”,如果找到,它将查看下面的单元格是否包含值,如果不是,它将提示用户输入单元格并退出子。当用户更新单元格时,它们会触发Worksheet_Change
语句并使宏再次运行。