• ベストアンサー

エクセルで、異なる列のデータも一緒に並べ替えたいのですが

エクセルの並べ替えについての質問です。 同じシート内に、データの入ったセル(重複なし) が大量にあるのですが、一気に並べ替える方法が わからず困っています。 例えば  4 1 2 5 3 6 7 4 9 8 のように3列あるデータを、  1 2 3 …のように縦1列一緒にしてソートしたいのですが、 方法がわかりません。 どなたか教えていただけると助かります。 よろしくお願いいたします。

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

  • ベストアンサー
回答No.3

データと行番号を混同しますので、例データを変えますが、    A B C D  1 h a b  2 e c f  3 g d i と並んでいるとして―― 1.次のように入力します。    D1:'=A1    D2:'=B1    D3:'=C1  ※ 'を忘れないように! 2.D1:D3 を選択し、D列下方に必要行までドラッグコピーします。 3.D列範囲が選択状態で、[データ]-[区切り位置]-[完了]。 以上の操作でデータがD列に並びます。 以前にどこかで仕入れたワザですが、これにソートをかければよいでしょう。

rin1833
質問者

お礼

早速ありがとうございます! 名簿など、他にも応用できそうですね。 また試していませんが、何とか出来そう です。助かりました。 本当にありがとうございます!

その他の回答 (4)

  • endorin
  • ベストアンサー率60% (3/5)
回答No.5

ランダムなセルに入力された値を同じ縦の1列に書き出すというマクロを作りました。 もし、マクロに抵抗がなかったら参考にしてはいかがでしょうか? 【処理】 ・A1~E5までのセルにランダムに数字が入っていることを想定しています。 ・A1~E5までのセルを一つずつ順に読み込んでいきセルの内容がブランクでなかっ  たらまったく関係のない行にその数値を書き出していきます。 ・最後にエクセルのソート機能を利用してご自分でソートしてください。 ↓これをツール⇒マクロ⇒Visual Basic Editorの標準モジュールに  コピーして実行してください。 ☆ここからが処理☆  Sub 並べ替え() Dim Celpos As Integer 'セル横の位置 Dim Rowpos As Integer 'セル行位置 Dim cnt As Integer '書き出しカウント cnt = 1 '書き出し 初期値 '行をループさせる。 For Rowpos = 0 To 4 '  列をループさせる。 For Celpos = 0 To 4 'セルの内容が空白ではなかったら書き出しの処理をおこなう。 If Cells(Rowpos + 1, Celpos + 1) <> "" Then Cells(cnt, 8) = Cells(Rowpos + 1, Celpos + 1) '書き出しの位置に1を増やす cnt = cnt + 1 End If Next Next End Sub

rin1833
質問者

お礼

早速ありがとうございます。 実はマクロは手をつけたことがないので、 くらくらしてしまったのですが…。 勉強だと思って頑張ってみます!

回答No.4

#3の補足です。 ソートをかける前に、D列を同じD列に値形式でコピーしてください。

rin1833
質問者

お礼

こちらもありがとうございます。

  • k-family
  • ベストアンサー率34% (180/523)
回答No.2

やはり面倒ですが、A列の下にB列の内容を、さらにその下にC列の内容を移動してから並べるのが良いかと思います。 3列だけならそれほどの手間ではないと思いますが。

rin1833
質問者

お礼

早速ありがとうございます。 実は74列×350行もあるので…方法が全くない ようならばあきらめて手作業するつもりです。 また何かありましたら宜しくご教示下さい。

  • sydneyh
  • ベストアンサー率34% (664/1947)
回答No.1

Ecelの並べ替えは、同列/同行での整列しか出来ません。 列と行両方を元にした並べ替えは出来ません。

rin1833
質問者

お礼

早速ありがとうございます。 また何かありましたら宜しくご教示下さい。

