【问题标题】:Add CSV to existing excel file without the need to select csv location将 CSV 添加到现有的 excel 文件,而无需选择 csv 位置
【发布时间】:2015-03-20 04:10:10
【问题描述】:

我能够获得一个简单的 VBA 脚本来自动将 csv 信息导入到我的主列表 excel 文件中。但是,我需要手动导航到 CSV 文件的存储位置。假设 CSV 位置和文件名没有任何变化,我该如何自动化这个过程。我目前正在使用以下 VBA 脚本。任何帮助将不胜感激。

子 Append_CSV_File()

Dim csvFileName As Variant
Dim destCell As Range

Set destCell = Worksheets("master").Cells(Rows.Count, "A").End(xlUp).Offset(1)      'CHANGE SHEET NAME

csvFileName = Application.GetOpenFilename(FileFilter:="CSV Files (*.csv),*.csv", Title:="Select a CSV File", MultiSelect:=False)
If csvFileName = False Then Exit Sub

With destCell.Parent.QueryTables.Add(Connection:="TEXT;" & csvFileName, Destination:=destCell)
    .TextFileStartRow = 2
    .TextFileParseType = xlDelimited
    .TextFileCommaDelimiter = True
    .Refresh BackgroundQuery:=False
End With

destCell.Parent.QueryTables(1).Delete

结束子

【问题讨论】:

    标签: vba excel csv


    【解决方案1】:

    您只需硬编码变量csvFileName的值

    即改变

    csvFileName = Application.GetOpenFilename(
    FileFilter:="CSV Files (*.csv),*.csv", 
    Title:="Select a CSV File", MultiSelect:=False)
    

    csvFileName  = "C:\MyCSVFIle.CSV"
    

    【讨论】:

    • 顺便说一句,如果我想将 csv 添加为通配符,这可行吗? csvFileName = "C:*.CSV"??
    • 没有。您需要找出适合通配符的所有单个文件并单独处理它们。
    猜你喜欢
    • 2014-02-12
    • 2019-02-23
    • 2020-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-30
    • 2017-03-06
    • 2013-03-27
    相关资源
    最近更新 更多