あなたの映画力を試せる!POPLETA映画検定(無料) >>

windowsXPとエクセル2002を使ってますが、エクセルで管理している名簿(住所録)から、共通のキーワードを使ってまとめて検索・抽出する、良い方法はありませんか?
例えば宛名が「パン工場」「チーズ工場」「ジャム工場」のようにある場合、キーワードを「工場」というくくりだけでデータを抽出したいのです。
因みに「フィルターオプションの設定」だと、同一セルの中に他の語彙や文字が入っていると、除外されてしまいます。
例)キーワード「すし」⇒「すし屋」×(抽出されず)、といったような感じです。「Ctrl+F」ですと一つ一つ拾わないといけないので、大容量のデータですと、全て見つけ出すのに大変な労力と時間が掛かってしまいます。上記以外で何か良い方法はないでしょうか?よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

フィルタオプションで「工場」「を含む」とするだけで良さそうな気がしますが……。


どんな操作をされたのでしょうか?
    • good
    • 1
この回答へのお礼

おかげさまでできました。ありがとうございました。

お礼日時:2008/10/07 13:53

ご参考



「フィルタオプション徹底解説!」
http://allabout.co.jp/computer/msexcel/closeup/C …

「43-1 フィルタオプション(いろいろな検索条件の指定方法)」
http://www11.plala.or.jp/koma_Excel/contents6/ma …

「Excel フィルタ オプション」の検索結果
http://www.google.co.jp/search?hl=ja&lr=&q=Excel …
    • good
    • 0
この回答へのお礼

おかげさまでできました。ありがとうございました。

お礼日時:2008/10/07 13:55

いったん、オートフィルターを設定して


右の▽からオプション
抽出条件の指定で 工場 を含む(或いは で終わる)
でOKしてみてダメなのでしょうか。
    • good
    • 0
この回答へのお礼

おかげさまでできました。ありがとうございます。

お礼日時:2008/10/07 13:52

データ→フィルタ→フィルタオプションの設定では、*工場*とワイルドカード(半角のアスタリスク)を使用すれば抽出できますのでお試し下さい。

    • good
    • 0
この回答へのお礼

おかげさまでできました。ありがとうございました。

お礼日時:2008/10/07 13:54

このQ&Aに関連する人気のQ&A

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

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセルで複数の条件を抽出し自動的に別シートに反映する方法を教えてください。

こんばんは。教えてください。

元データ(sheet1)を更新するたび
2つの条件にあったデータを
別シートに自動的に抽出したいので
適した関数がありましたら教えてください。



◇シート1◇ ※元データ
 A      B     C     D     F
1 氏名 役職 部署 年齢 移動時期     
2 山田 社員 開発 45  未調整
3 田中 社員 人事 42  4/1~
4 鈴木 派遣 企画 30  
5 高橋 役員 人事 50  未調整
6 坂野 社員 企画 33  未調整  
7 井上 派遣 企画 29  未調整

◇シート2◇ ※部署が人事で移動時期が未調整の人のみ抽出
 A      B     C     D    F
1 氏名 役職 部署 年齢 移動時期 
2 高橋 役員 人事 50  未調整


補足
・元データ(シート1)はこれからもデータを追加するので
 その度、シート2、シート3もそれぞれ自動で反映されるようにした いです。

・マクロ、VBAは知識がないので
 関数で作成したいです。

