• ベストアンサー

EXCELの抽出の関数について

EXCELで〈表1〉から重ねる都道府県を除いて〈表2〉を作成したいと思います。どのような関数を使えば良いのか、ご教示を宜しくお願いいたします。

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

  • ベストアンサー
  • msMike
  • ベストアンサー率20% (364/1804)
回答No.4

別解です。 別シート(でなくても構わない)の任意のセルに式 =OFFSET(Sheet1!B$3,(ROW(A1)-1)/5,MOD(ROW(A1)-1,5)) を入力 ⇒ このセルをズズーッと(数値 0 が表示されるまで)下方にオートフィル ⇒ 全データを選択 ⇒ Ctrl+C ⇒ Ctrl+Alt+V ⇒ “値”に目玉入れ ⇒ [OK] ⇒ Alt+AM ⇒ [OK] ⇒ [OK]

atsushi0927
質問者

お礼

申し訳ありませんでした。補足コメントは回答を頂いた方すべてに送りました。 説明の仕方がユニークで(「「エイヤッ!」」、「ツン」、「目玉入れ」)でしたが、上手くいきました。 本当に有り難うございました。

atsushi0927
質問者

補足

(1)EXCELのバージョンは2013です。 (2)抽出された都道府県については明確な基準はありません。 (3)作業用の表を作成しても構いません。

その他の回答 (7)

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.8

Alt + D, P, C, N, I, N 「A2:F11」を[追加]して[次へ] [既存のワークシート]でセルを指定して[完了] フィールドリストの[行]と[列]のチェックを外す [値]を行フィールドに入れる 微調整しておしまい。

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.7

ピボットテーブルでやれば一瞬ですが 何故関数でないとダメ なんでしょう。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.6

回答No.2の補足に基づいて処理の手順を提示します。 都道府県の一覧をJ列に作成し、K列に(表1)の中からJ列の都道府県が検出されたとき現在の行番号を代入します。未検出のときは空欄にします。 H列にはK列の小さい順に抽出した行番を利用してJ列の中から抽出します。 J3セルの数式 =IF(COUNTIF($B$3:$F$11,J3),ROW(),"") H3セルの数式 =IFERROR(INDEX(J:J,SMALL(K:K,ROWS(H$3:H3))),"") J3とH3を下へ必要数コピーします。 貼付画像は作業用の(表3)を全部表示していませんが状況の説明に不都合が無いと思います。

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.5

[No.4補足]へのコメント、 私宛ではない補足コメントを、そっくり私に下さって戸惑っています。率直に申せば迷惑です。 序ながら、私の2つの回答[No.1][No.4]を試してみましたか?

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.3

関数でやるんですね? 作業列を使います。 添付の図を見てください(データは入力面倒なので途中までしか入れていません)。 J1:L1には 1を入れます。 J2に↓ =IF(COUNTIF(M$1:M2,M2)*(M2<>"")=1,MAX(J$1:J1)+1,"") K2に↓ =1+ROUNDDOWN(ROW(K1)/5,0) L2に↓ =MOD(ROW(L1),5)+1 と、入れてJ2:L2を40行目までコピーします。 次にM1に↓を入れてM40までコピーします。 =""&OFFSET($A$2,K1,L1) 最後にH3に↓を入れてH43までコピーします。 =IFERROR(VLOOKUP(ROW(H1),J:M,4,FALSE),"")

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.2

条件が足りませんので回答が困難です。 1.Excelのバージョンは? 2.抽出都道府県の表示順は北からのようですが明確な基準を提示してください 3.作業用の表を作成しても良いですか?

atsushi0927
質問者

補足

(1)EXCELのバージョンは2013です。 (2)抽出された都道府県については明確な基準はありません。 (3)作業用の表を作成しても構いません。

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.1

添付図下段参照 Sheet2 において、 B列は47都道府県リスト セル A2 に式 =SUBTOTAL(3,B$2:B2) を入力して、フィルハンドルを「エイヤッ!」とダブクリ セル C2 に式 =COUNTIF(Sheet1!B$3:F$11,B2) を入力して、フィルハンドルを「エイヤッ!」とダブクリ 1行目に[オートフィルタ]を設定して、C列の[オートフィルタ]矢印をツンして、0 の左のチェックを外して[OK] 結果を添付図上段に示す。

関連するQ&A