みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

範囲指定した箇所の数値を一括で四捨五入したい

EXCELのマクロで
範囲指定をしたセルの数値(数式ではなく、数字です)を一括で四捨五入(小数点第3位を四捨五入(小数点第2まで表示))した数値を置き換えるマクロを知りたいのですが、調べられずに困っています。
(roundで四捨五入して、それを値だけ貼り付ければ・・と言うことではなく、あくまでもマクロでの方法を教えてください)
よろしくお願いいたします。

バージョンEXCEL2000

投稿日時 - 2008-02-08 19:37:58

QNo.3756923

困ってます

質問者が選んだベストアンサー

標準モジュールに
'========================================================
Sub main()
  On Error Resume Next
  Dim rng As Range
  Set rng = Selection
  If Err.Number = 0 Then
   With rng
     .Value = Evaluate("if(isnumber(" & .Address & _
            "),round(" & .Address & ",2),"""")")
     End With
   End If
End Sub
その四捨五入したいセル範囲を選択した状態で
上記のmainを実行してみてください。
>roundで四捨五入して、それを値だけ貼り付ければ・・と言うことではなく、あくまでもマクロでの方法を教えてください
↑これをそのままVBAコードにしただけです。

投稿日時 - 2008-02-08 19:51:22

お礼

ありがとうございました。

投稿日時 - 2008-02-08 20:10:18

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問