VBA如何从基本工作簿中查找特定列名到另一个工作簿

时间:2018-03-25 14:31:15

标签: excel-vba vba excel

我尝试做的是将基于列标题名称从另一个工作簿复制到此工作簿中的数据,列不在同一个序列中,并且不是所有列标题都出现在我用于错误恢复的下一个

我用find函数来做,有其他方法可以做到。

我怎样才能找到""具有动态范围或单元格引用 这里我是基础文件中的列,我希望在dump wb中找到它 以下是我的意见

For i = 1 To 50


    Windows("Base.xlsm").Activate

    Columns(Columns(i).Address).Select 'i is column number 

    ActiveSheet.Cells(8, i).Select ' this is required column hader to find

    Application.CutCopyMode = False
    Selection.copy

    Windows("Dump.xlsx").Activate
    Rows("2:2").Select

    Selection.Find(What:="items", After:=ActiveCell, LookIn:= _
        xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False).Activate

    Range(ActiveCell, Cells(ActiveCell.Row + 800000, ActiveCell.Column)).Select


    Application.CutCopyMode = False
    Selection.copy
    Windows("Base.xlsm").Activate

    Range("A9").Select 'how to select active cell in the workbook where i want to paste data.
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Next i

1 个答案:

答案 0 :(得分:0)

我理解你问题的10%左右。但我会回答:

  

我怎样才能找到""具有动态范围

您可以使用范围值替换Find(What:="items"),例如Find(What:=Range("A1").Value),留下你的信息:

Selection.Find(What:=Range("A1").Value, After:=ActiveCell, LookIn:= _
    xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
    xlNext, MatchCase:=False, SearchFormat:=False).Activate