・できるだけエラー(#N/Aなど)表示されないようにしたいです。

説明が不十分で伝わりにくいかと思いますが
よろしくお願いします。

こんばんは。教えてください。

元データ(sheet1)を更新するたび
2つの条件にあったデータを
別シートに自動的に抽出したいので
適した関数がありましたら教えてください。



◇シート1◇ ※元データ
 A      B     C     D     F
1 氏名 役職 部署 年齢 移動時期     
2 山田 社員 開発 45  未調整
3 田中 社員 人事 42  4/1~
4 鈴木 派遣 企画 30  
5 高橋 役員 人事 50  未調整
6 坂野 社員 企画 33  未調整  
7 ...続きを読む

Aベストアンサー

> 部署を"人事"と"企画"の両方で抽出する条件を追加する

おはようございます、merlionXXです。
Operator:=xlOr, Criteria2:="=企画" と、OR条件で"企画"を加えれば可能です。
一応、各コードの動きに解説もつけておきました。(解説は’でコメントアウトしてますのでこのまま貼り付けてもOKです。)

Private Sub Worksheet_Activate() 'このシートがアクティブになったら自動実行
With Sheets("Sheet1") 'Sheet1対して
.AutoFilterMode = False 'オートフィルタ終了(あればエラーになるため)
.Range("A1:E1").AutoFilter 'A1:E1にオートフィルタ設定
.Range("A1:E1").AutoFilter Field:=3, Criteria1:="=人事", Operator:=xlOr, Criteria2:="=企画" '左から3つ目のフィルタを"人事"と"企画"のOR条件で抽出
.Range("A1:E1").AutoFilter Field:=5, Criteria1:="未調整" '左から5つ目のフィルタを"未調整"で抽出
.Range(.Range("A1"), .Range("A1").SpecialCells(xlLastCell)).SpecialCells(xlCellTypeVisible).Copy Range("A1") 'A1から最終セル範囲の可視セルをこのシートのA1以降に貼り付け
.AutoFilterMode = False 'オートフィルタ終了
End With 'Sheet1に対する記述おわり
End Sub

> 部署を"人事"と"企画"の両方で抽出する条件を追加する

おはようございます、merlionXXです。
Operator:=xlOr, Criteria2:="=企画" と、OR条件で"企画"を加えれば可能です。
一応、各コードの動きに解説もつけておきました。(解説は’でコメントアウトしてますのでこのまま貼り付けてもOKです。)

Private Sub Worksheet_Activate() 'このシートがアクティブになったら自動実行
With Sheets("Sheet1") 'Sheet1対して
.AutoFilterMode = False 'オートフィルタ終了(あればエラーになるた...続きを読む

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

QExcelで,一覧表シートから必要な名簿データを抽出するマクロを教えて下さい。

画像のように,Sheet1にはC列~L列まで商品名があります。
M列以降に名前などのデータが並んでいます。
例えば,名前①の人は商品①だけを購入,名前②の人は①③⑤⑧を購入している。。。。。とします。

次にSheet2は,それぞれの商品の購入者名簿です。
例えば,「商品①」のボタンを押すと,商品①を購入している名前①,名前②,名前⑤の3名のデータを抽出するといった名簿を作成したいのです。

ちなみにSheet1の購入商品は購入商品の個数を表しているのではありません。つまり,ここのセルには「1」が入力されるか,または空白かのどちらかです。
このようなマクロを考えているのですが,知識がないのでさっぱり分かりません。
どうかお願いします。

また,できればデータのない欄は斜線を入れれるようにもしたいです。
例えば,Sheet2の「商品①」の場合は3名しかデータがないので,この表のB7のセルから下の(具体的にはK20まで)部分にはデータがないので,ここには右上がりの斜線が引ければありがたいです。

Aベストアンサー

こんにちは!

商品数だけコマンドボタンを挿入しているのですね?

画像を拝見すると「姓」・「名」が結合されているように見えるのですが、
それではExcel的にどこまでが「姓」なのか判断できませんので
「姓」はM列・「名」はN列になっているという前提です。

「商品①」のコマンドボタンのオブジェクト名はそのまま「CommandButton1」となっているとします。
とりあえず「商品①」のコードだけ

Private Sub CommandButton1_Click()
Dim i As Long, myEnd As Long, wS As Worksheet
Set wS = Worksheets("Sheet1")
With Range("C4:D20")
.ClearContents
.Borders(xlDiagonalUp).LineStyle = xlNone
End With
For i = 4 To wS.Cells(Rows.Count, "C").End(xlUp).Row
If wS.Cells(i, "C") = 1 Then
'▼ 「姓」「名」の2列しか操作していない//
Cells(Rows.Count, "C").End(xlUp).Offset(1).Resize(, 2).Value = _
wS.Cells(i, "M").Resize(, 2).Value
End If
Next i
myEnd = Range("C3").End(xlDown).Row
If myEnd < 21 Then
Range(Cells(myEnd + 1, "C"), Cells(20, "D")).Borders(xlDiagonalUp).LineStyle = xlContinuous
End If
End Sub

※ 表の詳細が判らないので
 コマンドボタンを配置しているSheetのC・D列の操作しかしていません。m(_ _)m

こんにちは!

商品数だけコマンドボタンを挿入しているのですね?

画像を拝見すると「姓」・「名」が結合されているように見えるのですが、
それではExcel的にどこまでが「姓」なのか判断できませんので
「姓」はM列・「名」はN列になっているという前提です。

「商品①」のコマンドボタンのオブジェクト名はそのまま「CommandButton1」となっているとします。
とりあえず「商品①」のコードだけ

Private Sub CommandButton1_Click()
Dim i As Long, myEnd As Long, wS As Worksheet
Set wS = Worksheet...続きを読む

Qエクセルで条件に合うものを別シートに抽出(関数)

希望日    りんご   ばなな   みかん   担当   配達チェック
6月1日      2             1     山田
6月3日             4      2     佐藤      
6月1日      3                   山田      済
6月2日             1            佐藤 
6月2日                    2     山田

というデータがsheet1に入力されています。
<条件>
 ・担当 山田のもの
 ・6月2日以前(このデータでは1日と2日)
 ・配達チェックが済でないもの(空白です)

この条件を満たすものをsheet2に抽出したいのです。
希望日    りんご   ばなな   みかん   担当   配達チェック
6月1日      2              1     山田
6月2日                    2     山田
とsheet2に表示させるには関数でできますか?
できれば、セル参照でA1セルに6月2日、B1に山田と入力すると抽出されるととても便利なのですが・・・。
皆様のお知恵を拝借させてください!!

希望日    りんご   ばなな   みかん   担当   配達チェック
6月1日      2             1     山田
6月3日             4      2     佐藤      
6月1日      3                   山田      済
6月2日             1            佐藤 
6月2日                    2     山田

というデータがsheet1に入力されています。
<条件>
 ・担当 山田の...続きを読む

Aベストアンサー

こんばんは!
一例です。

↓の画像でSheet1に作業用の列を設けています。
作業列G2セルに
=IF(COUNTBLANK(Sheet2!$A$1:$B$1),"",IF(AND(A2<=Sheet2!$A$1,E2=Sheet2!$B$1,F2=""),ROW(),""))
という数式を入れオートフィルでずぃ~~~!っと下へコピーしておきます。

そしてSheet2のA4セルに
=IF(COUNT(Sheet1!$G:$G)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$G:$G,ROW(A1))))
という数式を入れ列方向と行方向にオートフィルでコピー!

