Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi everybody,
I need to import a csv file and I work fine with this recorded macro: Range("a1:j220").Select Selection.ClearContents Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:= _ "text;f:\maurizio\web\biliardo\script\eccel.cs v", Destination:=Range("A4")) .Name = "eccel" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = False .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = 1252 .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = False .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 2) .TextFileTrailingMinusNumbers = True .refresh BackgroundQuery:=True End With My problem is how to avoid to specify the full path of the csv file as the application is to be used by other users and the path might not be the same. Yes I know, everyone could match the path with its own machine but I was wondering if a smarter way to do it exists. Of course the csv file must be in the same application folder. thanks |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Possibly use the UNC as the file's address?
-- Regards Andy Wiggins www.BygSoftware.com Home of "Save and BackUp", "The Excel Auditor" and "Byg Tools for VBA" "Maurizio" wrote in message ... Hi everybody, I need to import a csv file and I work fine with this recorded macro: Range("a1:j220").Select Selection.ClearContents Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:= _ "text;f:\maurizio\web\biliardo\script\eccel.cs v", Destination:=Range("A4")) .Name = "eccel" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = False .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = 1252 .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = False .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 2) .TextFileTrailingMinusNumbers = True .refresh BackgroundQuery:=True End With My problem is how to avoid to specify the full path of the csv file as the application is to be used by other users and the path might not be the same. Yes I know, everyone could match the path with its own machine but I was wondering if a smarter way to do it exists. Of course the csv file must be in the same application folder. thanks |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
This will allow the user to select a file from a browser window.
Dim FName As Variant FName = Application.GetOpenFilename(filefilter:="Text Files (*.csv), *.csv", _ MultiSelect:=False) With ActiveSheet.QueryTables.Add(Connection:= _ "text;"& FName, Destination:=Range("A4")) etc, etc Mike F "Maurizio" wrote in message ... Hi everybody, I need to import a csv file and I work fine with this recorded macro: Range("a1:j220").Select Selection.ClearContents Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:= _ "text;f:\maurizio\web\biliardo\script\eccel.cs v", Destination:=Range("A4")) .Name = "eccel" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = False .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = 1252 .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = False .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 2) .TextFileTrailingMinusNumbers = True .refresh BackgroundQuery:=True End With My problem is how to avoid to specify the full path of the csv file as the application is to be used by other users and the path might not be the same. Yes I know, everyone could match the path with its own machine but I was wondering if a smarter way to do it exists. Of course the csv file must be in the same application folder. thanks |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Great, this is the solution I was looking for.
Thank you Maurizio Camporesi "Mike Fogleman" wrote: This will allow the user to select a file from a browser window. Dim FName As Variant FName = Application.GetOpenFilename(filefilter:="Text Files (*.csv), *.csv", _ MultiSelect:=False) With ActiveSheet.QueryTables.Add(Connection:= _ "text;"& FName, Destination:=Range("A4")) etc, etc Mike F "Maurizio" wrote in message ... Hi everybody, I need to import a csv file and I work fine with this recorded macro: Range("a1:j220").Select Selection.ClearContents Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:= _ "text;f:\maurizio\web\biliardo\script\eccel.cs v", Destination:=Range("A4")) .Name = "eccel" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = False .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = 1252 .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = False .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 2) .TextFileTrailingMinusNumbers = True .refresh BackgroundQuery:=True End With My problem is how to avoid to specify the full path of the csv file as the application is to be used by other users and the path might not be the same. Yes I know, everyone could match the path with its own machine but I was wondering if a smarter way to do it exists. Of course the csv file must be in the same application folder. thanks |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Importing TXT file from web | Excel Discussion (Misc queries) | |||
Importing TXT file from web | Links and Linking in Excel | |||
Importing a file(s) | Excel Worksheet Functions | |||
Importing text file, only option to edit existing file | Excel Discussion (Misc queries) | |||
importing file | Excel Discussion (Misc queries) |