XLSWRITE - into same folder location as M file

3 ビュー (過去 30 日間)
Vineet Guru
Vineet Guru 2013 年 6 月 6 日
I want to store my M files on a USB stick for protability. Some of these M files create xlsx files as an output. I would like to store these in the same folder location as the M file which creates them. I used the usual xlswrite ('filename.xlsx', variable); but get an error:
Error using xlswrite (line 220)
Invoke Error, Dispatch Exception:
Source: Microsoft Excel Description: Microsoft Excel cannot access the file 'C:\WINDOWS\system32\38C41000'. There are several possible reasons:
• The file name or path does not exist.
• The file is being used by another program.
• The workbook you are trying to save has the same name as a currently open workbook.
Many thanks.

採用された回答

Vineet Guru
Vineet Guru 2013 年 6 月 6 日
Thanks guys for your attempts. Your help is most appreciated.
I eventually stumbled upon the "uigetfile" instruction as with just a one click on the m file of interest in a folder, and the uigetfile picks up the folder + filename. I then stripped the filename and retained the folder.
  2 件のコメント
Walter Roberson
Walter Roberson 2013 年 6 月 6 日
If you just want the directory, then uigetdir() would be more appropriate.
Iain
Iain 2013 年 6 月 6 日
If you know the name of the files, you could use "which" to do it automatically as well.

サインインしてコメントする。

その他の回答 (2 件)

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 6 月 6 日
You should specify the folder when using xlswrite
xlswrite('yourolder/yourfile.xls',data)
  4 件のコメント
Vineet Guru
Vineet Guru 2013 年 6 月 6 日
The pwd instruction points to C:\windows\system32, which is not where my M file is.
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 6 月 6 日
編集済み: Azzi Abdelmalek 2013 年 6 月 6 日
How are you running your m-file? your m-files, are not in the current folder? And I am not getting what the aim of what you are looking for

サインインしてコメントする。


Iain
Iain 2013 年 6 月 6 日
編集済み: Iain 2013 年 6 月 6 日
[p f] = fileparts(mfilename('fullpath'));
xlswrite([p '\excel filename.xls'], ...)
  3 件のコメント
Iain
Iain 2013 年 6 月 6 日
mfilename('fullpath') grabs the path, and the filename of the m file (but not the .m bit)
Jan
Jan 2013 年 6 月 6 日
編集済み: Image Analyst 2013 年 6 月 6 日
fullfile(p, 'excel filename.xlsx') considers potentially existing trailing and OS depending file separators automatically.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeEnvironment and Settings についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by