因工作需要使用VBA,请人指导写到了下面这个提取内容的宏。

VBA想提取含有指定内容所在行的其他列的内容,代码不会写,能帮忙指导一下吗

Sub find()
 
Application.ScreenUpdating = False
 
Dim Mydir As String
 Dim i As Integer
 i = 2
 Mydir = ThisWorkbook.Path & "\"
 ChDrive Left(Mydir, 1)
 ChDir Mydir
 Match = Dir$("*.xlsx")
 Do
 If Not LCase(Match) = LCase(ThisWorkbook.Name) Then
 Workbooks.Open Match, 0, 1
 ThisWorkbook.ActiveSheet.Range("A" & i) = Match
 ThisWorkbook.ActiveSheet.Range("B" & i) = ActiveWorkbook.Sheets("工作计划").Range("B17")
 ThisWorkbook.ActiveSheet.Range("C" & i) = ActiveWorkbook.Sheets("工作计划").Range("B18")
 ThisWorkbook.ActiveSheet.Range("D" & i) = ActiveWorkbook.Sheets("工作计划").Range("B19")
 ActiveWorkbook.Close 0
 i = i + 1
 End If
 Match = Dir$
 Loop Until Len(Match) = 0
 Application.ScreenUpdating = True
End Sub

现在是只能提取指定表格内容,但提取完了有很多错位的,不能再同一列显示同一类型内容。后来换个思路不全提取内容,只提取想查找含有指定内容所在行的指定列内容。这个查找指定内容所在行,并提取同行其它列内容的代码不会写,和写在什么位置。

最后想通过想查找每个文件中“工作计划”表内A列含有“施工计划”内容所在的行,并提取同行B列的值,循环。

你换种方向,调用自带的vlookup函数试试。