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

29 vues (au cours des 30 derniers jours)
恵輔 沖
恵輔 沖 le 18 Mai 2023
Commenté : 恵輔 沖 le 19 Mai 2023
%これで、実行をすると、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)というふうにしたいのですが...

Réponses (1)

Atsushi Ueno
Atsushi Ueno le 18 Mai 2023
Modifié(e) : Atsushi Ueno le 18 Mai 2023
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 commentaires
Atsushi Ueno
Atsushi Ueno le 18 Mai 2023
temp{k} = readmatrix(...) とした理由:
各シートから得られるデータの型やサイズ(何行何列)が異なっていても、一つの cell 配列としてまとめて扱う為です。
恵輔 沖
恵輔 沖 le 19 Mai 2023
ありがとうございます。

Connectez-vous pour commenter.

Catégories

En savoir plus sur データのインポートと解析 dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!