• 締切済み

Googleスプレッドシートでの出欠管理

毎週行う行事の出欠管理をGooglスプレッドシートで行いたいのですが シート1に出欠の◎(チェック)をつけ、シート2に◎を付けた人のリストを出すという感じにしたいです =FILTERを使ってシート2に◎をつけた人のリストを出す事は出来たのですが 毎週の事でシート1の出欠欄の列を削除し、また後ろに次の週のを足してってするとシート2にリスト出力したい=FILTERの部分でエラーが出ます 削除した列の部分が#REFとなってしまうのですが (=FILTER('シート1'!A1:A20,'シート1'!B1:B20="◎")が列を削除すると=FILTER('シート1'!A1:A20,#REF!="◎")になってしまいます) 列を消して後ろに継ぎ足すという方法で、◎をつけた人のリストを出す事はできないでしょうか?

みんなの回答

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.5

普通に参照すると列を削除した時に 参照元がなくなるので 参照 エラーを起こします。 INDIRECTを使うくらいかなと思います。 =FILTER('シート1'!A1:A20,INDIRECT("'シート1'!B1:B20")="◎") 「◎」でなければ IMPORTRANGEと QUERY関数の組み合わせ でもいいんですが……

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.4

>列を消して後ろに継ぎ足すという方法で、◎をつけた人のリストを出す事はできないでしょうか? 「スプレットシートで計算する」という概念を知らずに「人が判断することを自動的に読み取って処理してもらえる」ものと勝手解釈しているようです。 計算の対象であるシート1のA列とB列の何れかを削除した時点でシート2の数式は計算対象が無くなるので数式が壊れてしまいます。 一旦、壊れた数式はロールバック(編集で元へ戻す)以外に修復できませんので代わりの列を継ぎ足しても元には戻せません。 シート2へ抽出したリストを値のみに置き換えて、次週のデータを採取する手法にしないと目的に合わないでしょう。 シート1で1週間分を集計して、シート2の目的セル範囲へ計算結果の値のみをコピー&ペーストで保存する方法が良いと思います。 貼付画像はSheet1で計算した結果(J2:P11)をCopyし、Sheet2の所定位置へPaste values onlyで貼り付けようとしたものです。

noname#232800
noname#232800
回答No.3

あ、ごめん。矛盾。 横軸に「名前」 縦に「予定」 それと、「他のソフト」ってカテゴリが良いと思う。

noname#232800
noname#232800
回答No.2

「消す」という行為が分かりません。 消すので、リファレンスエラーとなると思います。 縦軸に「名前」横軸に53個の「予定」 横軸は、最初固定だけど、横28、縦988が最大。確か横も縦も増やせると思うけど、20人ぐらいで良ければ・・・ んんんー 最後が xxxxx.gs でゴーストスクリプト であることは、確からしい。 これが、インタープリター形式で、変数は登場順、変数名の長さでスクリプトの速度が決まる。 大枠では、予定表を立て、Gmailで送信・・・が可能だったような。全てはヘルプに記載されてると思う。 とにかく 一度設計したら、動的に消す・・・というのは考えづらい。消さなくても良いように設計すべきだと思う。

  • tknkk7
  • ベストアンサー率11% (378/3311)
回答No.1

PEかSEへ相談:デベロッパーへ聞いて下され

