いつも勉強させて頂いております。
表題の詳細ですが、
スプレッドシートで列に日付、人名、商品コードなどを入力しております。
そこから、日付&人名の頭文字のアルファベット&その日の人名の出現回数を関数で判断させて管理番号を自動で作っています。
| 管理番号 | 日付 | 人名 | 商品 |
|---|---|---|---|
| 20200101-s-01 | 20200101 | 鈴木 | a-kkk2 |
| 20200101-s-02 | 20200101 | 鈴木 | v-154845 |
| 20200101-y-01 | 20200101 | 山下 | v-154888 |
| 20200101-s-03 | 20200101 | 鈴木 | AAA-AAA |
| 20200101-y-02 | 20200101 | 鈴木 | BBB-BBB |
このような表の場合、その日の出現回数が2回以上の場合、行削除や行挿入を行うと、連番がずれてしまいます。
例えば、上記表の1行目を削除すると出現回数が変わるので管理番号【20200101-s-02】が【20200101-s-01】と1つ下がってしまいます。
一度決まった管理番号を固定にしたいのですが、出現回数をとっている以上自動では無理だと思います。
しかし、一度コピーして値貼付けという方法も避けたいと思っております。
かなり矛盾したことを質問しているのは承知の上ですが
何かいい方法はないでしょうか?
管理番号の仕組み自体を変更しても良いとは思っていますが、
初めから00001などの固定連番を振るのではなく、あくまで管理番号以外の列が入力されたときに
入力された値から作りたいと思っております。
アドバイスをよろしくお願い致します。
もう一つ表を作り、出現回数を別でカウントしておけばいいのではないでしょうか。スプレッドシートなら容易いと思います。
もう1つ表を作るとなると行挿入や行削除削除されても揺るがないように作成する必要があると思うので、importrangeやquery以外で表を別途転記する必要があると思いますが、手動であればはやりオペレーションミスが起こりうるかと思います。上記の方法以外で入力している表を別の場所に引っ張るにはGAS以外で方法はありますでしょうか?
そういう表ではなく、人名と出現回数を記録するだけの表です。たとえばそこに佐藤さんが 2 とあれば、次に佐藤さんが出たときにそれをインクリメントして 3 にし、管理番号を 3 で作ります。この管理番号は一度作ればもう更新はしません。
出現回数のみを記載する表ですね。出現回数を反映させる方法はGASでということでしょうか?
そうなります。
回答2件
あなたの回答
tips
プレビュー