• ベストアンサー

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

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

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

  • ベストアンサー
  • lark_0925
  • ベストアンサー率63% (37/58)
回答No.1

標準モジュールに '======================================================== 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コードにしただけです。

omusupa
質問者

お礼

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

関連するQ&A