在VBA中查找标题

我有一个函数在VBA中查找标题并select标题下方的列。 它工作得很好,除了一个实例,我试图find一个CLIENT作​​为头的列,并不断select“CLIENT ID作为头(它就在它旁边)的列”我试图把东西放在函数来处理这个,但每次我尝试,它只是失败。任何帮助这个问题将不胜感激!

Function FindHeader(HEADER_NAME As String, sheetName As String) As Range Dim rngHeaders As Range Dim rngHdrFound As Range Const ROW_HEADERS As Integer = 1 Set rngHeaders = Intersect(Worksheets(sheetName).UsedRange, Worksheets(sheetName).Rows(ROW_HEADERS)) Set rngHdrFound = rngHeaders.Find(HEADER_NAME) If rngHdrFound Is Nothing Then MsgBox ("ERROR: Cannot find appropriate header.") Exit Function ElseIf rngHdrFound = "CLIENT" Then 'Handle Client range here End If Set FindHeader = Range(rngHdrFound.Offset(1), rngHdrFound.End(xlDown)) End Function 

更改FIND方法以仅查找整个匹配而不是部分匹配。 只要确保这不会在其他地方产生负面影响。

 Set rngHdrFound = rngHeaders.Find(HEADER_NAME,,,xlWhole)