• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルで、抽出・表示に困ってます。(Q2092626の続き))

エクセルで抽出・表示に困ってます

このQ&Aのポイント
  • エクセルでシート1にリストがあり、担当地区をクリックまたは入力すると該当する施設名が表示される方法はあるか
  • シート1の地区情報を基に、関連する施設名を抽出・表示する方法はあるか
  • 施設名と担当地区のリストがあるエクセルで、地区をクリックして該当する施設名を表示する方法はあるか

質問者が選んだベストアンサー

  • ベストアンサー
  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.3

シート1は、4行まで、シート2は100行までとしてコメント表示してみました。 For 行1 = 2 To 4 CM = "" Range("C" & 行1).AddComment OM = Cells(行1, 3) Sheets("sheet2").Select For 行2 = 2 To 100 If InStr(1, Cells(行2, 2), OM) > 0 Then CM = CM + Cells(行2, 1) & " " & Cells(行2, 2) & " " & Cells(行2, 3) & Chr(10) End If Next Sheets("sheet1").Select Range("C" & 行1).Comment.Text Text:=CM Next

mr-boo
質問者

補足

toshi_2000さん、御回答有難うございます。 コメントに入れるマクロがあるのですね。 すごく勉強になりました。 有難うございます。 継いでと言っては、申し訳ないのですが、 もう一つ、教えてもらえないでしょうか? このマクロでは、コメントの枠のサイズが小さく、1施設のデータが2行から3行になり、見にくいので、コメントの枠を大きめにするマクロは挿入できないでしょうか? 宜しくお願いします。

その他の回答 (4)

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

No.3です。以下でどうでしょう。 Range("C" & 行1).Comment.Text Text:=CM Range("C" & 行1).Comment.Shape.Width = 200(この行追加)

mr-boo
質問者

お礼

toshi_2000さん、御回答有難うございました。 コメントが、ぐっと見やすくなりました。 抽出・表示までは出来ましたが、選択(取捨選択)までは、なかなか無理な事がわかりました。 本当に、ご教授有難うございました。 自分なりに勉強していき、難題にぶつかり、質問させていただく事もあるかと思いますが、その時は、また宜しくお願いします。

noname#37676
noname#37676
回答No.4

いまいち、質問の意図が見えないのですが・・・、 >例えば、シート1の地区のC4セルをクリックする事で、 >このように、クリックの横に抽出・表示したいのですが、 もし、抽出データを確認したいだけなら、いっそのこと、「シート2」でオートフィルタを使ってはいかがですか? ([データ][フィルタ][オートフィルタ]) 手入力ですが、B1セル「住所」で [▼](オプション) 「千代田」[を含む▼] [●AND] 「大正」[を含む▼]でデータが表示されますよ。 オートフィルタの設定をしておけば、 >他のエクセルに慣れてないメンバーにも伝えやすい 抽出条件の入力を教えてあげるだけで済むのでは??

mr-boo
質問者

お礼

roadhさん、御回答有難うございます。 [オートフィルタ]-[オプション]を使う事も考えてみます。 私としては、シート1とシート2が連携して、シート1で表示が出来ると楽だと思って、質問させてもらいました。 質問の意図が分かりにくくてすいませんでした。

noname#46899
noname#46899
回答No.2

何を聞きたいのかさっぱりわかりません。 普通、こういうものだと5行目以降にも次のデータを入力するんだと思いますが、これだと5行目、6行目のD、F、J列にすでにデータが入っていることになりませんか?5,6行目のA、B、Cにはデータを入れず、7行目に次の担当者を入れるということでしょうか。 それともD4セルの中に    B工場    千代田市大正地区殿町33     55-6789    F会館    千代田市大正地区宮川町32    27-3469    K商店    千代田市大正地区西町55     67-3146 を全部入れたいのでしょうか。 あるいは選択リストのようなものを表示させたいのでしょうか。 どれをやるとしても、かなり高度なVisual Basicによる処理が必要でしょう。プロに頼んだほうが無難です。 参考までに、選択リストのつもりなら常識的にはAccessなどのデータベースソフトでやるのが普通でしょう。Excelでやるならリスト表示のような複雑なことはさせず、シート2の各施設に固有のIDをつけてLookup関数で表示させるのが一般的な処理方法だと思います。 また、 >シート2の住所録を作成しない状態でも、可能な方法があれば というのはなにが「可能」なんでしょうか。存在しないデータを表示させることはできませんけど? それともシート2に変わるものがないかということでしょうか。それなら電話帳ソフトとかを使うのが手っ取り早いと思いますが。 http://ascii24.com/news/i/soft/article/2003/04/28/643325-000.html

mr-boo
質問者

補足

kitchanさん、分かりにくくてすいません。 シート1のD・E・F列は、空欄にしておき、そこの部分に、シート2を使用した場合、シート2から抽出された該当データリストが表示されるという意味です。 そして、表示されたデータリストから、必要施設名データ(複数件)が残せる方法は無いでしょうか? その場合、選択セルの下に(複数)行が挿入されると助かるのですが・・・ データベースソフトのアクセスで行った方が、良いのは分かってはいるのですが、私や他のメンバーが少しは慣れているエクセルで行えたらと思って質問させていただきました。 また、シート2に住所録を作成しない状態でって言うのは、シート1の地区名を選択した時に、コメントのように地区内の施設名リストが表示される方法は無いだろうか?という意味でした。本当に分かりにくい質問ですいません。 本当に、難しい質問ですいませんが、宜しくお願いします。

  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.1

地区をクリックするとそのセルの横に住所録がコピーされるということでしょうか。 また、該当が複数あった場合は、どういう動作にするのでしょうか。 いづれにしましてもマクロを使用することになります。

mr-boo
質問者

補足

toshi_2000さん、早速の回答有難うございます。 >地区をクリックするとそのセルの横に住所録がコピーされるということでしょうか。 ・・・抽出されたリストが、セルの横に表示され >該当が複数あった場合は、どういう動作にするのでしょうか。 ・・・抽出されたリストから、必要な施設の住所録を、残して、不必要な物は消去できるようになるとベストなのですが、 >いづれにしましてもマクロを使用することになります。 ・・・どのようなマクロを使用すれば、出来るでしょうか? 教えていただけませんか? 宜しくお願いします。

関連するQ&A