- ベストアンサー
エクセル 選択候補に属性を付け、優先的に表示させたいのですが
お世話になります。エクセル2002を利用しています。 シートを複数利用し、会員が施設を利用する際の利用券を発行しようとしています。 シート「名簿」にはその3行目以降に会員情報(約400人今後増員します)があり、F列にカナ氏名・GHI列に住所・J列に氏名・K列に年齢・L列に性別が入っています。 シート「施設」にはその5行目以降に施設名(約300施設今後増加します)があり、A列にカナ名・B列に漢字名が入っています。 VBAにより、シート「会員」の該当者の「行」を右クリックすると個人情報がシート「印刷」の指定位置とシート「施設」のセルC2にコピーされ、シート「施設」にシートチェンジするようになっています。 シート「施設」から利用施設を選択し、右クリックすると施設名がシート「印刷」の指定位置にコピーされ、シート「印刷」が印刷され、シート「管理簿」に発行日(印刷日)と利用施設と利用者が上の行から順にコピーされるようになっています。 お伺いしたいのは、 1.利用者を選択したら、シート「施設」の5行目以降に表示される施設情報が、過去に利用したものを優先的に上の行に表示し、そうでないものはそれらの下の行にする。 考えたのは、施設名を選ぶと同シートのセルC2に表示されている利用者氏名をその施設名のD列から順に右へコピーしていき、その施設の属性とすることです。(参考書の.End(xlToLeft).Offset(1).Valueとかを使うのかと思いましたが、わかりません)さらに、同人物が同じ行にコピーされた場合は、コピーしないといいのです。 2.シート「施設」が開かれるときに、利用者が選択されているC3の情報から、該当者が記録されている行を上に表示させるようにしたいのです。 それが「並べ替え」や「コピー」でするべきなのかはわかりません。 文字数オーバーで詳しく説明できません。よろしくお願いいたします。
- みんなの回答 (13)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (12)
- onlyrom
- ベストアンサー率59% (228/384)
- cafe_au_lait
- ベストアンサー率51% (143/276)
- 1
- 2
お礼
すごいです。 もう完璧です。 大変ありがとうございました。完全に作動します。 こちらは、Win2000 で Excel2002 を使用しています。 B列(備考1)は、テキストを入力していても0か1に書き換えられるようになっていますので、列のタイトルを「ソートキー」として使用することにしました。 ここまで、懇切丁寧に教えていただき、泣けるほど嬉しいです。 いただいたコードを勉強し、せめてこの意味を他人に説明できるようにはしたいと思います。 そのときは、このサイトでonlyrom様にどれだけ親切に教えていただいたかを話したいと思います。 本当に本当にありがとうございました。大感激です。