• ベストアンサー

Excelで表から抜き出す方法!教えてください。

Excel2002を使用中で、質問があります。 ぜひ教えていただきたいです! よろしくお願いします。 下記のような形で表をもっています。 ----------------------------------- 名前    部門    取得資格  田中    営業部   情報処理2種 田中    営業部   シスアド 山本    管理部   簿記 山本    管理部   シスアド 鈴木    システム部  シスアド  ・       ・        ・  ・       ・        ・  ・       ・        ・ ------------------------------------ 約1000行近くあります。 このように、一人につき、複数の資格を取得している場合はその名前がまたほかの行で登場する形です。 今回やりたいのは、この中で、たとえば 「シスアドの資格だけをもっている人」を抜き出したいのです。 上の例ならば、複数持ってる田中さんや山本さんではなくてシスアドだけの鈴木さんを抜き出したいということす。 どんなふうにやればいいのか、関数なのか、、オートフル? なのか、それともマクロを使わないといけないのか。 まったくわかりませんので、 どうかどうか教えてください!!! よろしくお願いいたします。お待ちしています。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

VBAで 標準モジュールに貼りつけて実行。 Sub test01() d = Range("a1").CurrentRegion.Rows.Count '---シートコピー Sheets("Sheet1").Copy Before:=Sheets(1) '-----ソート Worksheets("Sheet1 (2)").Activate Range(Cells(1, 1), Cells(d, 2)).Sort Key1:=Range("A1"), Order1:=xlAscending '-------重複者削除 m = Cells(1, "A") '第1行目は特別 fst = "y" '出初め For i = 2 To d If m = Cells(i, "A") Then If fst = "y" Then Rows(i - 1).Clear '重複判明、出初めも削除 fst = "n" End If Rows(i).Clear '重複しているので現在行を削除 Else '----シスアド以外削除 If Cells(i - 1, "B") <> "シスアド" Then Rows(i - 1).Clear End If m = Cells(i, "a") fst = "y" End If Next i '-----最後行処理 If Cells(i - 1, "B") <> "シスアド" Then Rows(i - 1).Clear End If '-----ソート Range(Cells(1, 1), Cells(d, 2)).Sort Key1:=Range("A1"), Order1:=xlAscending End Sub ’---- 市田 シスアド 小森 衛生士 上田 情報 大村 防火管理 市田 介護士 木村 シスアド 小森 行政士 鈴木 シスアド 仲野 会計士 山田 労務士 木村 危険物 下田 シスアド の例で、結果は、別シートに 下田 シスアド 鈴木 シスアド となります。 上記は微妙なロジックを使っているので、誤りないと思いますが、十分チェックしてください。 本番で変えるのは、実際の列の番号A,Bとソート範囲の Range(Cells(1, 1), Cells(d, 2)).SorとSortキーのA1 のところぐらいでしょうか。

marikoro
質問者

お礼

大変お礼が遅くなって申し訳ございません。 また皆様ありがとうございました。 ここであわせてお礼申し上げます。 皆様のおかげで助かりました!!!感謝しています。

その他の回答 (3)

  • Ryokucha
  • ベストアンサー率25% (115/450)
回答No.3

集計で持っている資格の数を数えて、保有数が1の人を選び出し、その中からシスアドだけの人を選択したらどうでしょう?

  • tetomito
  • ベストアンサー率0% (0/1)
回答No.2

オートフィルタはどうですが? 範囲指定をしてからデータ→フィルタ→オートフィルタにしてシスアドの下向き矢印をクリックしてシスアドを選ぶ。という感じだったと思いますが・・・試してみて下さい。ずいぶん前にやったことがあったのでしっかりした回答でなくてすみません。 ※ただし範囲指定のとき名前 部門 取得資格の欄を範囲指定して取得資格の列の下向き三角をクリックしてみてください。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 関数でも出来ますが、ものすごく複雑で長くなりますので、オートフィルタ(またはフィルタオプション)の方法を。 作業列を使用します。 元の表がA~C列として、D列を作業列とします。 D1には適当にタイトルを付けます。(仮に「取得数」とします。) D2に、 =SUMPRODUCT(($A$2:$A$6=A2)*($B$2:$B$6=B2)) と入力して、下の行へコピーします。 これは、各人の資格取得数です。 なお、名前だけでは同姓があるかも知れませんので、名前+部門にしてあります。 また、とりあえずデータ範囲は2~6行になっていますので、適宜変更して下さい。 これで、A~D列でオートフィルタをかけます。 そして、条件を、 取得資格(C列):「シスアド」 取得数(D列):「1」 にして抽出します。 これで、システム部の鈴木のみが抽出出来ます。

