Excel vba从文本文件中选择行

时间:2014-12-08 19:13:03

标签: excel-vba vba excel

我正在使用VBA宏将大文本文件打开到Excel工作表中。但是,我的要求是只将几个特定的​​行导入excel表中,这些行匹配特定的列值。例如,

Name      Age
--------------
A1        20
A2        21
A3        20
A4        21
A5        22
A6        22

所以,我想用年龄= 20或21的标准导入。但是,我不想使用AutoFilter。我只是希望vba选择与我的过滤器匹配的行并显示它们并忽略所有其他行。我使用了autofilter,但是它正在加载整个数据,只显示我感兴趣的行。 我写的代码

    With ActiveSheet.QueryTables.Add(Connection:= _
    "TEXT;" + full_path, Destination:=Range( _
    "A1"))
    .Name = file_name
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .TextFilePromptOnRefresh = False
    .TextFilePlatform = 437
    .TextFileStartRow = 1
    .TextFileParseType = xlDelimited
    .TextFileTextQualifier = xlTextQualifierDoubleQuote
    .TextFileConsecutiveDelimiter = False
    .TextFileTabDelimiter = True
    .TextFileSemicolonDelimiter = False
    .TextFileCommaDelimiter = False
    .TextFileSpaceDelimiter = False
    .TextFileColumnDataTypes = Array(1)
    .TextFileTrailingMinusNumbers = True
    .Refresh BackgroundQuery:=False
    End With
    Range("A1").Select

你能帮忙吗?

1 个答案:

答案 0 :(得分:0)

您可以使用get external data>选项导出数据;来自其他来源>从microsoft查询中,您需要执行更多操作来将文本文件设置为源,但一旦完成,您可以将其添加为包含过滤器的连接,然后再填充到电子表格中。您可以在此处详细了解如何设置它:About using Microsoft Query to retrieve external data