• ベストアンサー

EXCELで検索して整理(1列から複数列へ)

元のデータは1列に、店名、住所、その他情報が載っています。 それを、列ごとに、店名、住所として、さらに特定の情報(文字列)が入っている場合のみ追加して、あとは削除します。 画像をご参照ください。ここでは、店情報として仮に「情報2」という文字列があれば、その店の住所の次の列に「情報2」を加えます。情報の数は5つ程度あり、各情報は店により記載されているものとないものがあります。その中で情報2が含まれていたらそれを追記します。 店の数は膨大なので、どのように操作すれば楽に実行できるでしょうか。 EXCELは2010です。 よろしくお願いします。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.4

1つの店に同じデータ数のデータセットがあるなら簡単に希望のデータを表示できますが、それ以外の場合は、たとえば店のセルには必ず「店」という文字が最後についているなどという基準がないと抽出することができません。 たとえば店のセルには必ず文末に「店」の文字が含まれているなら、以下のような数式で店名と住所を表示できます。 C1セルに以下の式を入力して右方向に1つ下方向にデータ数分だけオートフィルしてください。 =IF(ISNUMBER(FIND("店",$A1)),OFFSET($A1,COLUMN(A:A)-1,0),"") 同様に「情報2」が含まれている場合に、そのデータを抽出したいなら、A列の最後に「店」と入力して、E1セルに以下の式を入力して下方向にオートフィルしてください。 =IF(AND(ISNUMBER(FIND("店",$A1)),COUNTIF(A3:INDEX(A3:A8,MATCH("*店",A3:A8,0)-1),"情報2")=1),"情報2","")

okhotsk
質問者

お礼

ありがとうございます。 うまくいきました。A列の最後に「店」を追加するのがポイントですね。

その他の回答 (4)

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

画像の情報のみでの判断ですが、「店名のセルには"店"の文字が必ず右端に含まれている」と言う条件で次の数式で抽出できます。 C1=IF(FIND("店",A1&"店")>LEN(A1),"",A1) D1=IF(C1="","",IF(AND(ISERR(FIND("店",OFFSET($A1,COLUMN(A1),0))),OFFSET($A1,COLUMN(A1),0)<>""),OFFSET($A1,COLUMN(A1),0),"")) E1=IF(C1="","",IFERROR(VLOOKUP("情報2",OFFSET(A1,0,0,MATCH("店",RIGHT(OFFSET(A1,1,0,10)),0)-1),1,FALSE),"")) E1の数式は計算途中で配列の返り値を扱いますので、数式の確定時にCtrl+Shift+Enterで確定します。 C1からE1までを選択して下へ必要数コピーしてください。 Excel 2013で検証した結果が貼付画像です。 Excel 2010でも再現できるはずです。

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.3

取り敢えず一行目を項目行にして(挿入してください) C2は =A2 でいいですよね でD2に =IF(OFFSET($A2,0,COLUMN(B1))="","",IF(COUNTIF(OFFSET($A2,COLUMN(A1),0),"*店*"),"",OFFSET($A2,COLUMN(A1),0))) として 右に必要なだけコピーします(一番情報の多い店の行数分) 次にフィルターを使いA列で「店を含む」という条件で絞り込みます。 その後 さっきコピーした列数分選択して下方向にデータある最下行までコピーします。 データが表示されたら全ての範囲をコピーして別のシートに値貼り付けします。 このような操作でいかがでしょう。それぞれ店名に「店」という文字があるものとして考えています。

  • tamao-chi
  • ベストアンサー率52% (457/875)
回答No.2

情報は5種類程度のみで、みな同じ文字列なのでしょうか? 例えば情報1はすべて「みかん」、情報2はすべて「りんご」であるとか。 そうであれば、フィルターを使って情報1、3~5のチェックを外し、コピー、行列を入れ替えて張り付けすれば済むと思います。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

自動処理するためには、まずは、何かのキーワードで全ての店の行を抽出することをお勧めします。人間にできないことは機械にもできません。

関連するQ&A