■お仕事の話
お昼前、先輩に相談を持ち掛けられました。
先輩「中の人さん、複雑な作業をエクセルで簡単にできる方法ってある?やっぱり複雑な作業だから、エクセルじゃ無理かなぁ…」
先輩いわく「複雑な作業」の内容を聞いてみると、こういうお話でした。
わが社の製品300種が、とある運送会社で何キロ扱いになるかの書類がきたので、それぞれの各都道府県に該当の製品を送る際の運賃を算出したいとのこと。
しかし、この運賃の算出方が複雑で、3つの計算方法のうちのどれかが当てはまります。
「40キロまでの製品は、一律40キロの規定運賃とする」
「41キロ~50キロの製品は50キロの規定運賃とする」
「51キロ以上の製品は、1キロ×○円(地域ごとに全然違う)を運賃とする」
先輩は、これを一人で計算機叩いて計算しようとしていたそうなのですが・・・
何か一発でエクセルでぱぱっとできる方法はないか、という相談でした。
確かに…47都道府県×300製品を計算機でいちいち計算するのはつらい(’’;
先輩「何か方法ありそう?」
なにかありそうな気がする…
私「方法ありそうな気がします。ちょっと考えさせてください」
マクロが組めたらいいんだけど、すでにマクロ触らなくなって4年が経過してるので、すぐには作れそうにないorz
やっぱり、VBA含めてもう一度勉強しようかなぁ…
ただ、今回の方法で言うと、IF関数が使えそうだったので、IF関数の構文考えタイム。
中の人はIF関数使うの大好きなのです(笑
要するに今回の話をまとめちゃうと
「もし、製品のキロ数が50キロ以上だったら、キロ数×○円、けれど40~50までの間は△△円、40までだったら□□円」
なのです。
そういうIF関数の式を作っちゃえば、あとはコピーして、地域ごとの金額差が生じるところは訂正しちゃえばいけるなぁと。
ちなみに、IF関数とは
「論理式が成り立たない場合はAを表示し、成り立つ場合はBを表示する」
ものです。
Aには文字も入りますし、数式の計算結果でもオッケーなのです。
すっごい便利です。
重宝してます。
IF関数は大学に通っていた時のエクセルの授業で教えてもらったのですが、そのとき先生が
「IF関数覚えていたら、いろいろ流用できるから重要」
と言っていた言葉をとっても実感してます。
今の仕事に就いてから、ものすごく使ってます(’’;
しかし、一つ問題点がありました。
IF関数は大抵論理式が当てはまるか、当てはまらないかなので、今回みたいに3つ条件がある場合はどうしたものかと。
ひとまず、
=IF(50>=製品キロ数が入っているセル,△△,製品キロ数が入っているセル*○円)
※訳「51キロ以上の場合はキロ数×○円を表示し、50キロ以内の場合は△△円を表示する」
といった感じで、式は簡単にできました(’’
しかし、これだと40キロ以内の運賃の場合、□□円が表示されないのです。
40キロ以内の商品をピックアップして、そこだけ手入力で変える…のは面倒。
何かいい方法が…と必死に考えていたらお昼ご飯タイムになってました(*ノノ)
お昼ごはんもぐもぐしながらひたすら考え(笑
何かいい方法はないものか…
もぐもぐもぐ…
3つの条件を1つの式に…
もぐもぐもぐ…
そうか、3つが無理なら、もう1個IFの式をいれればいいんだ…
もぐもぐもぐ…
でも、IF関数の中にさらにIF関数は入れられるのかな・・・?
もぐもぐもぐ…
とりあえず食べ終わったらやってみよう(’’*
IF関数の中でさらにIF関数ができれば条件全部できる~(’’*
というわけで、ご飯食べ終わって再びパソコンと格闘。
試してみると…なんとIF関数の中でさらにIF関数が入れられた!(笑
よし!
これならいける~(’’*
というわけで最終的に作った式はこちら。
=IF(50>=製品キロ数が入っているセル,IF(40>=製品キロ数が入っているセル,□□,△△),製品キロ数が入っているセル*○円)
※訳「51キロ以上の場合はキロ数×○円を表示し、41~50キロの場合は△△円を表示し、40キロ以下の場合は□□円を表示する」
あとは全部数値変更するところは変更してオートフィル(笑
ホントは地域ごとの金額表とかも入力して、そこのセルを呼びだす形にしたかったけれど、先輩が作っているシートなので、あまりいじるのはやめておきました(’’
先輩に完成したことを伝えると、ものすごくびっくりしてました(’’*
先輩の手間を大幅カット完了~(’’*
満足(*ノノ)
IF関数は使い方知らない人もいるみたいで、上司が数式を見て頭をひねってました(笑
けど…
先輩「中の人さんってすごいね~(’’*」
私「いえいえ、とんでもない(*ノノ)照れ照れ」
先輩「特にすごいところは…
こんな難しい数式思い浮かぶのに…
57×2が104になるあたりがすごいよね」
Σorz
数式を考えるのは結構好きです。
日本語を、数式に変換する感じがとっても楽しいの(’’*
でもね・・・
計算そのものは苦手なんです…orz
■Sさんのこと
Sさんが、私が「一緒にしたいな」っていったことを、一緒にしようと頑張ってくれていました。
すごく頑張ってくれていたのに、私ときたら・・・orz
しかも、Sさんをとても傷つけてしまったことに気がついたのが遅かった…
orz
寝ようと思って…でも、眠れなくて横になっていろいろ考えました。
・・・何がすごいって、Sさんとはつきあってそろそろ半年がたちますが、私は一度もSさんに傷つけられたことってないんです。
(一度、私がSさんの言葉の意味を取り違えてショックを受けたことはありますが、それは私のせいorz)
逆は・・・何度かorz
多分私が知らず知らずにSさんを傷つけてしまった回数は、もうちょっとあるはず。
これを考えると…
Sさんはほんとに私のことを大事にしてくれて…
言葉とか、態度とか、すごく気をつけてくれてるんですよね。
私が「○○したい(’’*」っていうと、できるだけかなえようと頑張ってくれたりして。
それなのに、私と来たら・・・orz
Sさんを、もっともっと大事にしたい><
Sさんを、傷つけたくない><
もっとわたしも気をつけよう(*ノノ)
もっともっと、Sさんを幸せにできる人間になるぞ!(’’*
いてもたってもいられず、ベッドから起き上がってSさんにごめんなさいメールを送ってまたベッドへ。
Sさんのこと傷つけちゃった自分が許せなくて、一つの決意をしました。
一番、楽しみなことをSさんを傷つけちゃった罰として我慢しよう。
Sさんから連絡があるまで、一番楽しみなこと…Sさんへメールを送ることを我慢することに決めました。
そうでもしなきゃ、ほんと自分が許せなかったのですorz
反省して、次へ活かすぞ~!><
どうか・・神様・・Sさんに愛想をつかされていませんように・・・