vba通过列查找单元格数据,如果没有,请查看下一列

这与在另一个工作表中的单元格引用的列中查找数据有关,然后将一些数据复制到另一个工作表中,如果他们gradle了某个月,我需要find一个类名称。 用于查找参考的月份位于另一张表中。 应该先在G列searchgradle月份,如果search没有find,则在下一列中search。 这是我迄今为止,但这只search一列。 我不知道如何去search其他专栏。 search应停止find该值的第一个实例。

Sub Hierarchy() Dim shOUT As Worksheet Dim nfo As Worksheet Dim Month As Range Dim a As Long Dim thisvalue As String Set nfo = Worksheets("Info") Set shOUT = Worksheets("Output") Set Month = nfo.Range("A2") With shOUT ' Loop through each row For a = 2 To 10 thisvalue = .Cells(a, 7).Value If thisvalue Like Month.Value Then ' <-- check the names nfo.Range("A5").Value = .Cells(a, 2).Value nfo.Range("A6").Value = .Cells(1, 7).Value End If Next a End With End Sub 

我估计一个额外的循环,再加上一些小的编辑就足够了:

 For b = 7 To 8 For a = 2 To 10 thisvalue = .Cells(a, b).Value If thisvalue Like Month.Value Then ' <-- check the names nfo.Range("A5").Value = .Cells(a, 2).Value nfo.Range("A6").Value = .Cells(1, b).Value Finished = True Exit For '<-- skip the rest, we're done End If Next a If Finished = True Then Exit For Next b 

它可能需要一些调整(因为我不太清楚A5和A6的更新),但这个概念是正确的。

我已经添加了一些你需要声明的variables(b和Finished)。