一部分だけ名前が共通している複数のmatファイルを一括でloadし、エクセルに保存する
古いコメントを表示
ファイル名が、
jirei_
で始まる全てのmatファイルを一括でloadし、それを同時にエクセルファイルに書き込みたいのですが、何か方法はありますでしょうか。
因みに以下は、1つのファイルをloadし、それをエクセルファイルに保存するまでのコードです。 "~" には任意の文字が入ります。
この操作を、jirei_という文字列が含まれる全てのファイルに対して行うコードを作りたいと思っています。
load 'jirei_"~".mat';
filename = 'jirei_"~".xlsx';
C = {'T','X'}
writecell(C,filename,'Sheet',1,'Range','A1');
writematrix(T,filename,'Sheet',1,'Range','A2'); %matファイル内の変数Tを一列目に保存%
writematrix(X,filename,'Sheet',1,'Range','B2'); %matファイル内の変数Xを二列目に保存%
よろしくお願いいたします。
採用された回答
その他の回答 (1 件)
Hernia Baby
2021 年 8 月 14 日
編集済み: Hernia Baby
2021 年 8 月 14 日
【一例】
現在のフォルダ内にある「Sample_~.mat」をすべて取得します
ついでに「.mat」の名前を「.xlsx」に変換する準備をします
str = dir('Sample_*.mat');
txt = ".xlsx";
後はfor分で操作していきます
エクセルの操作はこの中に入れてください
for i = 1:length(str)
file_name = str(i).name; % 名前を抽出
datas = load(str(i).name); % データをロード
excel_name = split(file_name,'.mat'); % .matより前を抽出
excel_name = join(excel_name,txt); % .xlsxをつける
disp(excel_name); % 確認のため名前を表示
end
カテゴリ
ヘルプ センター および File Exchange で スプレッドシート についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!