通过搜索选定的多个标头来复制整个列的VBA代码

时间:2017-08-24 08:15:11

标签: excel excel-vba vba

我试图找到一个循环(抱歉,不知道在这里使用的正确单词),这将帮助我选择整个列并将该内容复制到另一个位置 - 也许(Sheet2.A1)单元格

我找到了#34;地址1"标题并获取该标题的列。但我现在有一个标题列表,需要在标题行中搜索并将其整个列复制到另一个位置。

我搜索的标题将类似于Address1,Address3,Address5(随机)。我可以将这些标题放在另一张纸上,这样vba代码就可以从那里选择它进行搜索(表3)

我的代码如下所示,我只会搜索并只给我#34;地址1"

Sub FindAddressColumn()
Dim rngAddress As Range
Set rngAddress = Range("A1:Z1").Find("Address1")
 If rngAddress Is Nothing Then
  MsgBox "Address column was not found."
  Exit Sub
 End If
Range(rngAddress, rngAddress.End(xlDown)).Select
End Sub

非常感谢任何帮助或建议。我能够找到只复制一列的信息,但现在有了需要复制的多个标题的挑战。请帮助朋友。

1 个答案:

答案 0 :(得分:0)

只是一个样本......

Sub FindAddressColumn()
Dim rngAddress As Range, a As String

For Each a In Array("Address1", "Address2", "Address3", "Address4")
    Set rngAddress = Nothing
    Set rngAddress = Range("A1:Z1").Find(a)
    If Not rngAddress Is Nothing Then
        'Your Task goes here...
        Range(rngAddress, rngAddress.End(xlDown)).Select
    End If
Next a

End Sub