関連するQ&A

  • Googleスプレッドシートでの条件式について

    Googleスプレッドシートを用いてある参加者のリストを作っています。 添付画像のような場合、「=filter(G2:G7,B2:B7="○")」とすると画像下記の通りその曜日で○の人だけ抽出できました。 しかし、コメント欄は実際には長いため全曜日をあらかじめ作るとなると結構なスペースを取ってしまいます。 そこで画像の赤い部分の2項をプルダウンで選択することで 1、選択した曜日で○になっている人をリストで抽出し 2、選択した「コメント1orコメント2」によって該当する人のコメントを抽出 ということをやりたいのですが可能でしょうか? 選択した曜日で「=filter(G2:G7,B2:B7="○")」のB2:B7の部分を変更し、 選択したコメントで「=filter(G2:G7,B2:B7="○")」G2:G7の部分を変更したいという状態です。 一つのスペースで複数の曜日の抽出ができる場合、他の方法でも可能です。 分かる方いらっしゃいましたら回答をお願いします。

  • 出欠簿

    A列に出欠(○・×)B列に会社名・C列に出席人数・D列に出席者名となっています。このデータでA列に○の入っている会社名と出席者名を他のシートの出席者名簿に転記したいのですが、いい方法はありませんか?教えてください。 このデータの会社名は他のBookの案内状送付リストからリンクされています。

  • グーグルスプレッドシートについて

    お世話になります。 最近グーグルスプレッドシートの列の幅が突然倍になっていたのですが、元にもどす方法はありますか? 今のところA B Cと書いてあるところをドラッグして幅を狭くしているのですが、幅がばらばらで見栄えが悪いです。 どなたか列の幅を設定する方法を知っていたら教えてください。宜しくお願いします。

  • Googleスプレッドシートフィルター結果の編集

    Googleスプレッドシートにおいて、 Aというシートにフィルターをかけて、Bのシートに結果を出力するように関数を入れました。 =FILTER(A!A6:F300,A!D6:D300="△") という関数をBシートに入力し、"△"を含む行の結果をAシートから引っ張っています。 このBシートに表示されたフィルター結果のセルの文字を編集しようとすると、 「エラー:配列結果は**(編集元のセル番号)のデータを上書きするため、展開されませんでした。」 と出て、上書きできません。 元データを変更させないために、こういったエラーになっているとは思うのですが、 このフィルター結果内で編集を行い、元データにも同期される、ということは可能なのでしょうか。 それとも、そもそもフィルターというのは閲覧するもので、編集するものではないのでしょうか。 ・Googleスプレッドシートのフィルタ結果内で文字の編集は可能なのか ・できないとしたら、普通はどんな代替案を使うのでしょうか すみませんがご存じの方があれば、教えていただけないでしょうか。

  • エクセルでの出欠簿

    A列に出欠(○・×)B列に会社名・C列に出席人数・D列に出席者名となっています。このデータでA列に○の入っている会社名と出席者名を他のシートの出席者名簿に転記したいのですが、いい方法はありませんか?教えてください。 このデータの会社名は他のBookの案内状送付リストからリンクされています。

  • Googleスプレッドシートの自動計算

    Googleのスプレッドシートで自動計算をしたいです。 例えば A列の1行から順番に、100,200,300……と続いていくとすると、 B列の同じ行に1.25倍で自動入力されて、125,250,375……と表示されるようにできるのでしょうか?

  • Googlスプレッドシートのゴルフスコア管理の件で

    恐れ入ります、昨日Googlスプレッドシートの件で質問させていただいているめぐみと申します。 私の質問や回答の仕方で大変ご迷惑をおかけしています。 実際にしたいことをGooglスプレッドシートで作成しました(編集可で共有しました)。 https://docs.google.com/spreadsheets/d/1lDSheilFLCour7o-DT8cb64bcxrkjXqGH_i1HzWjH5M/edit?usp=sharing 知りたいところだけ”赤字”にしました。 以下、(1)と(2)のことを知りたいと考えています。 [A0001]シートA2,B2,C2:K2の部分を自分で入力しています(「ゴルフ場」は[Reference]シートから参照してプルダウンにしています)。 その後にそれ以降の「パー」の部分(L2:T2)とそれ以降を自動で?もしくは何かボタンを押すと自動で計算してほしいと考えています。 「実績」以降は計算式を埋め込んでおけばいいと思うので、実際に知りたいことは、 (1)->B2:K3のセルに自分で入力します。   入力後に何かボタンを押すと   B2とB3が何かをReferenceシートから探して、そのパースコア(9つ×2)をL2:T2とL3:T3に書き込まれるようにしたいです。 (2)新しいデータは、2~3行目に追加していくようにしたいです。  2行目と3行目を選択して「2行を上に挿入」という「新規作成ボタン」が作りたいです。  ※手作業でしたところ既存の2行目と3行目の計算式は、新規に作成された2行目と3行目に引き継がれることは確認できました。 以上です。 昨日はわかりにくい質問をしてしまい、それにも関わらず多くの方に親切にご回答頂きありがとうございました。 また、貴重なお時間を浪費させてしまいまして大変申し訳ありませんでした。 めぐみ

  • 【エクセル(Googleスプレッドシート)】

    エクセル初心者になります。 つたない質問になってしまい申し訳ないですが 下記に関してご指導の程よろしくお願い致します。 下記の例の様にエクセル(Googleスプレッドシート)で 日付、日付以外、空白がある表に対して以下の結果を求めるにはどのような関数を使用すれば宜しいでしょうか? ●結果A A列、B列どちらかに日付や文字が打たれて、C列が空白のもの ●結果B A列、B列で両方に日付や文字が打たれて、C列が空白のもの ※日付は仕様上10/2といった通常の日付表記と、日付+アンダーバー数字といった打ち方をします。 ※空白は分かりやすく空と表記しています。 ※文字列は仮に"sumi"と"-"を打っていますが、様々なものがあります。 例 ================================ A列    B列    C列 10/2    10/3_2    空 10/1_2   10/1     10/2 空     10/2    空 空     空     空 空     10/5    10/5 10/1    空     空 sumi    空     10/2 -      10/4    10/4 ================================== ●結果A(A列、B列どちらかに日付や文字が打たれて、C列が空白のもの) 3 ●結果B(A列、B列で両方に日付や文字が打たれて、C列が空白のもの) 1 恐れ入りますが、何卒よろしくお願い致します。

  • GooglApps スプレッドシートの関数について

    GooglApps スプレッドシートの関数について質問があります。 AワークブックのスプレッドシートのA1セルの値を、 BワークブックのスプレッドシートのA行を検索して、 AワークブックのスプレッドシートのA1セルと同一の値の行のB列の値を、 AワークブックのスプレッドシートのB1セルへセットしたいのですが、どのようにすれば良いのでしょうか? ご教示、お願いします。

  • GAS(Googleスプレッドシート)について

    お世話になります。 今回は下記の内容について宜しくお願い致します。 シートAの表にシートBのデータを入れ込みたい時の構文が分かりません。 (そもそも理解していないのが問題ではあるのですが。。) また、代入された値(シートAに代入されたシートBの値)を 「選んだシートBの列に上書きしたい」です。 1.シートBはレコードでデータを保持 2.シートBの選んだレコード行のデータをシートAの所定の場所に代入  例)シートBのA@セルのデータはシートAのB2    シートBのB@セルのデータはシートAのH5 など。    シートAは表になっているので、シートBのデータはシートAの所定の    セルに代入。(場所は不変です) 3.シートAに代入された値に変更を加えた場合、シートBの選んだレコード位置   に上書きで代入をしたい。(入れ込みたい) 以上です。 宜しくお願い致します。

専門家に質問してみよう