A列の表示形式は「日付」にしておきます。
ただ、このままではSheet1に空白セルがあれば「0」が表示されてしまいますので、
当方使用のExcel2003の場合ですが、
メニュー → ツール → オプション → 「表示」タブ → 「ゼロ値」のチェックを外すと
画像のような感じになります。

以上、参考になれば良いのですが・・・m(__)m

Q会員名簿から出席者のみ一覧表の作成

   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ベストアンサー

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

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

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


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

=INDEX(Sheet1!A:A,SMALL(INDEX((Sheet1!$B$2:$B$100<>"")*1000+ROW($B$2:$B$100),),ROW(A1)))&""

Q【エクセル】表から条件に合ったデータを別シートに順番に抽出したい

エクセルの表である条件にあてはまる行を
別シートに順番に抽出されるような関数を教えてください。


シート1のB列にあるデータが"渋谷区"のとき
シート2のE74からE80くらいまでに
シート1のC列のデータを上から順に抽出されるようにしたいです。

【シート1】
A        B         C
1 東京都 渋谷区  PC
2東京都  港区  PC
3東京都 新宿区  マウス
4東京都 渋谷区  ペン
5東京都 渋谷区  モニタ



10

【シート2】

E
74 PC
75 ペン
76 モニタ



80 


【補足】
元の表(シート1)を編集することがあるので
自動的に反映されるよう、関数で作成できたらと思います。
シート2の構成上、抽出後のソートや、フィルタオプションは避けたいです。

わかりづらい文章で申し訳ございませんが
どなたかいいアドバイスがありましたら教えてください。
お礼は明日になってしまいますが、必ずご返答いたします。
よろしくお願いいたします。

 

エクセルの表である条件にあてはまる行を
別シートに順番に抽出されるような関数を教えてください。


シート1のB列にあるデータが"渋谷区"のとき
シート2のE74からE80くらいまでに
シート1のC列のデータを上から順に抽出されるようにしたいです。

【シート1】
A        B         C
1 東京都 渋谷区  PC
2東京都  港区  PC
3東京都 新宿区  マウス
4東京都 渋谷区  ペン
5東京都 渋谷区  モニタ



10

【シート2】

E
...続きを読む

Aベストアンサー

>E74に関数を入力し、その後関数をE80までドラッグすればよいのでしょうか?
いいえ。
1.
=INDEX(シート1!C1:C11,SMALL(IF(シート1!B1:B10="渋谷区",ROW(A1:A10),11),ROW(A1:A10)))&""
の数式を掲示板上でコピーします(シート名は合わせてください)
2. E74:E80セル範囲を選択します
3. 数式バーで[Ctrl]+[V]貼り付け
4. [Ctrl]+[Shift] +[Enter] でセルへの入力を確定させます

>その際、絶対参照や相対参照は必要でしょうか?
セルのコピーはしませんので不要です。
参考まで

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

Qエクセルの名簿一覧表からすでにエクセルで作られている一人づつのシートに差込印刷

エクセルでできている名簿リストから、すでにエクセルでできている個人別のシートに差込印刷したいのです。一人ずつセル参照で作ることはできるのですが、全部で300人分くらいあるのでワードの差込印刷のように一度にできる方法が知りたいのです。本日中にやらねばならないので手作業では、間に合いそうにありませんしVBAの勉強をしている余裕もありません。

Aベストアンサー

