- ベストアンサー
エクセル 抽出した少数部の数値を使って計算
例えば 検査値が0.27として =LEFT(RIGHT(TEXT(A1, ".00"),1),1) の式で 少数第二位の「7」を抽出しましたが、その「7」を使って 更に計算をしたいのですが、この抽出した「7」を数値化 することが出来ますでしょうか。 ご教授のほど、よろしくお願いいたします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
=VALUE(LEFT(RIGHT(TEXT(A1, ".00"),1),1)) にすれば計算できると思います。
その他の回答 (4)
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
- keithin
- ベストアンサー率66% (5278/7941)
>検査値が0.27として エクセルで実際にしばしば問題になりますが、見た目0.27に見えて実は0.2699999999895みたいな具合に、エクセルでは小数点以下の数値についてぴったしその値になっていない場合が往々にして発生します。 そういう状況を踏まえて >その「7」を使って更に計算をしたい 具体的にどんな計算をしたいのかに応じて、簡単なやり方が色々あります ケース1)単純に四捨五入したい場合 たとえばその7を2倍したいとかなら =RIGHT(ROUND(A1,2))*2 とかで十分です。 ケース2)7を含めた計算結果を更に「関数で計算」したい場合 =RIGHT(ROUND(A1,2))*1 とかで「数値の7」が出てきます。
- bunjii
- ベストアンサー率43% (3589/8249)
ご提示の数式は無駄が多すぎます。 =MID(A1,4,1) または =RIGHT(A1,1) で文字列の7が返ります。 数字だけの文字列に0の加減または1で乗除すると数値化できます。(簡便法) =MID(0.27,4,1)+0 → 7 (数値) =RIGHT(0.27,1)-0 → 7 (数値) =MID(0.27,4,1)*1 → 7 (数値) =RIGHT(0.27,1)/1 → 7 (数値) 関数での数値化は以下のようになります。 A1=0.27 のとき =VALUE(LEFT(RIGHT(TEXT(A1, ".00"),1),1)) → 7 =VALUE(RIGHT(A1,1)) → 7
- aokii
- ベストアンサー率23% (5210/22062)
以下のように、その式に0を足してみてください。 =LEFT(RIGHT(TEXT(A1, ".00"),1),1)+0
お礼
早速のご回答をありがとうございます。 試してみましたが、「0」になりましたが「7」という数値には ならなかったです。
お礼
出来ました! ありがとうございます。