アプリ版:「スタンプのみでお礼する」機能のリリースについて

   EXCLE2007にて
下記表のように名簿から出席者のみの表を作成したのです。
     
     1 会員1 出         1 会員1
     2 会員2            2 会員5
     3 会員3            3 会員6
     4 会員4            4 会員9
     5 会員5 出
     6 会員6 出
     7 会員7
     8 会員8
     9 会員9 出
    10 会員10

        つたない説明ですがよろしくお願いたします。

A 回答 (5件)

ご希望のデータを抽出したいなら、フィルタの機能を利用されることをお勧めします。



「データ」「フィルタ」で出欠の欄の▼をクリックして「出」だけにチェックを入れます。

該当データが抽出された状態でデータ範囲をそのままコピーし、新規シートに貼り付けます。


もし関数で表示させたいのであれば(抽出対象が文字列の場合)、配列数式がすでに提案されていますが、以下のような数式の方がデータ位置を変更する必要が無いのでわかりよいかもしれません。

=INDEX(Sheet1!A:A,SMALL(INDEX((Sheet1!$B$2:$B$100<>"")*1000+ROW($B$2:$B$100),),ROW(A1)))&""
    • good
    • 4
この回答へのお礼

     
      みなさんに色々なアドバイス頂きありがとうございます、
       どなたからのやり方も自分に取ったらベストアンサーです、
       いろんな関数の使い方を知らない自分には宝の持ち腐れ状態です。
        これからもよろしくお願いいたします。
        

お礼日時:2010/11/25 11:30

 


並び替えの方法ですか....................:-)
元の状態で並び替えのアイコンを押してください。
 
「会員名簿から出席者のみ一覧表の作成」の回答画像5
    • good
    • 3
この回答へのお礼

お礼が遅くなり申し訳ありません。
    アイコンクイックでできるのですね。
        初歩的なことでした。
               有難うございます。

お礼日時:2010/11/25 11:21

一応、作業列案も紹介しておきます。


       A   B   C
     1 会員1 出         1 会員1
     2 会員2            2 会員5
     3 会員3            3 会員6
     4 会員4            4 会員9
     5 会員5 出
     6 会員6 出
     7 会員7
     8 会員8
     9 会員9 出
    10 会員10
C列に =IF(B1="出",ROW(),"")
と入れて下までコピーします。
出席者の右に その行番号が出ます。

抽出するセルには
=INDEX(SHEET1!A:A,SMALL(SHEET1!C:C,ROW(A1)))
と入れて下へコピーしてみてください。
エラー処理はしていませんが、式の意味を理解するのに便利かと思います。
関数を説明しておきますが

ROW(A1) は単にそのセル(A1)の行番号ですので 1です
下へコピーすると
ROW(A2) となるので 2 、3・・と数字を増やしておくためのものです。
つまり
1行目は =INDEX(SHEET1!A:A,SMALL(SHEET1!C:C,1))
1行目は =INDEX(SHEET1!A:A,SMALL(SHEET1!C:C,2))
1行目は =INDEX(SHEET1!A:A,SMALL(SHEET1!C:C,3))
・・・ということです。
更に SMALL(SHEET1!C:C,1)) の部分を表示してみるとわかりやすいです。
=SMALL(SHEET1!C:C,ROW(A1))
と入れて下までコピーしてみてください。
参加者の行の番号が上から順にでるはずです。
この結果を利用して 名前の部分をINDEX関数で表示しています。
エラー処理は 他の方を参考にIF文を最初に入れます。
がんばっててください。
ここで出来た式を 作業列の部分まで取り込んで 作業列なしで実行しようとすると
Tom04さんの配列関数となります。
    • good
    • 1
この回答へのお礼

          
      みなさんに色々なアドバイス頂きありがとうございます、
       どなたからのやり方も自分に取ったらベストアンサーです、
       いろんな関数の使い方を知らない自分には宝の持ち腐れ状態です。
        これからもよろしくお願いいたします。

お礼日時:2010/11/25 11:30

こんばんは!


色々方法はあるかと思いますが・・・
一例です。

↓の画像でSheet2のA2セルに
=IF(COUNTIF(Sheet1!$B$2:$B$1000,"出")<ROW(A1),"",INDEX(Sheet1!$A$2:$A$1000,SMALL(IF(Sheet1!$B$2:$B$1000="出",ROW($A$1:$A$999)),ROW(A1))))
これは配列数式になってしまいますので、
A2セルにコピー&ペーストしただけではちゃんと表示されないと思います。
A2セルに貼り付け後、F2キーを押す、またはA2セルをダブルクリック、または数式バー内で一度クリックします。
編集可能になりますので、Shift+Ctrlキーを押しながらEnterキーで確定。
数式の前後に{ }マークが入り配列数式になります。

このA2セルをオートフィルで下へコピーすると
画像のような感じになります。

参考になれば良いのですが。m(__)m
「会員名簿から出席者のみ一覧表の作成」の回答画像2
    • good
    • 0
この回答へのお礼

   
      tom04様
      早々のアドバイス有難うございます。
      わー関数が8ケも複合されてますね
       、自分はその中でIF,COUNTIF文しか使った事がありません。
       アドバイスと関数辞典を見ながら悪戦苦闘し自分なりに会得したいとおもいます。
          有難うございます。
       

お礼日時:2010/11/23 09:11

 


「出」の列で並びかえれば出席した会員だけが集まるのでその範囲を別のシートにコピーします。

並び替えた状態
  
「会員名簿から出席者のみ一覧表の作成」の回答画像1
    • good
    • 0
この回答へのお礼

       V4330様    
   早速のアドバイス有難うございます。
    できれば並び替えの方法を教えて頂ければ幸いですが
        わからないのでよろしくお願いいたします。

お礼日時:2010/11/23 09:01

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A