[RESOLVED] Open CSV File - Please, Help!
Good Morning everyone,
I'm having trouble importing CSV via macro in Excel 2007.
I found several answers here but none of them solved my problem.
When I open the file or try to import it, the formatting is lost. I found functions to the CSV format but the only one that worked I can not include a variable to read the path of the CSV
This works for me:
Code:
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT; [here goes the path with the file]" _
, Destination:=Range("$A$1"))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 _
, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
But, i can not put a variable after the code "TEXT;" I don't know how to do it.
Someone help me please. I'm going crazy with it. This function format my CSV but I can not point the variable to open the file.
Thank you all for help,
Hugs,
Caio
Re: Open CSV File - Please, Help!
I'm sorry people. I resolved my problem
I do this:
Code:
Arquivo = "TEXT;" + sLinha
With ActiveSheet.QueryTables.Add(Connection:= _
Arquivo _
, Destination:=Range("$A$1"))
.FieldNames = True
.RowNumbers = False
Tks everyone.
Hugs,
Caio
Re: [RESOLVED] Open CSV File - Please, Help!
you can try this
vb Code:
mypath = "c:\temp\myfile.xls"
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT; " & mypath _
, Destination:=Range("$A$1"))