Excel 在工作簿中搜索关键短语,并将列复制到新工作簿中

Excel 在工作簿中搜索关键短语,并将列复制到新工作簿中,excel,vba,excel-interop,Excel,Vba,Excel Interop,我需要在工作簿中搜索几个关键短语(始终在标题行中),找到短语后,将整个列复制到新工作簿中,然后继续查找下一个短语。当我录制我的宏时,这就是它给我的,但关键短语可能并不总是在B列中,因此这可能会很快出错!我的项目的范围是找到这些关键字,选择包含数据的最后一行之前的列,然后复制到单独的工作簿中。我将合并6-7个工作簿 Cells.Select Selection.Find(What:="Emp Name", After:=ActiveCell, LookIn:=xlFormulas _ ,

我需要在工作簿中搜索几个关键短语(始终在标题行中),找到短语后,将整个列复制到新工作簿中,然后继续查找下一个短语。当我录制我的宏时,这就是它给我的,但关键短语可能并不总是在B列中,因此这可能会很快出错!我的项目的范围是找到这些关键字,选择包含数据的最后一行之前的列,然后复制到单独的工作簿中。我将合并6-7个工作簿

Cells.Select
Selection.Find(What:="Emp Name", After:=ActiveCell, LookIn:=xlFormulas _
    , LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=False, SearchFormat:=False).Activate
Columns("B:B").Select
Selection.Copy

您没有说为什么需要在C#中使用它,但VBA选择“当前”列的方法是:

ActiveCell.EntireColumn.Select
这将选择包含关键字的任何列

创建新工作簿并粘贴到列中的VBA只是

Workbooks.Add
ActiveSheet.Paste

很抱歉,我需要找到关键词,突出显示该列,然后复制到新工作簿中。您在问题中提到了该列-您需要适当修改您的问题吗?不,应该是该列…只是我的一个不幸。