readcell関数で取得するExcelのデータ精度に関して
Afficher commentaires plus anciens
Excelのセルに「79.999999998」と反映し、値が「80」のように丸められたとします。

そのセル値をreadcell関数で取得したのですが、「79.999999998」ではなく「80」の値として取得されていることを確認しました。

readcell関数で、Excel内のセル値を取得する際に、丸められた値ではなく素の精度の値(今回の場合「79.999999998」)を取得できるようにするオプションはございますか?
■追記
readcell関数ではR2021aまでは、Excelデータの素の精度を取得することが出来ない。
その為、xlsreadを用いたり、readmatrixやreadtableなど、他の読込関数で読み込むほか回避する。
R2021bからは改善
6 commentaires
Hernia Baby
le 30 Sep 2021
確認ですが、これはどうしてもreadcellを使わなければいけないのでしょうか?
Hiroki Konno
le 30 Sep 2021
Atsushi Ueno
le 30 Sep 2021
Déplacé(e) : Atsushi Ueno
le 17 Août 2022
上記に従い、ファイルの内容に基づくインポート オプションを得て、"VariableTypes"が最初から"double"になっていたので、逆に80にするためにこれを"int8"に変えてreadcellを実行したのですが変わりませんね。何故ですか?
%opts = spreadsheetImportOptions % スプレッドシートのインポート オプション オブジェクト(1変数)のデフォルト値
opts = detectImportOptions('eighty.xls') % ファイルの内容に基づくインポート オプション
opts = setvartype(opts,{'Var1'},'int8') % 'Var1'の"VariableTypes"を'double'から'int8'に変更
format long; readcell('eighty.xls',opts)
format short; readcell('eighty.xls',opts)
format shortG; readcell('eighty.xls',opts)
Hiroki Konno
le 30 Sep 2021
Déplacé(e) : Atsushi Ueno
le 17 Août 2022
Hiroki Konno
le 4 Oct 2021
Déplacé(e) : Atsushi Ueno
le 17 Août 2022
Hiroki Konno
le 5 Oct 2021
Déplacé(e) : Atsushi Ueno
le 17 Août 2022
Réponses (0)
Catégories
En savoir plus sur スプレッドシート dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
