見出し画像

バーコード管理.xlsmの調整 ~全提出を変更したい!~

バーコード管理のエクセルファイルについて質問があったので、お答えしたいと思います。

<バーコード管理.xlsmについては、以下のマガジンでまとめています。ファイルが欲しい方は、TwitterからDMをどうぞ。>

1 質問

質問なんですが、3つを全提出にしたい(つまり3つ出したら名前が消える)ってどうすればよいか教えて下さい😅

元のファイルは、5つの提出物がチェックできるように作られています。それぞれ、提出するとその人の名前が消える、また「全提出」に設定しておくと5つ全部提出すると名前が消えるように作ってあります。

ですが、「5つじゃなくて2つや3つで名前が消えるようにしたい!」というご要望があったので、調整の方法をお伝えしようと思います。「エクセル苦手で、関数とかよく分からん!」という人にも、できるだけ分かりやすく伝えたいと思いますので、見てみて下さい。

2 結論:ここを書きかえましょう

結論から言うと、H列、O列、V列の20行から33行にある関数を書きかえればOKです。例えばH列の場合、

=IF(SUM(C●●:G●●)=5,1,0)

の「5」という数字を「3」に変え、

=IF(SUM(C●●:G●●)>=3,1,0)

というように「>」も使えば、「3つ以上の提出物が出たら全提出とみなす」という指示になります。H20、O20、V20を書きかえて、フィルで下へとコピーすれば完了です。「この説明じゃよく分からん!」「ちゃんと式を納得して変えたい」という方は、3へ。

3 よく分かる図解説明① 下準備

まずは、調整するための下準備からです。

このエクセルファイルは、「シートの保護」と「ウィンドウ枠の固定」がかかっています。この2つを外さないと、データの調整ができません。まずは外し方から。

「シートの保護」は、一番上の「校閲」タブから「シート保護の解除」を押しましょう。パスワードはかけてないので、そのまま保護が外れるはずです。

シート保護

「ウィンドウ枠の固定」は、一番上の「表示」タブから「ウィンドウ枠の固定」「ウィンドウ枠固定の解除」の順に押していけば外れます。

ウィンドウ枠の固定

なお、「シートの保護」は間違ってプログラムを壊さないために。「ウィンドウ枠の固定」はバーコードを貯めていってもA2からU16が常に表示されるためにオンにしています。終わったら、元に戻しておくことをオススメします。(ウィンドウ枠の固定は、V17で固定しています)

4 よく分かる図解説明② 本番!

では、画面を下にスクロールしてH20からH33までのセルを見てみましょう。

画像3

そうなんです。真っ白なんです。

でも実はこれ、見た目が白いだけです。ちゃんと文字が入っているので、C20からV33くらいまでを範囲指定し、文字の色を変えてみましょう。

範囲指定

フォント

ここでは、分かりやすいように赤にしてみました。何色でもOKです。

さて、たくさんの0が並んでいます。あるいは、すでにバーコードがいくつか入力されている状態なら、1もいくつかあるかと思います。ここは、上の✔マークがつくところ(C3からG16など)を見て、空欄なら0、✔なら1というように表しています。

例えば、C20の中には、次のような式が入っています。

=IF(C3="",0,1)

画像6

これはIF関数で、「もしC3が""(=空欄)なら0を、そうでなければ1を返す」という式。これがC20~C33、D20~D33、E20~E33、……と入っているわけです。なので、✔が入っていなければ0、✔ならば1が自動的に入るはずです。

その中で、H列、O列、V列は特別です。例えばH20には、次のような式が入っています。

=IF(SUM(C20:G20)=5,1,0)

画像7

これはどういう意味でしょうか。

大きく見ると、先ほどと同じくIF関数です。訳すと、「もしSUM(C20:G20)=5ならば1を、そうでなければ0を返す」という式です。

SUMというのは、足し算。つまり、SUM(C20:G20)というのは「C20からG20までの数値の合計」を表します。

つまりH20は、C20からG20までの合計を確認して、それが5だったら「1」、そうでなければ「0」を返しますよ!というセルです。C20からG20までは5マスあるので、すべてが「1」ならばその合計が5になり、H20も「1」になるわけです。

4つ

↑ C20~F20まで「1」だけど、H20は「0」

5つ

↑ C20からG20まですべて「1」だと、その合計は5なので、H20も「1」になります。

では、「5つで提出物完了」ではなく「3つで提出物完了」にするにはどうすればよいでしょうか。…そうです。「合計で5なら1を」ではなく、「合計で3(以上)なら1を」という式に変えてしまえば良いのです。

もう一度確認すると、H20はこんな式でした。

=IF(SUM(C20:G20)=5,1,0)

まず、ここの「5」を「3」に変えれば、3つの提出物で全提出になります。書きかえましょう。(※必ず半角数字で!!)

=IF(SUM(C20:G20)=3,1,0)

画像10

はい、変わりました。H20の見た目が、0になっていますよね?「3つで全提出」なのに、「5つ」提出されたので、「1」ではなく「0」になっているのです。これでも構わないのですが、「3つぴったり」ではなく「3つ以上」にするのなら、次のような式。

=IF(SUM(C20:G20)>=3,1,0)

3以上

こうしておくと、3つ以上の提出物がそろえば「1」が入ります。

あとは、H20の部分をフィルで下にグーッとやれば、H列は完成です。

画像12

同じ要領で、O20からO33、V20からV33をやっておけば、「3つで全提出」のプログラムの出来上がりです。もちろん、2つなら数字を「2」に、4つなら数字を「4」にすればいいだけです。お疲れさまでした!

5 終わりに

こんな感じで、自分の使いやすいようにカスタマイズできるのが、エクセルでのプログラムの良いところです。すべての要望に応えられるかどうか分かりませんが、これからも何か質問・疑問等ありましたら、連絡してみてください。最後まで読んでいただき、ありがとうございました。


この記事が気に入ったらサポートをしてみませんか?