我有一个包含许多工作表的大型工作簿 - 我需要遍历每个工作表并将特定的数据行复制到主工作表 . 我对此部分的代码工作正常 - 我想要复制到主工作表的数据将始终在第17行中找到 . 但是,第17行中我要开始复制数据的位置(列)各不相同 . 我需要在 Headers 行(第15行)中搜索字符串“Expenses”,并在找到此单元格后向下移动两行到第17行,并从“Expenses”一词的列开始复制该行数据的其余部分 . 找到 . 目前,我的代码只是复制整行数据 . 任何人都可以帮我修改此代码以搜索字符串然后使用该位置来复制数据吗?
Sub MasterSheet()
Dim Sht As Worksheet
Sheets("Master").Select
Rows("2:" & Rows.Count).ClearContents
Application.ScreenUpdating = False
For Each Sht In ActiveWorkbook.Worksheets
If Sht.Name <> "Master" Then
Sht.Select
Range("A:A").Insert
Range("A17").Formula = "=Mid(Cell(""filename"",B1),Find(""]"",Cell(""filename""))+1,255)"
Range("A17").Copy
Range("A17").PasteSpecial Paste:=xlPasteValues
Range("A17:T17").Copy
Sheets("Master").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
Sht.Select
Range("A:A").Delete
Else
End If
Next Sht
Sheets("Master").Select
Rows("2:" & Rows.Count).ClearFormats
Application.ScreenUpdating = True
End Sub
1 回答