VBAでもない解答をします。ただファイル-印刷の操作を
300回すること。最終部のようにすれば、VBAで自動化も出来ます。
(1)Sheet2のA1:E3に住所録が
氏名郵便番号住所1住所2
山田 和郎111-1111東京都小平市新町2-1-2光マンション222
木之下 重雄222-2222東京都三鷹市本町4-3-2三国荘201
あるとします。本番ではA1:E300とかに住所録があります。
(2)Sheet1は印刷する画面シートです。
F1セルに2、
F2に="Sheet2!A"&F1
F3に="Sheet2!B"&F1
F4に="Sheet2!C"&F1
F5に="Sheet2!D"&F1
F6に="Sheet2!E"&F1
郵便番号を置くセルをB3として式=INDIRECT(F3)
府県市を入れるセルをB5として式=INDIRECT(F4)
町番地を入れるセルをB6として式=INDIRECT(F5)
気付を入れるセルをC6として式=INDIRECT(F6)
名前を入れるセルをB8として式=INDIRECT(F2)
C8に「様」を入れる。
(3)F1セルが2の時は
111-1111

東京都小平市
新町2-1-2光マンション222

山田 和郎様
となりますが、このA1:C8を印刷する。
(4)F1セルの値を3に変える(3を入力する)と
222-2222

東京都三鷹市
本町4-3-2三国荘201

木之下 重雄様
と瞬時に変るが、これを印刷する。
(5)F1を4、5、6、・・・と変えて印刷、変えて印刷すれば良い。
この(5)の部分だけをマクロの記録やVBAにすれば、
同じVBAでも既解答よりずっと易しいと思いますがいかがででしょうか。
Sub test01()
Worksheets("sheet1").Activate
For i = 2 To 3 '300
Cells(1, "F") = i
Range("a1:c8").PrintOut
Next i
End Sub
行高、セル幅、フォントサイズなどは手動で設定。
氏名、郵便番号、住所を置くセルは自由に出来ます。
上記でF1:F6も自由に別列に設定できます。

VBAでもない解答をします。ただファイル-印刷の操作を
300回すること。最終部のようにすれば、VBAで自動化も出来ます。
(1)Sheet2のA1:E3に住所録が
氏名郵便番号住所1住所2
山田 和郎111-1111東京都小平市新町2-1-2光マンション222
木之下 重雄222-2222東京都三鷹市本町4-3-2三国荘201
あるとします。本番ではA1:E300とかに住所録があります。
(2)Sheet1は印刷する画面シートです。
F1セルに2、
F2に="Sheet2!A"&F1
F3に="Sheet2!B"&F1
F4に="Sheet2!...続きを読む

Q二つのエクセル名簿を比較し、抽出したい

エクセルでできた名簿が2つあります。

どちらも
列EがID、
列Fが氏名
列Gがフリガナ

という構成は同じです。
両方の名簿で同じ人は、同じIDです。

ただ、上記記載以外の列、備考や更新日などは同じ人でも異なったデータが入っています。

二つの名簿ファイルを借りに名簿A、名簿Bとすると
名簿Aにのみ掲載されてる人のレコードのみ抽出したいのです。

両方の名簿から、ABともに掲載されてる人、Bのみに掲載されてる人を除き、Aのみに掲載されてる人だけのリストを作りたい。

理想は、名簿Aのリストはそのままにして、
まったく別の列(例えば列Z)に抽出した人だけ
1を入力するなどが理想です。

1行ずつ目で見て比較していくのは、時間のむだでとてもできません。

Aベストアンサー

回答番号:No.2です
(5)に誤りがありました。

(5)を次のように訂正してください 
(正:空白セル 誤:空白セル以外)

(5)「列Y」を「オートフィルタ」で「空白セル」を選択

QEXCELで別のシートのデータを参照して返す方法

ちょっとしたことなのですが、うまく式が書けなくて悩んでいます。

作業用のシート1と参照用のシート2があり、
シート1のA列には
 あおき
 あべ
 いぐち
 いはら
などと文字列(名前)が入力されています。
こちらは今度の野球のスタメンだと思ってください。

シート2にはA列とB列があって、
わたなべ 55
いぐち  43
あおやま 67
いはら  41
などと、名前:背番号が羅列されています。こちらが参照用の全選手の背番号リストだと思ってください。

ここで、 シート1のB列に、A列の名前に対応した背番号を返したいのです。
なので、シート1のB列に
IF(シート1のA列の値=シート2のA列のいずれかの値)だったとき、
適合したシート2の行のB列の値を表示する
という式を入れたいのですが、どのように式を書けばよいでしょうか。

すみませんがどなたか教えてください。

Aベストアンサー

私もその場合はVLOOKUP関数を使用しています。

「B1」=VLOOKUP(A1,Sheet2!$A:$B,2,0)


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

人気Q&Aランキング