UIGETFILE start in another directory AND choose two default file types

I am using UIGETFILE to choose Excel files, with .xls AND .xlsx extension. Also, I want UIGETFILE to start in another directory. I already looked at the documentation and in this post. I know I would have to use something like this:
uigetfile([pwd '\folder1\*.xls'], 'Select file');
However, that would only allow me to select .xls files. I want it to allow me to select .xls files AND .xlsx files.
How can I do this?

 Accepted Answer

uigetfile(fullfile(pwd,'folder1','*.xls;*.xlsx'),'select file')

2 Comments

Thanks, it worked. This option should be explicitly stated in the documentation.
I agree! It took me a while to figure it out.

Sign in to comment.

More Answers (1)

There's a slightly more flexible way to accomplish this:
uigetfile({'*.txt;*.doc' 'Text file or Word document';'*.txt' 'Text file'; '*.doc' 'Word document'},'Select a file','C:\');
This makes use of uigetfile's optional DefaultName argument to specify the starting path. Since FilterSpec isn't being used to provide the path, it can be a cell array of strings, which enables the use of custom file type descriptions (something that's not possible if FilterSpec is a single string as in the example above).

1 Comment

I was looking for this for a while. Tank you so much. Should be the accepted answer

Sign in to comment.

Categories

Find more on Update figure-Based Apps in Help Center and File Exchange

Tags

Asked:

on 18 Aug 2011

Commented:

on 21 Jan 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!