- ベストアンサー
エクセルでデータを並べ替えたい
歯抜けのデータをきれいに並べ替えたい 例 2 元木 大介 5 清原 和博 6 小久保 裕紀 7 二岡 智宏 これらのデータを 1 2 元木 大介 3 4 5 清原 和博 6 小久保 裕紀 7 二岡 智宏 としたいのです データ量が半端じゃないので・・・ お願いします
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
ばらばらなら、シート1のA1からB7に元のデータが入っているとしましょう。 別シートのA列に連番を必要な範囲に付けて下さい。1001を入力して、右クリックしながら、ドラッグして連続データ そして、B1に =IF(ISERROR(VLOOKUP(A1,Sheet1!$A$1:$B$7,2,FALSE)),"",VLOOKUP(A1,Sheet1!$A$1:$B$7,2,FALSE)) と入力する。これはそのまま下にドラッグしてコピー。 Sheet1!$A$1:$B$7は元データの有る範囲。選択したらF4を押し行列絶対参照にして下さい。A1は連番の有るセルこちらはそのままの行列相対参照。 基本的に空欄の表示になりますが、中には式が入っているので、後でまた並べ替えなどをすると、普通には行かないので、この2列をコピーして、形式を選択して貼り付けから値を選択して貼り付けると、空欄になります。 このような方法でいかがですか。
その他の回答 (4)
- keirika
- ベストアンサー率42% (279/658)
元データがA列に番号、B列に名前が入っていると仮定します。 C1セルに1を入れ、オートフィルでC列に連番を作ります D1セルに=IF(ISERROR(VLOOKUPC1,A:B,2,0)),"",VLOOKUP(C1,A:B,2,0)) を入れ、オートフィルで下方向へコピーします
- dejiji-
- ベストアンサー率38% (327/858)
2元木 大介 とあるのは、一つのセルですか。それとも、2と元木大介は別のセルですか。それによっても回答が変わると思いますが。別のセルならば関数を使いできますが。
お礼
いやいや 写さなくてもいいんです、そのまま並べ替えてもいいんです
補足
説明不足で申し訳ない A B 1002 1002 本木 大介 Aが4桁の数字、Bが4桁の数字+名前 2列のデータリストです 並べ替えは1003や1004の抜けを空白として表示させたいのです 抜けた数だけ行をずらして C もしくは別のシートに写せますか? うまく伝わったかなあ?^^;
実際には、先頭に入っている数値部分は1桁ではないんですよね? あと、数値と文字の間に入っている区切り形式は半角スペースでよろしいでしょうかね。 まっ、実際の値が書かれているとそれに応じて関数を作れるのですが、 3桁数値+文字を半角スペース区切り、として回答しますね。 (実際の文字列に当てはめて、修正してください) A列を作業列として追加します A1に =TEXT(LEFT(B1,FIND(" ",B1,1)),"000") と入力 FIND(" " の 「" "」は半角スペース。区切り文字にする 「"000"」の部分は数値の桁数分「0」を指定 ソートを表示したい列の1行目に =IF(ISERROR(VLOOKUP(TEXT(ROW(),"000"),A:B,2,FALSE)),TEXT(ROW(),"000"),VLOOKUP(TEXT(ROW(),"000"),A:B,2,FALSE)) と入力し、下方向へ複写 ここも、「"000"」の部分は数値桁数にあわせて修正してください
お礼
何度も補足してすいません #3の補足に再度補足します C D にもデータがあります4列のデータリストでした 行のデータはそのまま変わらず移動もしくは複写したい 例 A B C D 1002 1002 元木 大介 30 セカンド 1005 1005 清原 和博 36 ファースト 1006 1006 小久保 裕紀 33 サード 1007 1007 二岡 智宏 29 ショート これが A B C D 1002 1002 元木 大介 30 セカンド 1003 1004 1005 1005 清原 和博 36 ファースト 1006 1006 小久保 裕紀 33 サード 1007 1007 二岡 智宏 29 ショート こんな感じです
補足
トライしたのですが A B 2 元木 大介 1 5 清原 和博 2 6 小久保 裕紀 3 7 二岡 智宏 4 というふうになってしまいます
- mi-tan
- ベストアンサー率32% (26/79)
まず、範囲をマウスでドラッグして選択してください。 その後、並べ替えをしたら・・・ 隙間が開いていても並べ替えはできますが・・・ たとえば名前を昇順にした場合、 上位に来るのは、空白行になってしまいます。
お礼
なんとか出来ました
補足
補足します C D にもデータがありましたすいません 4列のデータリストでした 行のデータはそのまま変わらず移動もしくは複写したいのです 例 A B C D 1002 1002 元木 大介 30 セカンド 1005 1005 清原 和博 36 ファースト 1006 1006 小久保 裕紀 33 サード 1007 1007 二岡 智宏 29 ショート これが A B C D 1002 1002 元木 大介 30 セカンド 1003 1004 1005 1005 清原 和博 36 ファースト 1006 1006 小久保 裕紀 33 サード 1007 1007 二岡 智宏 29 ショート ちなみに2列ではうまくいきました