ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Excel(エクセル)活用コミュの写真注文の集計と配布

  • mixiチェック
  • このエントリーをはてなブックマークに追加
見ていただいてありがとうございます。
今年、幼稚園で写真の係になりまして、例年、手作業だった集計等をラク
したくなりました。(今時手作業というのも、、、)

みなさまよろしくお願いいたします。詳細は次の通りです。





対象は60名で200枚です。

sheet1は注文票を元に、列ごとに名前と注文番号を入力しました。
(同じ番号で2枚以上の申し込みはありません)

   A            B
1 浦島 太郎    花沢 花子
2   1            2
3   3            3


sheet2はA列に1〜200までの写真番号、B列にはCOUNTIFを使い
番号ごとの枚数を出せるようにしました。


これで焼き増しまでの準備はできたのですが、
配布の際、写真番号ごとに注文者がわかれば便利だと思いました。
私の能力ではもう限界でして、是非皆さまの知恵を拝借できれば
と存じます。


コメント(8)

Sheet1のように注文者名が延々と列方向に伸びて構わないのでしたら、
決してスマートとは言えませんが、とりあえず思いつきました。

Sheet2を添付画像のようにA列:写真番号、B列:注文枚数、C列以降注文者名、
また、1行目は見出し行とし、2行目以降に集計結果を格納する例です。

注文枚数は、
 B2=COUNTIF(Sheet1!A$2:BJ$201, A2)
とし、これをB201までコピー。
(式の意味)
 ・注文表のSheet1のA2からBJ201の領域から、番号がSheet2のA列の
  写真番号と一致するセルの数を返す。

注文者名は、
 C2=IF(ISERROR(VLOOKUP($A2,Sheet1!A$2:A$201,1, FALSE)), "",Sheet1!A$1)
とし、これをBJ201までコピー。
(式の意味)
 ・注文表のA列から、写真番号と一致するセルを検索する。見つからずエラーに
  なったら空白にし、見つかればSheet1の1行目(=注文者名)を返す。


VBAを使って構わなければ、空白セルを左詰めにする事も出来ますが、
関数式での簡単な実現方法は思いつきませんでしたあせあせ(飛び散る汗)
(誰かやってくれたら嬉しいなぁ)
空白なく左詰めで表示するなら、やはりVBAでやるのが簡単だと思います

数式でやるとなると、ぱっと私が今浮かぶのは
スマートではありませんが、作業セルを使って

C2セル =IF(ISNA(MATCH($A2,Sheet1!A$2:A$201,0)),"",COLUMN(A2))
C2:BJ201までコピー又はオートフィル
BK2セル =IF(COLUMN(A2)<=COUNT($C2:$BJ2),INDEX(Sheet1!$A$1:$BJ$1,1,SMALL($C2:$BJ2,COLUMN(A2))),"")
BK2:DR201までコピー又はオートフィル

とかですかね
元データをA列:注文者名 B列:写真番号にして
(手作業でも60人ぐらいならドラッグによるセル移動とオートフィルで
簡単に出来るでしょ)

あとはピボットかければ簡単に済む話では?
をを、スマートだぁわーい(嬉しい顔)るんるん
そういう課題の本質を読み取って柔軟な発想に辿りつけない事が、目下の私の課題です。。。
Minonさん、kusakabeさん、マリ男さん、MILANOさん、
お忙しいところありがとうございます!!

サンプルまで作っていただいて感激しております。

久々に勉強ということで、色んなパターンで作ってみたいと思います。

>5:Minonさん

ありがとうございます。


ま、沖縄かどっかの学校のクサレ講師もどきみたいに、回答を開示せずに駄文を
並べてる輩とは本質が違いますので(笑)(^o^)
2
目の前にある課題解決にはあまり役立たないのかもしれませんが、データを蓄積する時の基本の考え方ですね、これは。

今後のために、という意味合いなんでしょうね。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Excel(エクセル)活用 更新情報

Excel(エクセル)活用のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。