Excelで2行単位のソートの方法とは?

このQ&Aのポイント
  • Excelでデータの並び替えやフィルタ処理をする際、1行単位ではなく2行単位で行う方法を知りたいです。
  • 2行単位で項目を設定し、データの並び替えやフィルタを行うと、入力が楽になります。
  • Excel初心者の方でも簡単に使える方法を教えてください。
回答を見る
  • ベストアンサー

Excelで2行単位のソートの出来る方法があれば教えてください。

Excelはとっても便利ですが、データの並び替え・フィルタ処理をするには、1行単位で行うようです。 項目が多い場合、1行単位でデータを記入すると横(若しくは縦)に相当広がり入力が大変不便です。 そこで2行単位で項目を設定して入力しますと約半分の長さになり、入力もしやすくなります。 そこでご質問ですが、このような2行単位でのデータの並び替え、又はフィルタを使う場合、1行単位でソートされてしまいデータがめちゃめちゃになってしまいます。 どなたか、もしExcelでデータの並び替え、又はフィルタを行う場合、2行単位で出来る方法をご存知でしたら教えて頂けないでしょうか。 当方、ちなみにExcelにおきましては、簡単なマクロ処理などを行う知識ぐらいです。 Excel VBA につきましては、ボタン等の設定程度です。 以上、よろしくお願いします。

  • KS125
  • お礼率56% (23/41)

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

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.3

【サンプルデータ】    A  B  C 1  22  AA  AA 2  AA  AA  AA 3  11  BB  BB 4  BB  BB  BB 【手順】 1. 作業列D列に連番を振る 2. 次の計算式を入力(A1,A3をキーにしてソートする場合)   E1 =A1 , E2 =D1   これで、E1:E2を選択し、データ終端までオートフィルでコピー 3. E列をコピーして、値で貼り付け 以上で次のような表になります。    A  B  C  D  E 1  22  AA  AA  1  22 2  AA  AA  AA  2  22 3  11  BB  BB  3  11 4  BB  BB  BB  4  11 4. A1:E4を選択し、一番目のキーをE列、二番目のキーをD列でソート これで、    A  B  C  D  E 1  11  BB  BB  3  11 2  BB  BB  BB  4  11 3  22  AA  AA  1  22 4  AA  AA  AA  2  22 このようになりますので、作業列を削除します。 、、はずしてますか?

KS125
質問者

お礼

大変参考になりました。 ありがとうございました。 また、何かございましたらよろしくお願いします。

その他の回答 (2)

回答No.2

 わたしは、つぎのように工夫しています。空白の新しい列(できれば A列)に、仮の通し番号(仮通番)を、連続入力します  最初の2行に #0001 #0002 を(必要な桁数で)入力しておきます。    最後の行から #0001 までのセルを選択します。  編集(S)→フィル(I)→連続データの作成(S)→  行(S)オートフィル(E)OK    これで、すべての行がバラバラになっても、A列さえソートすれば、 もとの順序にもどせます。つぎに、他の新しい列(できればB列)に、 こんどは奇数行だけ*(米印)を入力します。    以上で、すべての行がバラバラになっても、A列さえソートすれば、 もとの順序にもどせます。こうしておけば、奇数列だけソートしたり、 偶数列だけ並べ替えることもできます。

KS125
質問者

お礼

ありがとうございました。

  • dac203
  • ベストアンサー率43% (92/212)
回答No.1

「オートフィルタのオプションでor条件を指定する」というのでは面倒でしょうか。 個人的には2行に渡ってデータを作成するというのはあまりお勧めできません。ただの表であれば良いですが、集計・分析を行うためのデータであるならば2行で1セットというデータは非常に扱い辛くなると思います。 入力だけの問題であれば、入力シートとフィルタをかけるシートを分ける(入力シートにセル参照をする)といった方法はどうでしょうか?

KS125
質問者

お礼

ありがとうございました。

