- ベストアンサー
エクセルで計算
200以上のセルに6桁の数字が入力されています。(社員の給料なのですが)これを、一の位と十の位を切り捨てる形で4桁の数字に全部直すように言われました。セル1つ1つをBackSpaceキーで消していく以外に、一度に全部のセルから一の位と十の位を削除する方法ありますか?パソコンの専門用語が分からないので、なるべく分かりやすい言葉で説明していただけると助かります。お忙しいところ申し訳ありませんが、どうぞ教えてください!
- みんなの回答 (9)
- 専門家の回答
質問者が選んだベストアンサー
(1)sheet1に元データがあるとして、sheet2の同じ位置へ、sheet1でデータのある部分(範囲)だけをコピーします。元データは残しておきましょう。 シートのコピーでも良いです。 (2)そしてsheet2(コピー先)の月給額の入っている範囲の、左最上セル(例えとしてB3とします)のところへ関数式=int(sheet1!b3/100)と入れます。Intは整数部分をとる関数です。=rounddown(・・)と同じです。 そして、B3セルの右下に出る+ハンドルを、月給額の入っているセル範囲だけ、下または 右に引っ張ります。 これでsheet2の月給欄に切り捨てされた値が現われます。 sheet1!b3/100では四捨五入されてしまいます。 念のため、書式は数値か通貨で小数点以下桁数0にしておきましょう。
その他の回答 (8)
- densha
- ベストアンサー率29% (333/1123)
給料自体も下二桁切り捨てならば、触法のおそれが・・・・ それはさておき、発想の転換で、表示単位を千円単位にして、 小数点第1位まで表示する手もありますね。 20万(200,000)を200千(200.0)とするのです。 下2桁以下は切り捨て。 その給料が計算結果で1枚のシートで完結させるには コレがよろしい様な気もします。 他にはマクロを使う手もあります。 「エクセル」「マクロ」で検索の上、若干のお勉強も必要です。
お礼
関数で簡単に出来る方法が見つかりました。ありがとうございました!
- LAMY
- ベストアンサー率25% (249/985)
#4の方の書き込みを見て、簡単なのが思いつきました。 金額がA1に入っているとして... =ROUNDDOWN(A1/100,0) 駄目ですかね...#5の書き込みは文字列にも対応して いると思います。
お礼
int関数で解決しました。でも、No.7さんの方法も試してみようと思います!ありがとうございました。
- whitepepper
- ベストアンサー率27% (683/2442)
皆さん、ちょっと待ってください。Excelには関数が備わっているんですよ。 それをまず使わないと。 それと、ROUND関数は四捨五入です。 切り捨てならば、ROUNDDOWN関数を使います。 =ROUNDDOWN(A1,-2) A列に給与データが入っているなら、隣の列にでもこれを入力すればおしまいです。 ExcelやWordでわからないことのほとんどはイルカさんに尋ねたらいいでしょう。この場合だと、キーワードに「切り捨て」と入れると、出てきます。
お礼
int関数で解決しました。でも、No.6さんの方法も試してみます!ありがとうございました。
- LAMY
- ベストアンサー率25% (249/985)
ややこしいですが、A1に金額があるとして以下の数式は駄目ですか? =VALUE(LEFT(REPT(0,6-LEN(A1))&A1,4)) 元の金額の桁数を「LEN関数」で識別して、満たない桁数の先頭に 「REPT関数」で"0"を付与しています。 その後、先頭から「LEFT関数」 で4桁を切り出して、「VALUE関数」で数値にしています。 "0"を付与した段階で金額が文字列となることろを注意して下さい。 それと数式を流用する場合、数値が変化しないよう注意して下さい。
お礼
int関数で解決しました。でも、No.5さんの方法も試してみます。ありがとうございました!いろんな関数を学習したので、頭グルグルです~・・・。
1.6桁の数字がA列に入っているとします。セルB1に次のように入力してください。 =ROUND(A1/100,0) 2.次に、セルB1の枠の右下にある小さな■にマウスを正確に合わせてください(正確に合うと、マウスカーソルの形が変わります)その状態で左ボタンをクリックしたままマウスを下方向にゆっくりと動かします。数値が入っている範囲の一番下まで行ったら、左ボタンを離してください。 3.B列の一部が範囲指定された状態になっていますので、その中にマウスを合わせて右クリックし、「コピー」を選んでください。次に、もう一度範囲指定された中で右クリックし、「形式を指定して貼り付け」を選んでください。「値(V)」のところをチェックして「OK」を押して下さい。 以上で作業は完了です。 不具合があれば補足お願いします。
お礼
int関数で解決しました。でも、No.4さんの方法も試してみます。ありがとうございました!関数って、たくさんあって訳が分かりません・・・。
まずsheetをもう一つ用意します. (EXCELのバージョンが分からないですが,おそらく最初から三つ位はSheetが用意されていると思います.) そして,最初のSheetに入力されている数字の内,一番左上にある数字のセルの位置を確認します. (そのセルの位置をB2とします.) 最初に用意したSheetの先ほど確認したセルの位置と同じ所に, =(Sheet1!B3)/100 と入力します. (給料が二桁下がって4桁+小数点以下2桁になります.) 次にこのセルを右下からドラッグして,1枚目のSheetで給料が書かれている部分を覆うようにします. 最後に2枚目のSheetで給料が書かれている部分をまとめて指定(ドラッグ)して, 右クリック→セルの書式設定 で表示形式を「数値」にし,小数点以下を0桁にすれば良いかと思います. 文字のみで説明するのが割と難しいので,分からないことがあれば,またコメントしてください.
お礼
int関数で解決しました。ありがとうございました!
- nitto3
- ベストアンサー率21% (2656/12205)
元数字は生かして表示のみ変更するには セルの表示をそのように設定すればいいです。 数字を変えてしまて良ければ関数もあります、 100で割って整数表示し100を掛けてもいいです。
お礼
int関数で無事に解決しました。ありがとうございました!
- asaichi
- ベストアンサー率21% (37/171)
A1に給与データがあるとして B1のセルに =IF(A1>99,(A1/100)*100),A1) とすれば、良いと思います。 説明は もしA1の値が99より大きかったら、100で割って100をかければ、10の 位と1の位が切り落とされます。 もし、99以下は、なにもしません。 これを全ての社員のセルに該当させれば良いと思います。
お礼
int関数で無事に解決しました。ありがとうございました!
お礼
簡単に出来てしまいました!ありがとうございます!感動しました!