- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
How do I select files and create the pathway to it as a string?
Hi,
I would like to create a function that enables me to pick multiple files, retrive the local pathway to them and then store this pathway as a string in order to import them to JMP.
dtname = {};
dt.file = Pick File (...);
//select the dir.
path = Pick Directory ("Select a directory.");
for (i=1, i<= N Items(dt.file), i++,
//String of my file name
dtname = dt.file << Get Name ;
Open (
path||"\"||dtname,
//the import settings should predefine which row is header, new column etc.
Import Settings(..)
)
)
when executing this I get a return message that says "Send Expects Scriptable Object in access or evaluation of 'List*...."
What am I doing wrong? Do I have to eval my dt.file = Pick File (...); function?
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: How do I select files and create the pathway to it as a string?
You can open multiple files with pick file(). You can also specify the excel import options right in open(). Look at Open() in the Scripting Index, example 2.
file = Pick File("Pick a file", "$DOCUMENTS", {"Excel|csv;xlsx;xls","JMP Files|jmp;jsl;jrn", "All Files|*"}, 1,0, "", multiple);
For(i=1, i<=nitems(file), i++,
Open(file[i], /*excel options ie: ,Table Contains Column Headers( 1 ), Column Names are on line (3), ect.*/)
);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: How do I select files and create the pathway to it as a string?
Pick File() by default returns file name, including the path to the file, as a string.
This should work:
dt.file = Pick File();
Open(dt.file)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: How do I select files and create the pathway to it as a string?
Hi MS and thank you for your quick reply.
yes this is exactly what I thought since I can use dt.file << Get Name;
I can see now that I've made an error in my discussion, dt.file should be a list so that I may stack several csv files. Therefore I need to iterate/recursively go through the list and import the excel file to JMP.
Moreover, I would like to use "import settings(...)" to predefine the parameters for importing data to JMP, if I use open I have to define these parameters manually for each file that I import.
I've corrected my original post and I look forward to your reply.
BR
Anders
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: How do I select files and create the pathway to it as a string?
You can open multiple files with pick file(). You can also specify the excel import options right in open(). Look at Open() in the Scripting Index, example 2.
file = Pick File("Pick a file", "$DOCUMENTS", {"Excel|csv;xlsx;xls","JMP Files|jmp;jsl;jrn", "All Files|*"}, 1,0, "", multiple);
For(i=1, i<=nitems(file), i++,
Open(file[i], /*excel options ie: ,Table Contains Column Headers( 1 ), Column Names are on line (3), ect.*/)
);