関連するQ&A

  • excel、重複があるかを調べたい

    関数初心者です。質問させて下さい。 excelでsheet1のAセルに文字列を入力しました。 このsheet1内はsortしフィルターをかけたので重複はありません。 1000行程の語句ですが、このsheet1内の語句を別sheetや別のexcelファイルで重複がないかを 調べたいのですが、良い方法が分かりません。 教えていただけますでしょうか。 宜しくお願いします。

  • Excel の列の重複データ検出

    Excel のシート上のある列の重複するデータを検出する方法を教えて下さい。

  • エクセルの並べ替えで項目も一緒に並べ替えられてしまいます

    五十音順のふりがなの列を選択し、並べ替えをしたいのですが、項目も一緒に並べ替えられてしまいます。データのみを選択してソートすると、五十音順ではなく並べ替えられています。項目を一緒に並べ替えない方法と、並べ替えでの優先順位を教えてください。よろしくお願いします。

  • Excelで行方向に並んだデータを列に

    こんばんは。 質問タイトルをどう書いていいのかわからず、わかりにくくてすみません。 こういうExcelの表があります。 A表 A列 B列 No  code   1  10 1  11 1  12 2  10 3  14 4  14 4  15 それを次のようにしたいと思ってます。 B表 A列 B列  C列  D列 No  code1 code2 code3 1  10   11  12 2  10 3  14 4  14   15 A列にあるのがサンプルNoで、それぞれに対応するコードが縦に並んでいる(A表)のを、サンプルNoを重複させずにコードを横に展開(B表)したいのです。 今は各サンプルで重複しているコード数を出して、2以上だったらif関数で横に持っていくという非常に面倒な方法を取っています。 他によい方法はないでしょうか。なお、マクロは嫌がられるので使えません。 データ数よりもシート数(1シートに1つの表)が多く、できるだけ簡単な方法があれば教えていただけますでしょうか。 以上よろしくお願いします。

  • Excelで隣り合う列にあるデータの重複チェック

    Excelで同一のシート上の隣り合う列に入力されたデータの重複チェックをする方法が知りたいです。 例:A1とB1にそれぞれデータ(長文もあり)が入っていて、それぞれのデータが重複していればC1に「重複あり」などと表示させるための数式が知りたいです。 いろいろとやってみたのですが、どうもうまく行きません。 よろしくお願い致します。

  • エクセルで同じシート内でデーター検索方法

    エクセルで同じシート内でデーター検索方法 A1のセルからA1、A2、A3・・・と縦にに100以上のデータがあります。 B1にも同様にデーターがあります。 ある文字列の組み合わせが重複しているもののみを検索したいです。 検索結果として一番望ましいのは、別のセルに抽出ですが、対象となったセルに色づけでも良いです。 文字で表すのは難しいので、添付画像のようにしたいです。 説明下手でわかり難いかもしれませんがすみません。 Excel2000です WinXP HomeedtionSP3

  • エクセルの列の限界は255列以上にはできないのですか?

    エクセルで列に1000ほどのデータを入れたいのですが、縦(行)には100000でも入るのですが、横(列)の限界は255セルしか入りません。 どうにかできる方法ってあるのでしょうか?

  • Excelでデータの移動を方法

    Excelでデータを移動したいのですが、大量にありどうしようか困っています。 具体的には、シート1のA列に移動したいデータがあり、それを各シート(シート2・3・4・・・)の決められたセルにそれぞれ移動したいのですが、簡単に出来る方法などがありましたら、教えて頂けると助かります。 宜しくお願い致します。 ※Excel2007を使用しています。

  • エクセル 複数列選択して一列にソートできますか?

    エクセル 複数列選択して一列にソートできますか? sheet1 A1~G10 のセルに文字列(名前)がランダムに入力されているとします。空白もあります。このデータは他ファイルからコピーしたものとします。これをsheet2のA列にソートすることはできますか?

  • エクセルの保護されたシート内のデータの編集について

    エクセルでC~E列のみロックをはずしてシートの保護を行いました。この状態でC~E列のデータを含むすべてのデータの「並べ替え」や、列を「表示しない」などの操作を行いたいのですが、シート全体が保護されているためできません。うまく操作する方法はありますか?セルの値のみが保護される状態が理想です。

専門家に質問してみよう