セルのデータを抽出する方法

7 次查看(过去 30 天)
恵輔 沖
恵輔 沖 2023-5-18
评论: 恵輔 沖 2023-5-19
%これで、実行をすると、tempの行列となり、その1行1列にma曲げのデータが格納されてしまいます。
%これの抽出するにはどうすれば良いでしょうか。
Excel_name = '試験結果.xlsx';
sheet_name = {'ma曲げ', 'mo曲げ', 'ma座屈', 'mo座屈', 'FEM解析_ma', 'FEM解析_mo'};
for k = 1:numel(sheet_name)
temp{k} = readmatrix(Excel_name, 'sheet', sheet_name{k}, 'range', 7);
end
%例えば、temp1 = temp(1,1), temp2 = temp(1,2)というふうにしたいのですが...

回答(1 个)

Atsushi Ueno
Atsushi Ueno 2023-5-18
编辑:Atsushi Ueno 2023-5-18
readmatrix 関数の Range オプションでデータの開始セルを7行目としていますが、これにより一つのシートから一つのスカラ値が得られると仮定します。下記の例では7行目の代わりに3行3列目としました(添付ファイルを確認願います)。もしこの仮定が違ってたらコメント等でお知らせください。
各シートの値が一つのベクトルにまとまった事が確認できました。
Excel_name = '試験結果.xlsx';
Sheet_name = sheetnames(Excel_name);
for k = 1:numel(Sheet_name)
temp(1,k) = readmatrix(Excel_name, 'sheet', Sheet_name(k), 'range', [3 3]);
end
temp % 例えば、temp1 = temp(1,1), temp2 = temp(1,2)というふうにしたいのですが...
temp = 1×6
9 90 900 9000 90000 900000
  2 个评论
Atsushi Ueno
Atsushi Ueno 2023-5-18
temp{k} = readmatrix(...) とした理由:
各シートから得られるデータの型やサイズ(何行何列)が異なっていても、一つの cell 配列としてまとめて扱う為です。
恵輔 沖
恵輔 沖 2023-5-19
ありがとうございます。

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 データのインポートと解析 的更多信息

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!