1
我找不到任何要求VBA的小区选择完全是我找的...基于价值
我使用两个条件来设置我的选择(查找值“减速”,然后在细胞直接在它下面,找到“”(一个空单元格)。
我很难找到一种方法来选择符合这些条件的单元格,然后列出单元格地址(我想在消息框中显示单元格地址,提醒他们'错误'的位置)
最终会有更多的细胞需要寻找,这就是为什么我要通过多个细胞进行搜索的原因。
所以,总之,我希望我的代码,找了两个标准,选择单元格的标准匹配,并显示一个弹出消息,指出错误是在哪个小区。
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
这样做的伎俩,非常感谢。我想我正试图与我检查过的细胞过于精确。出于某种原因,我永远无法获得单元格地址以便在我的代码中出现。 无论如何,非常感谢! – Keegan
@Keegan你永远无法让'.address'与你的范围一起工作的原因是因为你的范围在多个单元格中是固定的。 '.address'需要一个单元来查看返回地址。使用上面的代码,因为您一次循环遍历1个单元格,所以'cell.address'总是只引用一个单元格,而不是'范围(J18,J8)',它同时查看2个单元格。 – SilverShotBee
你非常感谢你的帮助。这使现在更有意义。 – Keegan