関連するQ&A

  • EXCELのVBAでのsortについて

    EXCELでVBAを使ってsortしているのですが 1行目が項目行にもかかわらずデータとみなされて 並び変えられてしまいます Header:=xlGuess としているのですが・・・ 条件指定していて 同じデータで並び順を変えてsortかけると そちらはきちんと項目行が判断されて 正しく並び変ります とても困っています どうかご指導下さい

  • エクセルでのソートについて

    エクセルで縦方向(複数列)にデータを入れていっているのですが、 その中の1つの列のデータを昇順とかでソートしたときに、 その列しかソートされません。 行単位で意味を持ったデータなので、 どこの列でソートしても行も追随してソートしたいのですが、 どうすればいいのでしょう?

  • エクセルのソート(行)について

    エクセルで作成した行単位のデータを、ある列の値 でソートしようとしたら、以下の様なエラー表示が でました。 「この操作には、同じサイズの結合セルが必要す。」 どの行にも同じ列を対象に結合セルがありますが、 このような場合はソートできないのでしょうか? (各行ともセルの書式は同じです。) エクセルのバージョンは、EXCEL2000 9.0.3821 SR-1 です。 ご存知でしたら教えて下さい。

  • EXCEL で複数行を1単位としてソートかけたいのですが

    EXCEL で複数行を1単位としてソートかけたいのですが ご存知の方教えてください。 例えば 第8号   安部なつみ   東京都○○区   090-1234-5678 第3号   井川遥   千葉県ちば市○○町   080-1234-5678 第4号   上戸綾   群馬県○○市   090-9876-5432 こんな感じで 4行1単位のデータを号でソートできませんか? よろしくお願いします

  • エクセルで複数行を1データとして処理したい

     エクセルの表が、複数行づつで1つのデータになっています。  もう少し具体的に言うと、販売データの表なのですが、横軸が年月、縦軸が顧客毎に売上、回収、売掛金残の3行に分かれています。つまり、1つの顧客に3行づつデータが入力されているのです。  この表を活かして、ソートやフィルタなどの機能を使えるようにできないでしょうか?  また、VBA等を使って処理する場合に1纏まりのデータとして処理する事は可能でしょうか?  実は諦めてかけていたのですが、何か良い方法をご存知でしたら教えて下さい。

  • エクセルで行をソートする方法

    はじめまして、PCにあまり詳しくないもので質問させていただきます。エクセルで列をオートフィルターを使ってソートするように行をソートする方法はあるのでしょうか??困っています。どなたか分かる方がいました是非お教えください。 宜しくお願いいたします。

  • EXCEL2000 複数行のソート方法について

    EXCEL2000 複数行のソート方法について教えて下さい。 EXCELのVBA(マクロ)にて、シート上の複数行をソートしたいと考えています。 エクセル上では、3つの行に対してソートができるのは知っています。 その操作をマクロに記録して、そのVBAを変更して5つの行に対して ソートを一括で行おうとしたのですが、エラーとなってしまいました。。。 以下が記録したVBAです =================================================================== Selection.Sort Key1:=Range("C15"), order1:=xlAscending, _ key2:=Range("G15"), order2:=xlAscending, key3:=Range("h15"), order3:=xlAscending, _ header:=xlGuess, ordercustom:=1, MatchCase:=False, Orientation:= _ xlTopToBottom, sortmethod:=xlPinYin =================================================================== このVBAを変更して3つ以上の行に対して一括でソートは出来るでしょうか? この方法ではやはり無理でしょうか? VBAを2つに分けてやる方法は最後の策だと考えています。 それ以前に2つに分けて出来るのか分からないのですが。。。 知恵をかして下さい。宜しくお願い致します。

  • エクセルVBAでの並び替えについて

    エクセルでデータの並び替えの方法が分からなくて質問します。たとえばBの列の100~999、A100~A999、B100~B999のようなデータが縦に入っているものとします。この中には150-1、150-2のようなデータも混ざってます。これをそのままエクセルで並び替えをしても100~999までは上手にできるのですがその後に150-1とかきてA100~が始まります。例えばこのデータを100~始まり149、150-1,150-2、152,153、154のように上桁から基準に並び替えを行いたいのですがいい方法はありませんか?現在はマクロを使ってVBAでSORTの引数を触ったりしたのですが上手にいきません。基本的にVBAで行っているのでVBAでお願いします。初心者なのでよろしくお願いします。

  • 「ツールソートでできない並び替えについて」

    「ツールソートでできない並び替えについて」 データとしては、横に5項目ほどあり、どんどん追記していけるように余裕を 持たせて空白列があります。 それを色々なパターンで並び替えをするよう設定するのですが、あるパターン (集団)の文字列に半角字(他全角)が混ざっているため、最前列になります。 その文字列を最後尾にしたいため条件にフリガナ”ワ”を追加してみたのですが、 空白行が前にきてしまいます。 最終は並び替えパターンごとに連番をふるため空欄が邪魔になります。 今は最終手作業編集ですが、並び替えの条件設定もしくは、空白行の削除を マクロに組込めればと思っています。 ただ当方マクロ初心者のため、VBAでの編集はできません。 簡単なツールでの作業レベルを教えていただきたいと思います。 よろしくお願いいたします。

  • excelでのソートについて

    ソートをしようと考えています。 通常のソートではなく、2行目以降をソートすることは可能でしょうか? (1行目は「項目」が入っているので。。。) さらに、この処理ができると仮定して、 csvファイルを読込んだ直後に自動的にソートできるでしょうか? 平たく説明すると。。。 1クリックで自動的に決められた所に格納されている csvファイルをエクセルに読込んで、2行目以降を 自動的にソートできないか?ということなのですが。 宜しくお願いします。

専門家に質問してみよう