関連するQ&A

  • エクセルでこのような事ができますか?

    エクセルでマクロとか使わずに簡単に以下の作業ができる方法がありますか?      A      B 1   田中 2   山本 3   中村 4   岡田 5   鈴木      ↓   A列にずっと1000人ぐらいの名前がある。   このシートをもとに下のような1から6の番号をB列につけたシートを   作りたいのですが・・・      A      B 1   田中     1 2   田中     2 3   田中     3 4   田中     4 5   田中     5 6   田中     6 7   山本     1 8   山本     2 9   山本     3 10  山本     4 11  山本     5 12  山本     6 13  中村     1 14  中村     2      ↓    6000行まで入ることになります。

  • エクセルで二つの表を一つに纏める方法は

    エクセル2007で作成した二つの表を一つに纏めたいのですが、何か方法はございますでしょうか? サンプル1のファイル  A列   B列 山本太朗,東京都 鈴木花子,静岡県 田中太朗,大阪府 サンプル2のファイル  A列   B列 田中太朗,男性 鈴木花子,女性 山本太朗,男性 この二つのファイルを以下のように一つの表に纏めたいのですが 共通項目はA列の名前で並び順に規則性はありません。  A列   B列 C列 山本太朗,東京都,男性 鈴木花子,静岡県,女性 田中太朗,大阪府,男性 エクセルでは厳しいようであれば他の方法を ご教授いただけるとありがたいです。 以上、宜しくお願い致します。

  • Excelで人数カウントをしたいのですが、、

    Excel2002を使用しています。 まだ初心者で関数などあまりわかりません。 一生懸命考えてますが、なかなかいい案が思いつかないので どうかどうかよろしくお願いいたします! --------------------------------------- 社員の名前が1000行ぐらいに渡って入っています。 そこには同じ名前が何度か出てきます(連続ではなくとびとびで)。 その場合、たとえば田中さんだったら 一番最初に田中とでてくる行の隣のセルだけに 1とカウントしたいのです。 たとえば下記のような感じです。 最終的には人数の合計を出したいのです・・・ ------------------------------------   A  B 1  名前 人数 2 田中 1 3 鈴木 1 4 田中 5 山本 1 6 鈴木 ------------------------------------ 同じ名前が連続のときであれば、IF(A2=A1,\"\",1) という式を思いついたのですが、それだと 離れてまた登場したときに、同じ名前に1が入ってしまいます。 何かいい方法、関数などございましたら、 ぜひぜひお教えください!! よろしくお願いいたします。

  • EXCELでの項目別集計

    皆さんのお知恵をお貸し下さい。 複数行、複数列にまたがって名前が入力されています。 名前ごとの集計をとりたいのですが、 どうやったらよいでしょうか 田中  山本  斉藤      斉藤  伊藤 山崎  田中     これを 田中  2 山本  1 斉藤  2 伊藤  1 山崎  1 という風に集計をとりたいのですがピボットテーブルではうまくいきません。 名前は特定できるものでなくいくつも種類があるのでCOUNTIFでは対応できません。 何か用意方法はないでしょうか よろしくお願いいたします。

  • エクセルで表の形を変えずに並べ替え。

    エクセルで複数行にあるデータを表の形を変えずに並べ替えできますか。 次のような体重データがある場合、6×10の表の形を変えずに、「50音順」と「体重の重さ順」 に並べ替えたいのです。 C列とD列、E列とF列を切り取ってA列とB列の下に貼り付けて2列にしてしまえば簡単にできるのですが、大人数になるとものすごく縦長い表になってしまい、とても面倒なのです。 よろしくお願いします。 中野 56.3 鈴木 62.8 原田 45.3 高橋 75.6 小野 68.2 田中 56.6 田村 74.2 竹内 66.3 金子 59.9 山本 67.6 和田 62.3 中村 56.3 中山 67.2 小林 78.2 石田 63.1 加藤 54.2 上田 66.4 吉田 64.2 森田 57.2 山田 89.6 柴田 75.2 山口 57.3 酒井 60.3 斎藤 68.4 工藤 76.6 松本 57.3 横山 61.2 宮崎 62.3

  • ACCESS 重複データを1つだけ表示したい(初心者です)

    ACCESSで複数のフィールドに全く同じレコードが複数存在します (例) フィールド1  フィールド2  フィールド3 愛知      田中      12 愛知      田中      12 愛知      田中      12 三重      山本      23 三重      山本      23 岐阜      鈴木      33 岐阜      鈴木      33 もともと他のデーターベースからCSVで落としたものをインポートしているので、データの存在自体はどうしようもありませんが、これらの重複しているデータを1件だけ表示したいのです。つまり (例) フィールド1  フィールド2  フィールド3 愛知      田中      12 三重      山本      23 岐阜      鈴木      33 どのようにすればよいでしょうか。

  • 重複レコードについて

    重複レコードについて ACCESS2002での話になります。 テーブルに下記レコードが複数存在します。 (例) フィールド1 フィールド2 フィールド3 愛知 田中 12 愛知 田中 11 愛知 田中 13 三重 山本 23 三重 山本 21 岐阜 鈴木 33 岐阜 鈴木 34 上記を下記の形で抽出したいと考えております。 フィールド1 フィールド2 フィールド3 愛知 田中 12 三重 山本 23 岐阜 鈴木 33 条件はフィールド1で重複がなくなるように抽出したいです。 フィールド3はどの値を抽出してもかまいません。 DESTINCTでの抽出を考えたのですが、それだと全てのカラムに DESTINCTがかかって希望の抽出が出来ませんでした。 何卒ご教授お願いいたします。

  • エクセル 関数

    またしてもエクセルの関数に関しての質問です。 部門コード・人コード・人の名前のデータ一覧があります。 例)K 12 田中   P 13 鈴木   B 20 斉藤   K 38 大田            のような感じです。 人コードと人の名前は変更になることが無いのですが 部門が入れ替わることが多々あります。 38の太田がPに変わったときに自動でPに移動し Kから名前を消したいのです。 [K]←ここに部門コードを入力  ・12 田中  ・38 大田 ←Pに移動になったら消える  ・     ←居なければ空白  ・ [P]  ・13 鈴木  ・38 大田 ←Kから移動になったときに表示される 上のように一覧表に部門別の人を表示させたいのですが どのような関数を作成すればいいのでしょう? ご回答よろしくお願いいたします。

  • エクセルのif関数の条件入力

    エクセルの関数で質問です。 例えば、行Aに「管理部門計」とか「営業部計」とか「支社計」とか「販売計」とか、その他諸々の表示があったとします。 その場合条件で引っ張って新たな表示をさせたい場合、 行Bに「=if(a1="管理部門計","○","×")」などという関数で可能だと思うのですが、もしここで、「部」という文字が含まれる場合のみを条件としたい場合、上の「(a1="管理部門計")」の個所をどのように変えれば宜しいのでしょうか? 単純に「"*部*"」かなと思いましたが、アスタリスクは使えないようでした。。。 ご存知の方、よろしくお願いします。

  • 中小企業診断士について

    こんにちは。 私は、一般企業で総務・人事・経理部門の管理職をしています。年齢は50歳です。 社内でのキャリアを積むために何か勉強をしようと考えています。そこで目にしたのが中小企業診断士です。 この資格は直接業務には関わりありませんが、中小企業診断士の勉強をすると管理部門として役立ちますでしょうか。 また、この資格を維持することは大変だと聞いたことがありますが、その点はいかがでしょうか。 ちなみに私が有している資格は簿記2級と初級シスアドです。 よろしくお願いいたします。

専門家に質問してみよう