Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9131 / 13646 ツリー ←次へ | 前へ→

【29186】ユーザー定義での切り捨て方法 paopao 05/9/27(火) 11:48 質問[未読]
【29196】Re:ユーザー定義での切り捨て方法 haramama 05/9/27(火) 13:46 回答[未読]
【29201】Re:ユーザー定義での切り捨て方法 paopao 05/9/27(火) 14:57 お礼[未読]
【29198】Re:ユーザー定義での切り捨て方法 Jaka 05/9/27(火) 14:11 発言[未読]

【29186】ユーザー定義での切り捨て方法
質問  paopao  - 05/9/27(火) 11:48 -

引用なし
パスワード
   お世話になっております。

セルの書式設定のユーザー定義にて、「小数点1桁固定、小数点5桁まで表示可能」
ということをしたく、現在以下の定義までたどり着いています。
「#,##0.0####」
ただし、この定義だと小数点が6桁以上の場合、5桁目が四捨五入されて表示されて
しまいます。
6桁目以降を切り捨てるにはどうしたら良いでしょうか?
1.234567 ⇒ 1.23456 と表示させたいです。

よろしくお願いします。

【29196】Re:ユーザー定義での切り捨て方法
回答  haramama  - 05/9/27(火) 13:46 -

引用なし
パスワード
   こんにちは。
以下のようにrounddown関数を使うと表示できますが、、

--------------------------------------------------------------

Sub 小数点6桁以上切捨て()

    Range("A1").Value = kirisute
     
    
End Sub
Function kirisute()
    kirisute = Format(WorksheetFunction.RoundDown(1.234567, 5), "#,##0.0####")
 
    
End Function

-----------------------------------------------------------------------

▼paopao さん:
>お世話になっております。
>
>セルの書式設定のユーザー定義にて、「小数点1桁固定、小数点5桁まで表示可能」
>ということをしたく、現在以下の定義までたどり着いています。
>「#,##0.0####」
>ただし、この定義だと小数点が6桁以上の場合、5桁目が四捨五入されて表示されて
>しまいます。
>6桁目以降を切り捨てるにはどうしたら良いでしょうか?
>1.234567 ⇒ 1.23456 と表示させたいです。
>
>よろしくお願いします。

【29198】Re:ユーザー定義での切り捨て方法
発言  Jaka  - 05/9/27(火) 14:11 -

引用なし
パスワード
   こんにちは。

ここ応用したらどうですか?
[#28640]

ユーザー設定
0.#####・# (注)・は、Ctrl + J (入力したは何も表示されない。)
で、配置を上詰め。

因みに正数の時に「.」を表示したくないと言われても解りません。
意味が違ったらすみません。

【29201】Re:ユーザー定義での切り捨て方法
お礼  paopao  - 05/9/27(火) 14:57 -

引用なし
パスワード
   ご返答ありがとうございます。
書式設定のユーザー定義内のみで完結させたいのですが、
関数使用のやり方も参考になりました。

今回は、javaからXMLを用いて予め用意されたExcelテンプレート
に値をセットするというプロセスであることから、結局javaの中で
小数点6桁以下を切り捨てた値をXMLに渡してExcel表示することで
逃げることにしました。

(XML側でExcelテンプレートに作成したユーザー定義Noを指定。
 ユーザー定義「#,##0.0####」。)

以上

9131 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free