プロが教えるわが家の防犯対策術!

「Google スプレッドシート」に関する質問です。

以下の機能を実装するためにはどうすればよいでしょうか。

以下の規則,条件で、管理用番号を自動入力させる方法

B列のプルダウンメニューからXが選択されたときに、A列にaabbccddを入力します。
A列に入力された文字列は、後にB列のプルダウンメニューがX以外に変更されても残り続けます。

aaは、自動入力された時点での西暦の下2桁(2022年の場合aa=22)
bbは、自動入力された時点での月(2月の場合bb=02)
ccは、自動入力された時点での日(13日の場合cc=13)
ddは、その日(24時間でリセット)に入力された順番(その日のうちにB列でXを3回目に選択する場合dd=03)

上記の例でA列に入力される数値は「22021303」となります。

よろしくお願いいたします。

A 回答 (1件)

こんにちは



スプレッドシートは使っていないので、具体的にはわかりませんけれど・・

編集時のイベント(onEdit または onChange)で、処理すれば実装できると思われます。
https://developers.google.com/apps-script/guides …

「aabbccdd」の日付部分はDate関数で取得可能でしょう。
「順番」の部分に関してはどこかに記録しておく必要があるかもしれません。
(シート内のどこかあるいはその他)
日付と併せて記録しておいて、日付が異なっていたらリセットし、同じなら順番をインクリメントすれば宜しいでしょう。

あるいは、記録するのが嫌な場合は、A列を調べて、同じ日付の値の数を数えて+1するとか。
ただし、こちらの方法ではシートの状況に依存しますので、A列の値をその後編集されてしまったりすると、必ずしも正しい(?)順番にはならない可能性がありますね。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!

onEditとonChangeについて調べてみます。

お礼日時:2022/02/15 20:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!