• 締切済み

何十万件もあるリストを短時間に表区分をかえたい

何十万件もあるリストを短時間に表区分をかえたいのですが、 1件ずつかえるととてつもなく時間がかかるんで、 なにかよい方法はないでしょうか? たとえば、 以下のような3行の表を、 0001 | 犬 猫 0002 | 猿 狐 0003 | 犬 猿 狐 以下のような動物種ごとに行をわけたい。 0001 | 犬 0001 | 猫 0002 | 猿 0002 | 狐 0003 | 犬 0003 | 猿 0003 | 狐 エクセルはつかえますが、マクロはつかえません。 テキストエディターはサクラエディターをつかっています。

みんなの回答

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.2

作業列とか使えば出来ると思いますが。 > 0003 | 犬 猿 狐 「犬 猿 狐」は別のセルなんでしょうか?1つのセルに空白区切りで入力されてるんでしょうか? 動物種は常に1文字? 1行に入ってる最大の項目数は決まってる? なんかの条件で、やり方変わります。 -- シート名「Sheet1」のA1からセルごとに項目が入ってて、項目の最大数は9だとして、 Sheet2に、 A1:=OFFSET(Sheet1!$A$1,INT((ROW()-1)/10),0) B1:=MOD(ROW()-1,10) C1:=OFFSET(Sheet1!$A$1,INT((ROW()-1)/10),B1+1) と入力、A~C列を下向きにコピー 0001 | 0 | 犬 0001 | 1 | 猫 0001 | 2 | 0 ~ 0001 | 9 | 0 0002 | 0 | 猿 0002 | 1 | 狐 って具合に並ぶので、全体選択、コピー、値を貼り付け。 C列で並べ替えして「0」を削除。 A列B列で並べ替え。 B列を削除 で処理完了とか。

hide_momiji
質問者

お礼

ありがとうございました。「犬 猿 狐」は同じセルにあったので、それをどうセルにわけるか、でなやんでいました。ご回答ありがとうございました。よくわかりました。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

なぜMySQLの板できく? エクセルならいちばん左の列をコピーして各列に挿入し一度こんな感じにして 0001 犬 0001 猫 0001 0002 猿 0002 狐 0002 0003 犬 0003 猿 0003 狐 これを 3、4列目の先頭から最後までコピーして1,2列目の最終行以下にはる 同様に5,6列も1,2列に 0001 犬 0002 猿 0003 犬 0001 猫 0002 狐 0003 猿 0001 0002 0003 狐 動物がからのデータができるのでフィルタ機能をつかってデータがない行を表示して 全部選んで行削除しフィルタを解除すれば 0001 犬 0002 猿 0003 犬 0001 猫 0002 狐 0003 猿 0003 狐 最後に一番左の行でソート 0001 犬 0001 猫 0002 猿 0002 狐 0003 犬 0003 猿 0003 狐

hide_momiji
質問者

お礼

ありがとうございました。よくわかりました。ただ、各列に追加していくと、膨大な列の追加が必要で、時間かかってしまったので別の方法でやりました。でもひとつの解決方法でした。感謝です。