dポイントプレゼントキャンペーン実施中!

エクセルで、10の位以下を0で表示させたいのですが、計算式を使わずにできる方法はあるのですか??たとえば、「1934→1900」「2330→2300」という感じです。

A 回答 (6件)

100の位以下を0表示にするユーザー定義書式ならできるんですが、10の位以下となると計算式を使うしかないような気がします。



ちなみに100の位以下を0表示にするユーザー定義書式は「#,##0,",000"」です。
    • good
    • 0

エクセルの現状の表示形式には


(A)計算もして(切捨てや、切り上げ、桁を決める(何百円で表)、一定額を足すなど)
あわせて
(B)表示形式も好みのもの
にする機能はありません。
(A)は関数の機能のみが受け持ちます。
ただ例外的に形式を選択して張り付け、加算・乗算がありますが
セルの値が変わります。それでよい場合ですか。それならVBAでも出来ます。
わずかに表示単位以下を四捨五入している風に見える場面がありますが、切捨てに指定ができません。
123.567ー>数値指定、小数点以下0で123
もうひとつ、1000で割り算しているように見える例
ユーザー定義 #,##0,(最後のカンマが重要)
http://www.relief.jp/itnote/archives/000167.php
しかし演算してるわけではなく他の指定(例10000で割り算的なことは出来ない。)
ーー
今のエクセルには、質問者の要求にこたえられません。
関数式などで(A)を別セルで行い、そちらを対象にするか、VBAで値を変えてしまうしかない。
    • good
    • 0

こんにちは。



・マクロを使わない場合

ツール-オプション-計算方法
  表示桁数で計算する
 にチェックを入れる

適当な場所に、「100」を入れて、その書式を、「0」とします。

その「100」をCtrl + C で、コピーして、

目的の数値の範囲を選択し、
右クリック-形式を選択して貼り付け

 除算

そのまま、もう一度、

右クリック-形式を選択して貼り付け

 乗算

そして、

ツール-オプション-計算方法
  表示桁数で計算する
 をオフにします。



・マクロを使う場合(以下の場合は、1000以上、すべての数値に該当します)
'-----------------------------

Sub Test1()
Dim c As Variant
With ActiveSheet
  Application.ScreenUpdating = False
  For Each c In .UsedRange
   If VarType(c.Value) = vbDouble Then
    If c.Value > 999 Then
     c.Value = Int(c.Value / 100) * 100
    End If
   End If
 Next c
End With
 Application.ScreenUpdating = True
End Sub
    • good
    • 0

「計算式を使わずに」とは、表「計算」ソフトである Excel らしくない質問ですが、計算式を使わない理由とか目的は何ですか?

    • good
    • 0

たとえば、A1セルに表示したい数があった場合


=rounddown(A1,-2)
だとだめですか
VBAでやるほどのこともないので、
簡単な計算式が入るけど、
=int(A1/100)*100
でいいかも
    • good
    • 0

たとえば、A1セルに表示したい数があった場合


=round(A1,-2)
だとだめですか

後、VBAで関数を作るとか
    • good
    • 1

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