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

エクセル初心者です。
エクセルでに次のような表を作っております。
(Sheet1)
担当 会社 郵便番号 住所
菊地 A社 0000000 ○○○○
菊地 B社 0000000 ○○○○
菊地 C社 0000000 ○○○○
田中 D社 0000000 ○○○○
田中 E社 0000000 ○○○○
山本 F社 0000000 ○○○○
山本 G社 0000000 ○○○○
       ・
       ・
       ・
と800件くらいあるのですが、
これを
別シート(Sheet2)で名前を菊地と入力すると菊地のデータが一覧で出るようにしたいのですが、どうしたらよいでしょうか。
できれば、マクロを使わずに関数でやりたいです。
VLOOKUPかな?と思い、いろいろ調べたのですが、抽出したいデータが複数あるので、悩んでおります。

すみませんが、どなたかご指導お願い致します。

A 回答 (6件)

式を修正しました。

表はA列からD列までとしています。式をB1に入れた後、下と右方向へオートフィルしてください。

=INDEX(Sheet1!$A$1:D$1010,IF(COUNTIF(Sheet1!$A$1:$A$1000,$A$1)>=ROW(),MATCH($A$1,Sheet1!$A$1:$A$1000,0)+ROW(A1)-1,1010),COLUMN()-1)

該当データが無い場合は、各列の1010行のセルの内容が表示されます。0を消す方法を#4に書きましたが、データ中に0があることが考えられる場合は、スペースを使った方法の方がいいかもしれません。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

おお!できました!感謝です!
とりあえずコピペしてやっただけなんですが、これから式のほうも、研究させていただきます☆
わがままにつきあっていただきありがとうございました。

お礼日時:2003/11/15 14:43

#4です。

m(__)m

すみません。#4のは、名前しか抽出しませんね。寝起きの頭で考えていて、ボケてました。ああ、恥ずかしい。
    • good
    • 0

表はあらかじめ担当名をキーに、ソートしてあるものとします。

また、表の最終行は1000行としています。

Sheet2のA1に検索する名前を入力するものとして、
B1に以下の式を入れて、下へ必要分だけオートフィルしてください。

=INDEX(Sheet1!$A$1:$A$1010,IF(COUNTIF(Sheet1!$A$1:$A$1000,$A$1)>=ROW(),MATCH($A$1,Sheet1!$A$1:$A$1000,0)+ROW()-1,1010),0)

名前が入らないセルには0が表示されますが、この0はSheet1のA1010の内容を表しています。
0を表示したくない場合は、A1010にスペースを入力するか、式を入れたセルの書式の表示形式を、ユーザー定義で#にしてください。
    • good
    • 0

関数は、条件に合った行の抜き出しが不得手です。


だからマクロはいや、操作がいやというのは考えを改めるべきと思います。
本質問コーナーで関数式に拘る方が多いのですが、関数式の得手不得手を考えないと。
関数の回答を上げますが、正直のところ技巧的だと思います。
(データ)サンプルとして、Sheet2のA1:B11に
東田大分市
大川別府市
菊地下関市
大川防府市
三田三原市
河野新見市
大川倉敷市
山田姫路市
西野明石市
浜野尼崎市
大川長岡京市
(質問では、同名は同一営業マンのケースですが、変えてますがよろしく)
(条件)
探す人の名前をSheet3のA1セルに「大川」と入れます。
(関数式)
Sheet3の
B1セルに=IF(Sheet2!A1=$A$1,1,"")といれB11(最下行)まで複写します。
C1セルに=COUNT($B$1:B1)といれ最下行まで複写します。
D1セルに=IF(ROW()<MAX($C$1:$C$11)+1,OFFSET(Sheet2!$A$1,MATCH(ROW(),$C$1:$C$11,0)-1,0),"")
といれ最下行まで複写します。
E1セルに=IF(ROW()<MAX($C$1:$C$11)+1,OFFSET(Sheet2!$A$1,MATCH(ROW(),$C$1:$C$11,0)-1,1),"")
といれ最下行まで複写します。(D列と1字違いだけです。)
D,E列のような式をFG・・列に項目(フィールド)数だけ作ります。
(結果)Sheet3のD1:E4に
大川別府市
大川防府市
大川倉敷市
大川長岡京市
(その他)
Sheet3のBとC列は(楽屋裏のデータで)邪魔なので、見え難いX、Y列などに持っていくのがよいかも。
上記を理解し、自分のケースではどこをどう変えるべきか
を会得してください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

>だからマクロはいや、操作がいやというのは考えを改めるべきと思います。
すみません。色々わけありでして、このデータを私本人が管理するのであれば、マクロでも操作でも問題ないのですが、上からとにかく使いやすくしろとのことで。。
こんなわがままにつき合わせて申し訳ありません。m(_ _)m

これから回答の方試してみます。
まずは、御礼だけ先にさせていただきます。

お礼日時:2003/11/15 14:32

[データ]->[フィルタ]->[フィルタオプション]で、抽出先をSheet2の任意の場所、リスト範囲をリスト全体、検索条件範囲をSheet2の任意の場所(上の方がよい)二設定します。



抽出条件は、
担当 会社 郵便番号 住所
菊地

のようにします。
AND条件のときは、同じ行に
OR条件のときは、別の行に
条件を設定します。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

すみません。できればメニューの機能などは使わずに、別シートに名前を入力すると一覧が表示されるというような設定にしたいのですが。。

お礼日時:2003/11/15 10:56

同じシートになりますが、フィルターを使えば菊地分だけ抽出できますけど、それはもうご存知でしたか?



http://homepage1.nifty.com/kenzo30/ex_kisosyo/ex …

参考URL:http://homepage1.nifty.com/kenzo30/ex_kisosyo/ex …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

フィルターは知りませんでした(^^;
しかし、やはりメニューの機能などは使わずに、別シートに名前を入力すると一覧が表示されるというような設定にしたいのですが。。

お礼日時:2003/11/15 10:55

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