グーグルフォーム・スプレッドシート備忘録GoogleフォームとGoogleスプレッドシートでなんちゃって座席表(フリーアドレス)作成方法

20231123グーグルフォーム・スプレッドシート備忘録GoogleフォームとGoogleスプレッドシートでなんちゃって座席表(フリーアドレス)作成方法

 

グーグル初心者です。
自分用のメモです。
(経験が浅いので、間違いがあるかもしれません。不具合があるかもしれません。)
(参照記事など不都合なことがありましたら、削除しますので、お願いします。)

 

先日、「フリーアドレス」というのを知った。


で、座席管理(座席表)をどうしているのか、聞いたら、
試しに「グーグルフォームとスプレッドシート」で、フリーアドレスの座席表の表示を作ったとのこと。


で、自分もできないかやってみました。「なんちゃってフリーアドレス座席表」
具体的にどんな作りなのかは知りません。
(詳しいことは聞けなかったので、以下の運用や作成方法は想像です)

GASは使ってません。


1.各座席用のQRコードを作り、スマホで読み込むと各座席要フォームが開く。
(いろんなやり方があると思います。)
(試行①フォームに「隠しデータ」みたいなのできないかと思いましたが、うまく見つからず。)
(試行②URLにパラメータを仕込むことを考え「事前入力したURL」でフォームの回答に事前に座席番号を入れておくようにしてみたり。)
→結局、各座席用のフォームを用意し、一つのスプシに連携するだけにした。
(スプシは、フォームの回答ごとに、シートを分けて連携されるので、シート=どの座席なのかが分かる。)
(↑いろんなやり方があると思います。)



2.フォームには「名前」と、「状態(利用するか・利用をやめるかの選択)」の質問を用意。
ユーザーは、座席に貼られたQRコードスマホで読み取り。
質問を入力して、送信。
(状態はなくてもいいかと思ったけど(利用するか←→利用をやめるかだけなので・・・。)
(でも前の状態に左右されない方がいいかなと状態は選択させました。)
問題点:部屋に入って、空席を探して、座るってフォームにデータを送るだけなので、空席に見えるけど、その席を既に誰かが利用中にしている場合は、上書きされてしまう。
(まあ、座席表のディスプレイで空席かどうか確認すればよいのだけれど。)
→スプシのデータをフォームに反映させるのはGASでできるかも・・・(今は考えない。汗)

 

3.連携したスプシに「座席表」のシートを用意。座席のマスを作る。
(自分は101、102、103の席を3セルずつで作成した。何マスでもいいけど)

座席表以外の空いた余白でデータの処理・・・
①フォームの結果をスプシで、受けて、各座席の回答の「タイムスタンプ」の早いものをクエリで取り出し。
②今日のデータかとか、利用するか、利用しないかでif文を作る。
部屋のレイアウトを模したエクセルシートの該当する座席に使用者の名前を表示。
(座席表のマス内に記入。①のデータを受けるようにセル番地指定)

①はこんな感じ。(各座席ごとシートのどこかにに作る)(座席分作る)
QUERY(
  'フォームの回答 1'!A:C,
  "SELECT * ORDER BY Col1 DESC LIMIT 1"
)

 

 

②はこんな感じ。(座席表のマス内に記入(数式緑色セルに入れました)。参照先は①で作ったセル番地を指定してます)
IF(AND(TEXT(F11, "yyyy/mm/dd") = TEXT(TODAY(), "yyyy/mm/dd"), H11 = "利用する"), G11, "")

 


まあ、やってみないと分からないこともありましたし、
途中、もっと違う作り方もできるなとか思ったり。
こんな風にできたらいいのにということも「素のフォーム」ではできなかったり・・・。


追記:
関係ないけど、途中、スプシをコピーしておこうとコピーした。
その影響だと思うけど連携していたたフォームも「コピー~ 」というように増えた。
注意しないとどんどん増える・・・。