エクセルでの関数についての質問ですが、
A B C D
1 名前 日付 場所 時間
2 Aさん 10/7 工場1 8.0
3 Bさん 10/7 工場1 8.0
4 Cさん 10/7 工場2 4.0
5 Cさん 10/7 工場1 8.0
6 Aさん 10/8 事務所 8.0
7 Cさん 10/8 工場2 8.0
8 Aさん 10/9 事務所 4.0
以上の表から別のシート2にAさんだけの行を抽出するには、どのようにすれば良いのでしょうか?
INDEXやMATCH・LOOKUPを使っていろいろ試したのですがイマイチうまく行かないもので・・・。
因みに、シート2のイメージは
A B C
1 名前 : Aさん
2
3 日付 場所 時間
4 10/7 工場1 8.0
5 10/8 事務所 8.0
6 10/9 事務所 4.0
このような感じです。
よろしくお願いします。
No.6ベストアンサー
- 回答日時:
こんにちは!
極端にデータ量が多い場合はおススメできませんが・・・
一気に表示する方法です。
↓の画像で右側がSheet2とします。
Excel2007以降のバージョンをお使いだとして・・・
Sheet2のA4セルに
=IF($B$1="","",IFERROR(INDEX(Sheet1!B$1:B$1000,SMALL(IF(Sheet1!$A$1:$A$1000=$B$1,ROW(A$1:A$1000)),ROW(A1))),""))
これは配列数式になってしまいますので、Shift+Ctrl+Enterで確定!
この画面から数式をコピー&ペーストする場合は
上記数式をドラッグ&コピー → Sheet2のA4セルを選択 → 数式バー内に貼り付け
→ そのまま(編集可能なまま)Shift+Ctrlキーを押しながらEnterキーで確定!
数式の前後に{ }マークが入り配列数式になります。
これをC4セルまでコピー!
A4セルの表示形式は「日付」にし、A4~C4セルを範囲指定 → C4セルのフィルハンドルで下へコピー!
これで画像のような感じになります。m(_ _)m꜊
No.5
- 回答日時:
レイアウトを変える事無く、作業列も使用せずに、関数のみで抽出する方法です。
但し、計算処理に要するパソコンの負荷が大きいため、元データの行数が数千行以上にもなりますと、処理に時間が掛かり過ぎるという難点があります。(パソコンの処理速度にもよりますが2000行程度までなら、まあまあ我慢して待つ事も出来る程度かも知れません)
まず、Sheet2のA4セルに次の関数を入力して下さい。
=IF(ROWS($4:4)>COUNTIF(Sheet1!$A:$A,$B$1),"",INDEX(Sheet1!$B:$D,SUMPRODUCT(ISNUMBER(ROW(Sheet1!$A$1:INDEX(Sheet1!$A:$A,MATCH("*?",Sheet1!$A:$A,-1))))*(COUNTIF(OFFSET(Sheet1!$A$1,,,ROW(Sheet1!$A$1:INDEX(Sheet1!$A:$A,MATCH("*?",Sheet1!$A:$A,-1)))-ROW(Sheet1!$A$1)+1),$B$1)<ROWS($4:4)))+ROW(Sheet1!$A$1),COLUMNS($A:A)))
次に、Sheet2のA4セルをコピーして、Sheet2のB4~C4の範囲に貼り付けて下さい。
次に、Sheet1のC2~E2の範囲をコピーして、Sheet2のA4~C4の範囲に書式のみを貼り付けて下さい。
次に、Sheet2のA4~C4の範囲をコピーして、同じ列の5行目以下に貼り付けて下さい。
これで準備は完了で、後はSheet2のB1セルに名前を入力しますと、Sheet2のA列~C列にその方のデータが自動的に表示されます。
No.4
- 回答日時:
ちょっと表のレイアウトを変更して、Sheet1の元データの表を次の様にします。
A B C D E
1 No. 名前 日付 場所 時間
2 1 Aさん 10/7 工場1 8.0
3 2 Bさん 10/7 工場1 8.0
4 3 Cさん 10/7 工場2 4.0
5 4 Cさん 10/7 工場1 8.0
6 5 Aさん 10/8 事務所 8.0
7 6 Cさん 10/8 工場2 8.0
8 7 Aさん 10/9 事務所 4.0
一方、Sheet2の表も次の様にするものとします。
A B C D
1 名前 : Aさん
2
3 No. 日付 場所 時間
4 1 10/7 工場1 8.0
5 5 10/8 事務所 8.0
6 7 10/9 事務所 4.0
まず、Sheet2のA3セルに次の関数を入力して下さい。
=Sheet1!$A$1
次に、Sheet2のB3セルに次の関数を入力して下さい。
=Sheet1!C$1
次に、Sheet2のA4セルに次の関数を入力して下さい。
=IF($B$1="","",IF(ROWS($A$4:$A4)>COUNTIF(Sheet1!$B:$B,$B$1),"",INDEX(Sheet1!$A:$A,MATCH($B$1,INDEX(Sheet1!$B:$B,MATCH(A3,Sheet1!$A:$A,0)+1):INDEX(Sheet1!$B:$B,MATCH("*?",Sheet1!$B:$B,-1)),0)+MATCH(A3,Sheet1!$A:$A,0))))
次に、Sheet2のB4セルに次の関数を入力して下さい。
=IF($A4="","",VLOOKUP($A4,Sheet1!$A:$E,MATCH(B$3,Sheet1!$A$1:$E$1,0),FALSE))
次に、Sheet2のB3~B4の範囲をコピーして、Sheet2のC3~D4の範囲に貼り付けて下さい。
次に、Sheet1のC2~E2の範囲をコピーして、Sheet2のB4~D4の範囲に書式のみを貼り付けて下さい。
次に、Sheet2のA4~D4の範囲をコピーして、同じ列の5行目以下に貼り付けて下さい。
これで準備は完了で、後はSheet2のB1セルに名前を入力しますと、Sheet2のA列~C列にその方のデータが自動的に表示されます。
No.3
- 回答日時:
回答No.2です。
因みに、Sheet1の適当な列に、通し番号等の各行毎に異なるデータが入力されている列がある場合には、作業列を使用せずに、関数のみで処理する方法を使う事が出来るのですが、表のレイアウトを変更して、A列に通し番号等を入れる事などは可能でしょうか?
No.2
- 回答日時:
今仮に、御質問文中の上の表が存在しているシートのシート名がSheet1であり、下の表を表示させるシートのシート名がSheet2であるものとします。
又、Sheet3のA列を作業列として使用するものとします。
まず、Sheet3のA2セルに次の関数を入力して下さい。
=IF(INDEX(Sheet1!$A:$A,ROW())="","",INDEX(Sheet1!$A:$A,ROW())&"◆"&COUNTIF(Sheet1!$A$1:INDEX(Sheet1!$A:$A,ROW()),INDEX(Sheet1!$A:$A,ROW())))
次に、Sheet3のA2セルをコピーして、Sheet3のA3以下に貼り付けて下さい。
次に、Sheet2のA4セルに次の関数を入力して下さい。
=IF($B$1="","",IF(COUNTIF(Sheet3!$A:$A,$B$1&"◆"&ROWS($4:4)),INDEX(Sheet66!$B:$D,MATCH($B$1&"◆"&ROWS($4:4),Sheet3!$A:$A,0),COLUMNS($A:A)),""))
次に、Sheet2のA4セルをコピーして、Sheet2のB4~C4の範囲に貼り付けて下さい。
次に、Sheet1のB2~D2の範囲をコピーして、Sheet2のA4~C4の範囲に書式のみを貼り付けて下さい。
次に、Sheet2のA4~C4の範囲をコピーして、同じ列の5行目以下に貼り付けて下さい。
これで準備は完了で、後はSheet2のB1セルに名前を入力しますと、Sheet2のA列~C列にその方のデータが自動的に表示されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelでプルダウン選択(I1セル)...
-
UNIQUE関数の代用
-
Excel 日付の表示が直せません...
-
エクセルの数式について教えて...
-
ユーザーマクロ作成
-
カーソルを合わせてる時のみ行...
-
エクセルで、数字の下4桁の0を...
-
Excelで、すでに書いてある表を...
-
エクセルで作った表が印刷する...
-
SUBTOTAL関数のように同関数の...
-
Vbaをバッチ処理で動かす方法に...
-
エクスプローラーで見ることは...
-
Excelのマクロが表示できない
-
エクセルでオートフィルタが動...
-
エクセルの条件付き書式設定に...
-
【VBA】使ってたクエリの接続を...
-
Excel 関数での質問です
-
Excelファイルを開くと私だけVA...
-
【Excel】日付に連動してプルダ...
-
エクセルの数式について教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】重複する同じ行を、...
-
Excelの条件付き書式のコピーと...
-
vba 印刷設定でのカラー印刷と...
-
VBA の単語の意味を教えて下さい。
-
Excel 日付の表示が直せません...
-
エクセル 同じ行の隣り合う数字...
-
エクセル条件付き書式について。
-
エクセルの数式につきまして
-
ファイル名の変更
-
エクセル 数字のみ抽出につて
-
Excelの開始ブックを固定したい...
-
エクセルの数式について教えて...
-
エクセルのセルをクリックする...
-
=INDIRECT(RIGHT(CELL("filenam...
-
エクスプローラーで見ることは...
-
Excelの関数で質問です
-
至急お願いいたします 屋上の備...
-
エクセルでセルに入力する前は...
-
関数を教えて下さい
-
Excel 関数での質問です
おすすめ情報