![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.8ベストアンサー
- 回答日時:
No.4です。
d-q-t-pさんの案より=IF(MOD(A1*10^3,10)=5,ROUND(A1/2,2)*2,ROUND(A1,2))
でもよさそう。小数点誤差までは検証してないけど、
たぶん、d-q-t-pさんは小数点誤差も考えていられる。
>検証してみたところ、やはり一部で結果が奇数となってしまうようです・・・
その一部の希望とかなわない数値を示していただかないと改善できませ~ん
再度ご回答いただきありがとうございます。
大変申し訳御座いません。
当方の勘違いで、CoalTar様の式で問題御座いませんでした。
本当にすみませんでした。
No.7
- 回答日時:
>どうしても8.83となってしまいます
質問の式は間違っていないとおもいます。A1セルの内容を確認してください。
A1セルの数値は、8.825と純粋に8.825が入力されていますか?
もしかして、A1セルの書式は(数値、少数3位)の設定で
見かけは8.825 でも、8.8256を入力している、または
A1=(セル1)*(セル2)等の計算式になっていると
見かけA1=8.825でも内容はA1=8.8256なので
MOD(ABS(A1)*10^2,1)=0.5 とならず 0.56などとなるために、ROUNDされて8.83になる。
No.5
- 回答日時:
[NO.2お礼]へのコメント、
》 A列の値がマイナス値の場合うまくいかないようです
負数の場合を全く考慮してないので、仰るとおりだと思います。
しかしながら、「うまくいかない」だけでは不愉快です。どのように「うまくいかない」かを明記するのが筋というものです。
それはソレとして、他の方の提示式を見るにつけ、私のは如何にも冗長に見えてお恥ずかしい。私の式は無視してください。
ところで、数値を丸めた結果の一般的な概念は、
切捨て→小さい方に
切上げ→大きい方に
ですよねぇ。
この概念を踏襲するなら、“負数”の場合は
切捨て→数値としては小さい方に→絶対値が大きい方に
切上げ→数値としては大きい方に→絶対値が小さい方に
でなければなりません。
つまり、
-2.4→小数点以下切捨て→-3.0
-2.6→小数点以下切上げ→-2.0
ということですが、貴方の理解もこれでよろしいのですね?
ひょっとして、「こんな筈じゃなかった!」ではないでしょうね?
再度ご回答いただき有難う御座います。
A列が正の数の際→(0.165を0.16に)(0.175を0.18に)
A列が負の数の際→(-0.165を-0.16に)(-0.175を-0.18に)
というのが理想の形ということになります。
自分でも十分理解していないことに加え、説明不足により不愉快な思いをさせてしまい、申し訳御座いませんでした。
No.3
- 回答日時:
希望していることは、VBAのRound関数と同じA1にしたいのですよね。
http://ameblo.jp/kanjizaibosatsu/entry-111153258 …
https://support.microsoft.com/ja-jp/kb/418216
質問の数式は、こちら↓を参考にしたのですね。
http://excel-ubara.com/excel3/EXCEL011.html
=IF(MOD(ABS(A1)*10^2,1)=0.5,EVEN(ABS(A1)*10^2-0.5)/10^2*SIGN(A1),ROUND(A1,2))
この数式だと、小数点以下の桁数によっては誤差が多くなるみたいです。
少し探してみたところ、銀行型丸めをするときに小数点以下の丸めをする
場合なら、こちら↓のほうがよいかも。
http://www.geocities.jp/chiquilin_site/data/1103 …
=IF(MOD(ROUND(A1*10^(2+1),10),10)=5,EVEN(TRUNC(A1,2)*10^2)/10^2,ROUND(A1,2))
=IF(MOD(ROUND(A1*10^(2+1),10),10)=5,EVEN(ABS(A1)*10^2-0.5)/10^2*SIGN(A1),ROUND(A1,2))
データ数を多くして検証をしていませんが、参考にはなると思います。
ご回答ありがとうございます。
一つ目の数式ですとA1の値を0.145にした際結果が0.16になってしまう
二つ目の数式ですとA1の値を0.365にした際結果が0.38になってしまう
等の問題が出てしまいました・・・
丁寧にお答えいただき、感謝いたします。
No.2
- 回答日時:
A3セルの値(8.825)の少数点以下3桁(この数値をB1セルに入力)を五捨五入し、小数点以下2桁(8.82)にしたい、のであれば、添付図を参照しながら、…
セル B2 に次式を入力(冗長に過ぎるかも)してみてください。
=(IF(AND(MOD(ROUND(A2*10^B$1,3),10)=5,MOD(INT(ROUND(A2*10^B$1,3)/10),2)=0),ROUNDDOWN(ROUND(A2*10^B$1,3),-1),ROUND(ROUND(A2*10^B$1,3),-1)))/10^B$1
なお、
https://ja.wikipedia.org/wiki/%E7%AB%AF%E6%95%B0 …
のページの中ほどの「最近接偶数への丸め」の記事が参考になろうかと。
私自身は「JIS丸め」なる言葉を昔々耳にしたことがあります。
![「Excel数式 偶捨奇入(銀行型まるめ)」の回答画像2](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/d/298588_56cc2be8857df/M.jpg)
大変丁寧にご回答いただき、ありがとうございます。
参照ページを拝見したところ、
「最近接偶数へのまとめ」というものだと思います。
ご教授いただいた数式で検証したところ、
A列の値がマイナス値の場合うまくいかないようです・・・
何か良い方法はありますでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) エクセルの数式で教えてください。 2 2022/10/25 17:10
- Excel(エクセル) エクセル 関数について質問です。 2 2022/10/03 11:14
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/09 14:54
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- Excel(エクセル) エクセルの関数に関しての質問です。 5 2022/10/07 11:17
- Excel(エクセル) Excelのマクロについて 2 2022/06/14 03:38
- Excel(エクセル) VBAで “:” を含むセルの特定 2 2023/05/11 16:30
- Excel(エクセル) エクセルでIF関数中にIFERROR関数を使いたいのですが???? 5 2022/04/08 13:24
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで「ページレイアウト...
-
エクセルの数式バーのフォント...
-
2列に入っているデータを1列...
-
【Excel】別シートから条件に合...
-
EXCELの散布図で日付が1900年に...
-
エクセルをエクセレントに究める
-
F9キーについて。
-
Excelの数式について教えてくだ...
-
数字入力後他の文字等が表示さ...
-
Excelセルを跨いで合計を出す方法
-
計算能力
-
【ExcelVBA】ダブルクォーテー...
-
エクセルのツールバーから数値...
-
エクセル関数を使って
-
エクセル シート表示
-
エクセルでファイルの最終更新...
-
Excel 2019 [オプション]の[リボンのユ...
-
特定の文字列を含む、住所を抽...
-
祝日と土曜、日曜の合計をカウ...
-
Excel分数の表示について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報
皆様からのご回答ならびにご指摘をうけまして、
補足させていただきます。
元の値につきましては負の数となる可能性も御座います。
絶対値について考え、小数点以下3桁目が5の際に、
最も近い偶数にまるめたいと考えております。
説明不足で申し訳御座いません。