• 締切済み

エクセルのシート処理のテクニックについて

10名ぐらいで日程調整するのにエクセルのシートを10名に配布しました。10個のエクセルファイルが回収されたあと集計する必要があります。全員が参加できる日程とか、8名が参加できる日程などを即座に検出する方法がないでしょうか。各自が作成するデータは日程ごとに○がついているということですが。 この処理はエクセルのシートをOHPシートのような透明なフィルムに印刷して重ね合わせて上から眺めるというような処理です。串刺しのような集計が可能になります。日程だけでなくこのような処理が手軽にできるとかなり仕事が楽になると思うのですが。 やっぱりマクロとかVBによる処理になるのでしょうか。手軽にできないかなと思っています。シートのコピペだと数字が入っているセルにブランクセルが重なってブランクになると思います。 うまいやり方があると助かるのですが、いかがでしょうか。よろしくお願いします。

みんなの回答

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.5

>各自が作成するデータは日程ごとに○がついているということですが。 この条件なら(○の個数をカウントしたいなら)COUNTA関数を利用した串刺し集計が使用できます。 すなわち集計用のブックを用意して、このブックを開いておき、回収されたブックを開き、データシートのシート名部分をCtrlキーを押しながら集計用ブックにドラッグして、シートを追加します。 このようにしてすべての対象者からのシートを挿入したブックで、たとえばそれぞれのシートのB1セルの○の数をカウントしたいなら、以下のような数式を入力し(Shiftキーを押しながらシート名部分をクリックして数式を作成するほうが簡単です)、データ方向にオートフィルコピーします。 =COUNTA(一番左のシート名:最後のシート名!B1) 実際のデータに○以外のデータが含まれているなら、集計前のデータ処理や数式に工夫が必要ですので、そのような場合は実際のデータなどを補足説明してください。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.4

>シートのコピペだと数字が入っているセルにブランクセルが重なってブランクになると思います。 >うまいやり方があると助かるのですが、いかがでしょうか。 まぁふつーにコピー貼り付けるとそうなりますが,表範囲をコピーして,形式を選んで貼り付けの「空白を無視する」にチェックして貼り付けると,既入力を上書きせずに○を重ねる(かぶせる)ことができます。

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

>うまいやり方があると助かるのですが、いかがでしょうか。 元データのサンプルを提示して頂けないとプランが立ちません。 勝手解釈で模擬データを作成して検証しました。 配布シートはシート名を対象者の名前にします。 A列は日付とし、B列に参加の可否を○×で回答してもらいます。 C列には次の式を入力しておきます。 C2=IF(A2="○",1,0) 下へA列の日付が入力された行だけコピーします。 返送されたシートを集計用ブックの末尾へ移動します。 集計用シートのA列は配布シートと同じ日付とします。 B列に回答結果の集計を串刺しで実行すれば良いでしょう。 B2=SUM(中村:川村!C2) 下へ必要数コピーすれば日付の各参加者が集計されます。 尚、各メンバーの回答一覧が必要のときはC1からL1セルへメンバーの名前(シート名)を入力し、各シートから回答結果を抽出します。 C2=INDIRECT(C$1&"!B"&ROW()) C2セルをL2までオートフィルでコピーし、そのまま下へ必要数コピーすれば回答結果の一覧ができます。

  • ryo_ky
  • ベストアンサー率47% (112/237)
回答No.2

A列に日程,B1~K2に参加者名(取りあえず10人と仮定)を入力して A2以降に1月1日,1月2日・・・と記入してあるとします. B2~K32までの範囲が○の有無が記入されたセルとすれば, L列を合計値(参加人数)として,L2に =COUNTIF(B2:K2,"○") と入力すれば,1日分の参加人数を出す事ができます. この状態でオートフィルタを入れておけば,L列のプルダウンで全員参加しているかを判断できます. もし,もう少し見やすくしたいのであれば,M2に =IF(L2=10,"全員参加","") と入力しておけばより分かり易くなるでしょう.

  • eden3616
  • ベストアンサー率65% (267/405)
回答No.1

「○」を「1」に置換してからコピーしてコピー先を右クリック 「形式を指定して貼り付け」から「加算」を選んでOKってのを人数分繰り返せば最後で合計数になりますが

関連するQ&A