人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Excelに関する質問です。複数セルに対して以下の「切り上げ&桁下げ」をまとめて適用できるでしょうか?

=ROUNDUP(セルの元の値/1000,0)

千円表示にしつつ切り上げたいのです。具体例は以下のとおりです。元のセルには、数値が直接入っている場合と、他のセルの数値を引用している場合があります。いずれのセルに対しても、一括適用したいのです。

元のセルの値 → 切り上げ適用後 → 得られる値
139270 =ROUNDUP(139270/1000,0) 140
=A1 =ROUNDUP(A1/1000,0) 140

ズバリのご回答をお教えいただけると助かります。ぜひともよろしくお願いします。

# 膨大なシートの元セルに数値が記入すみです。
# 元セルの値をいじる操作はNGとさせてください

●質問者: Mugicha2004
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:A1 Excel NG ズバリ セル
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● Sag_Chicken
●23ポイント

何を知りたいのかいまいちわからないのですが・・・・。

もう少し具体例か、例を出してくれるとわかりやすいです。

たとえば

A1からA1000にセルの元の値 が入っていて

B1からB1000に切り上げ&桁下げ結果を表示というのであれば、

B1に

=ROUNDUP(A1/1000,0)

といれて

このセルをコピー、B2からB1000を選択して貼り付けを実行すればいいです。

◎質問者からの返答

すみません、簡単に補足しますね。上記の場合ですと、A1からA1000までに値(数値や他セルの引用値)が入力されていますが、上書き的に適用したいのです。つまり、A1からA1000のセル自体に適用して、適用後の値をA1からA1000で見たいわけです。


2 ● risa2007
●23ポイント

元の数字が入っているシートはそのままで、

=ROUNDUP(セルの元の値/1000,0)

という式を全てに入力したいんですよね?

入力したい部分を選択して、コピーでいいんじゃないでしょうか?

一括で全ての場所にその式が入力できます

◎質問者からの返答

すみませんが、ちょっと意味が分かりませんでした。質問文がまずいのかな? 139270と入力されている数値セルA1があるとすると、A1のセルの内容自体を=ROUNDUP(139270/1000,0)とさせたいのです。


3 ● ardarim
●22ポイント

VBAでないと無理そうなので。


(1)以下のVBAマクロを登録する(そのままコピペ)

Sub ApplyFormula()

 Dim c As Range
 
 If TypeName(Selection) <> "Range" Then
 Exit Sub
 End If
 
 For Each c In Selection
 If c.HasFormula Then
 c.Formula = "=ROUNDUP((" & Right$(c.Formula, Len(c.Formula) - 1) & ")/1000,0)"
 Else
 c.Formula = "=ROUNDUP(" & c.Formula & ",0)"
 End If
 Next c

End Sub

(2)変換したい範囲を選択する

(3)マクロを実行する

◎質問者からの返答

詳細なご回答、ありがとうございました。VBAを用いないとできない作業なのですね... 了解しました。


4 ● りくっち
●22ポイント

置換で実現します。


A1=IF(Sheet1!A1="","","$"&Sheet1!A1&"|")


以上ご参考まで。

◎質問者からの返答

ご回答、ありがとうございました。やはり簡単な作業ではないようですね。後ほど試してみます。

「数値が入ったセルを、その数値を変数とした関数に置き換えたい」との希望だったのですが、そもそも簡単ではなかったのですね。少し残念でした....

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