見出し画像

Google スプレッドシートのREPT 関数で数値の評価を星(☆★)で表す

この記事はGoogle Workspace 標準機能 Advent Calendar 2023の13日目の記事です。

こんにちは!ゆるふわクラウドおじさん こと、Teeda と申します。『Google アプリの教科書シリーズ』という本を毎年Amazon で販売していたり、YouTube チャンネルUdemy で学習用動画を公開しています。

本や動画をプラットフォームで公開していると、プラットフォーム内で評価やレビューをいただけることがあります。コンテンツが役に立ったとか、好意的なレビューもあれば、期待と違った、こんなの調べたら誰でもわかる、などの辛辣なレビューをいただくこともあります。

いいレビューも、自分達にとって耳が痛いレビューも、次の作品の企画や翌年版の制作品質向上などに活かしています。レビューや反応をいただけるのはとてもありがたいことです。


レビューをGoogle スプレッドシートでわかりやすく

Google スプレッドシートで、評価をまとめるという活用をしている人はいるでしょうか?

研修参加者の研修の成果を得点で管理していて、得点の区分ごとに星「☆」を表示してわかりやすくしたり、
好きな飲食店のおすすめ度を数値と星「☆」でわかりやすくしたり
いろんなシーンで数値以外の記号の表現で資料を作成することがあります。

「☆」と「★」を1つのセル内で使用することで、
評価
5:★★★★★
4:★★★★☆
3:★★★☆☆
2:★★☆☆☆
1:★☆☆☆☆
のように表示できます。

この記事では、この評価を効率的に入力するため、REPT 関数を使用したやり方を解説します。

星の使い方を考える低評価はどっち・・・?

冒頭で評価の表示方法をまとめたのですが、
1:★☆☆☆☆
これが最低の評価で、評価の数値が1増えていくにつれ、右側に★黒い星が増えていくようにしています。

1という評価の表現は、
★☆☆☆☆ 左から塗りつぶしていく
☆★★★★ 左から白くしていく
☆☆☆☆★ 右から塗りつぶしていく
★★★★☆ 右から白くしていく
という4パターンがあります。

数値が増えていくという表現を、左から右に向かって進行するというイメージで捉えると、
★☆☆☆☆ 左から塗りつぶしていく
☆★★★★ 左から白くしていく
この2パターンが、記号で評価を理解しやすいでしょう。

また、印刷物に評価を書くときは、
枠だけが用意されている評価項目に対して、
塗りつぶしていくというのが多いかと思います。
そのため、
★☆☆☆☆ 左から塗りつぶしていく
というルールで、
1:★☆☆☆☆
2:★★☆☆☆
3:★★★☆☆
4:★★★★☆
5:★★★★★
となるのが、理解しやすいでしょう。

REPT 関数で指定した文字列を指定した回数繰り返す

評価が「1」なら「★」を1回繰り返す、
評価が「2」なら「★」を2回繰り返す、
という定義ができると、評価の左側の黒い星の塊を表現できます。
指定した文字列を指定した回数だけ繰り返す関数に
REPT 関数があります。

=REPT("★",1)
=REPT("★",2)
=REPT("★",3)
=REPT("★",4)
=REPT("★",5)

のように入力すると、

★★
★★★
★★★★
★★★★★

が表示されます。

右側には、評価の最大値と、★黒く塗られた星の数(評価の数値)との差分だけ白い星☆が入力されたらよいのです。

つまり、白い星部分は、
1:★☆☆☆☆ 5-1 個の白い星
2:★★☆☆☆ 5-2 個の白い星
3:★★★☆☆ 5-3 個の白い星
4:★★★★☆ 5-4 個の白い星
5:★★★★★ 5-5 個の白い星
として、REPT 関数を定義して、
黒い星の部分と白い星の部分を合体したらいい、と考えられます。

Google スプレッドシートで、評価を入力する列を作成し、
セルに1から5までの数値を入力すると、このようになります。

評価ごとに★の数を自動で表示

この数値を使用して、REPT 関数を使用して評価を黒い星★と白い星☆で表すには、このような関数を入力します。

=REPT("★",B4)&REPT("☆",5-B4)

めんどくさい!ややこしい!白い星までREPT は使わない。左から5文字取ればいいでしょ?

REPT 関数で黒い星も、白い星も定義するのって、とても複雑です。

  1. 評価の数値を入力する

  2. REPT 関数で黒い星を定義(REPT("★",評価の数値))

  3. & 演算子で文字列を結合(&)

  4. 白い星の数を計算(5-評価の数値)

  5. REPT 関数で白い星を定義(REPT("☆",5-評価の数値))

  6. 完成(=REPT("★",評価の数値)&REPT("☆",5-評価の数値))

長い!
こんな長い定義、定義した人以外が理解するのがめんどくさいです。

星の数はすべての評価5文字、って決まっているのだから、もっと簡単に定義しましょう。

まず、黒い星★を描画します。その隣に、白い星を4つ連続で入力します。
この2つの領域を合体させて、左から5文字を抽出したらいい。
と、考えることができます。

つまり、右側から5文字を抽出する以前は、
1:★☆☆☆☆| 5-1 個の白い星
2:★★☆☆☆|☆ 5-2 個の白い星
3:★★★☆☆|☆☆ 5-3 個の白い星
4:★★★★☆|☆☆☆ 5-4 個の白い星
5:★★★★★|☆☆☆☆ 5-5 個の白い星

この「|」で区切られた左側、つまり左から5文字だけを抽出すれば、
REPT 関数を何度も使用しなくてよくなるのです。

  1. 評価の数値を入力する

  2. REPT 関数で黒い星を定義(REPT("★",評価の数値))

  3. & 演算子で文字列を結合(&)

  4. 白い星4つを合成("☆☆☆☆")

  5. LEFT 関数で左から5文字を抽出(LEFT(文字列,4))

  6. 完成(=LEFT(REPT("★",評価の数値)&"☆☆☆☆",5)

白い星を5つ文字列で入力。
黒い星の数と合計し、左から5文字出力。
=LEFT("☆☆☆☆☆"&REPT("★",B4),5)

なんか、少しは複雑さがなくなった気がしませんか?

まとめ

Google Workspace 標準機能 Advent Calendar 2023の13日目の記事でした。

★や☆でわかりやすい入力ツールの作り方は、他にもあるかもしれませんね。
他のやり方でもきっと解説します。
同じ1つのことを実現しようにも、たくさんのやり方があります。

大事なのは、自分を含め運用する人が、実装された内容を理解できて、別のところでも活用できたり、運用の変更に際しても自分の力で変更できたり、変更を考察できるような作り方をすることです。

Google スプレッドシートの関数に限らず、さまざまなシステムの標準機能の理解を深め、難しすぎなくてみんなで生産性を高められるような業務ツールを作っていきましょう。

Google Workspace 標準機能 Advent Calendar 2023のご参加者さん、お待ちしています。

25日目の記事のネタとしてアンケートにご協力ください

25日目の記事では、Google フォームの効率的な編集の仕方、集計データの便利な使い方などを解説します。読んでいただいた記事の満足度や、どのアプリケーションの記事があったらいい、などの数秒で終わるアンケートを作成しました。

この記事が面白かったら、ぜひ、ご協力ください。
面白くなかったら、こうやったほうがいいよ、というのをぜひアンケートでお伝えください。

この記事からの回答画面はこちら

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