- ベストアンサー
エクセルについて
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは! 画像をよく拝見すると、Sheet1のA列には重複して同じ物があるみたいですね? おそらく重複するものをすべてSheet2に表示したい!というご質問だとして・・・ Sheet2のB1セルに =IF(COUNTIF(Sheet1!$A:$A,$A$1)<ROW(A1),"",INDEX(Sheet1!B$1:B$1000,SMALL(IF(Sheet1!$A$1:$A$1000=$A$1,ROW($A$1:$A$1000)),ROW(A1)))) これは配列数式になってしまいますので、Shift+Ctrl+Enterで確定! この画面からコピー&ペーストする場合は、上記数式を範囲指定 → 右クリック → コピー → Sheet2のB1セルを選択 → 数式バー内で一度クリック → 右クリック → 貼り付け → そのまま(編集可能のまま)Shift+Ctrlキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 このB1セルを列・行方向にオートフィルでコピーしてみてください。m(_ _)m
その他の回答 (3)
- nerubobo
- ベストアンサー率0% (0/1)
touch_ken さん こんにちは。 こういった場合は、VLOOKUP関数を使いのが一般的です。 シート2のB1をアクティブセルにしておいて =VLOOKUP(A1、シート1のデータベースを全選択して絶対参照、2(データベースから抜き出したい列、0) と数式入力をしてください。 VLOOKUP関数の使いかたはネットで調べればでてきます。 COLUMN関数も一緒におぼえると水平高へのコピーに便利ですよ。 参考にしてみてください。
Sheet1!E1: =IF(A1=Sheet2!A$1,ROW(),"") 此れを下方にズズーッとドラッグ&ペースト Sheet2!B1: =IF(ISERROR(SMALL(Sheet1!$E:$E,ROW(A1))),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$E:$E,ROW(A1)))) 此れを右列にドラッグ&ペースト Sheet2!B1:D1 を下方にズズーッとドラッグ&ペースト
- shintaro-2
- ベストアンサー率36% (2266/6245)
vlookup,hlookupで、セルを指定する際に、 sheet1!a1 といった感じでセルの前に”シート名”+"!"をつければOKです。