我有以下问题。
我想选择一个包含多个.xlsx文件的文件夹,并在第一行中搜索KEYWORDS,如果找到其中一个关键字,我想将整个数据列复制到具有keyowrd作为名称的工作表中工作表和每个数据的第一列。ThisWorkbook.Sheet("KEYWORD")
我有以下代码,但是作为一个绝对的初学者,对于我来说,通常来说,它变得越来越复杂。
Sub FINDandCopy()
Dim FirstAddress As String
Dim MyArr As Variant
Dim Rng As Range
Dim Rcount As Long
Dim I As Long
Dim NewSh As Worksheet
strDatei = Application.GetOpenFilename
If strDatei <> False Then
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
MyArr = Array("I51", "I54", "I55", "I57", "I58")
With Sheets(1).Row(1)
Rcount = 0
For I = LBound(MyArr) To UBound(MyArr)
Set Rng = .Find(What:=MyArr(I), _
After:=.Cells(.Cells.Count), _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
FirstAddress = Rng.Address
Do
Rcount = Rcount + 1
Rng.Copy ThisWorkbook.Sheets(2).Range("A" & Rcount)
Set Rng = .FindNext(Rng)
Loop While Not Rng Is Nothing And Rng.Address <> FirstAddress
End If
Next I
End With
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
我的关键字在数组(I51,....)中找到,这些是标题文件的一部分。 (I51.RhValue)。
所以我需要帮助:
我在哪里将零件复制到哪里?
之后Do
我猜。
我该如何准确声明?这样它将复制第一列和第一行中每个带有关键字的列。
会是这样吗?>
rng.column().copy Destination:=ThisWorkbook.Sheets(KEYWORD)Columns(i)
并且i
是目标工作表中的Loop。从1到X直到完成
但是我如何编码此摘要?
这里是示例图片:
F.E .:我要搜索香蕉并将黄色的列复制到This.Workbook.sheet(“香蕉”)。
我将对此进行搜索并在搜索时保持我的问题更新!
建议您提供有关此主题的任何帮助
谢谢丹尼尔!
我有以下问题。我想选择一个包含多个.xlsx文件的文件夹,并在第一行中搜索关键字,如果找到其中一个关键字,我想复制整列...
您可以尝试一下。我假设您希望将结果粘贴到整个工作表(按列)而不是向下(按行)。