プロが教える店舗&オフィスのセキュリティ対策術

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

バージョンEXCEL2000

A 回答 (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コードにしただけです。
    • good
    • 2
この回答へのお礼

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

お礼日時:2008/02/08 20:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています