• ベストアンサー

【Excel】小計単位で並べ替えを効率よく行いたいのですが・・

Excelのリストで、約20行おきに小計行があります。その小計の単位で、数値を対象に並べ替えを行いたいのですが、効率よく行う方法がありましたら、ご伝授ください。 なお、行数はデータの変化に伴い毎回異なります。 WindowsXP・Excel2003です。

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

  • ベストアンサー
  • hirumin
  • ベストアンサー率29% (705/2376)
回答No.2

あまりスマートな方法ではないと思うのですが、お急ぎのようですので。 仮に、A列に数値と小計(SUM関数)のみがすき間無く入っているとして、です。 【1】A列を選択し、置換で「=」を適当な文字に変換します(ここでは「(=)」にしたとします) 【2】隣の列(B列)へは1,2…と行番号と同じ物を入力。(「1」,「2」まで入力して2セルを選択し、選択枠右下の小さな黒四角をダブルクリックすると便利) 【3】更に隣の列(C列)には、1行目は「0」2行目には『=IF(TYPE(A1)=1,C1,C1+1)』と入力して、データ分だけ下へコピーします(前の手順と同様、右下四角ダブルクリックでOK) 【4】C列を選択してコピーし、そのままC列へ「形式を選択して貼り付け」で「値」として貼り付けます。 【5】A,B,C列を選択し、メニューバーの[データ]→[並べ替え]を選択。C列、A列、B列の順番で昇順にしてソートします。 【6】A列を選択し、置換で「(=)」を「=」に変換(戻)します。 【7】B,C列は削除 お試し下さい。

ohaziki
質問者

お礼

ありがとうございました。 Excelとにらめっこして、なぜ正確にソートできるのか、なんとか理解できました。 関数も機能も、知ってはいても、hiruminさんのように複雑に組み合わせるには至りません。感嘆です! ただ、仕事で毎回使うとなるとちょっと作業が複雑です。もう少しだけ”スマートな方法”ありましたら、またご伝授ください。

その他の回答 (1)

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

> 効率よく行う方法がありましたら、 グループ化を行っていると、いい感じで処理してくれるみたいです。 [-]ボタンでリストを畳めますし、便利です。 データA_01 データA_02 ~ データA_19 小計A データB_01 データB_02 ~ データB_13 小計B ~ ~ データA_01からデータA_19の行を選択します。 [データ]-[グループとアウトラインの設定]-[グループ化] を各データに行い、 ┏データA_01 ┃データA_02 ┃~ ┃データA_19 [-]小計A ┏データB_01 ┃データB_02 ┃~ ┃データB_13 [-]小計B  ~  ~ の状態にします。 [-]が上にきちゃう場合は、[データ]-[グループとアウトラインの設定]-[設定]で「詳細データの下」をONにして下さい。

ohaziki
質問者

お礼

ありがとうございました。 グループ化の機能はよく使いますが、小計を対象に並べ替えができることは知りませんでした。 でも、今回は詳細データを対象に並べ替えしたいので・・・m(__)m

関連するQ&A

  • Excel2007:ブロック単位での並べ替え

    Excel2007:ブロック単位での並べ替え Excel2007で名簿を作成しています。 新規のデータがあれば、表の一番下に足していくのですが、 新規データを入れた後にあいうえお順に並べ替えをしたいと思います。 名簿にはたくさんの項目があり、1件につき 4行7列 を使用しており、 セルの結合をしている個所もあります。 上手く並べ替える方法を教えていただきたく、ご質問させていただきます。 表の形式については、画像を添付いたしましたので、ご覧いただけましたらと思います。 お詳しい方、どうぞよろしくお願いいたします。

  • Excel2003での並べ替えについて

    行を上から 1>1A>1B>2>2A>2B・・・15>15A>15B という順序で 並べ替えしたいのですが、可能でしょうか? 対象行のセルを書式設定で文字列や数値に変換してみたのですが 意図したようには並べ替えができませんでした。 何卒ご教示の程、宜しくお願い致します。

  • Excel並べ替えのストレス(^^;

    MS Excel で並べ替えをするときは、全選択→ボタン、を普段使用しています。 ときどき非常にいらいらしてしまうのですが(^^;、選択範囲の一番上の行がタイトルかデータかをExcelは勝手に認識しますよね。タイトルを含めているときにはデータとして認識されて、「もー」と思いつつ、タイトルを対象外にしてボタンを押すと、今度はデータの一番上をタイトルと認識してくれます。「くっそー」と思いながらウィザードを起動します(TT) タイトル行をボールドにしたり、セルに着色したりして、間違いづらいように工夫もしているのですが、それでも思うような並べ替えができないことがちょくちょくあります。 なんとか確実に、ボタンを使って思い通りの並べ替えができるようにならないでしょうか。ご存知の方、どうか教えてください。

  • Excelの行方向での並べ替え

     行方向に順序がバラバラで入力されている日付データがあります(表1参照)。これを日付の若い順に1列ずつ行方向に並べ変えたいと思っています(表2参照)。  「データ」→「並べ替え」→「オプション」→「列単位」にすることで1行ずつ行方向の並べ替えができることは知っていますが、行数が多いため一括して並べ替えができないか考えております。  どなたかご教示いただければ幸いです。なお、Excel2007を使っています。      A          B        C 1  1996/11/07 1997/02/19 1996/11/21 2  1997/02/19 1997/02/19 3  1996/11/21 4  1997/02/19 1996/11/21 5  1997/02/19 1997/11/06 1997/02/19      ・      ・       (表1:並べ替え前)        ↓ (並べ替え)      A         B         C 1  1996/11/07 1996/11/21 1997/02/19 2  1997/02/19 1997/02/19 3  1996/11/21 4  1996/11/21 1997/02/19 5  1997/02/19 1997/02/19 1997/11/06      ・      ・      (表2:並べ替え後)

  • Excelで複数列かつ複数行分の一括並べ替えについて教えてください

    Excel2003を使っています。 【例】 A1:N530の表の中の一部分D1:I530範囲(6列で530行)部分のみを 列単位で一括で並べ替えしたいと思っております。 D1:I530範囲には6列に23、96、11、106、72、49といったように530行全てランダムに数値が入っております。これを各行毎に全て左から昇順に530行分一括並べ替えしたいということでございます。 エクセル機能の「データ」→「並べ替え」→「現在選択する範囲を並べ替える」→「オプション」→「列単位」を指定して列単位に並べ替えは出来たのですが1行ずつしかソート出来ません。 このやり方では530回並べ替え作業をすることになり、時間的に余裕がないのでこの場合にExcel2003の機能で一括で530行分を列単位でもって左から並べ替えをする方法があるでしょうか? ちなみにExcel2007もまだ使ったことないですが所持しています。 仕事上緊急でご質問させていただいております。是非助けてください。

  • エクセルの小計(集計)を実行したデータに罫線を引く

    エクセルに標準装備されている小計(データ⇒小計)機能は便利でよく使用しているのですが、集計結果行(xxx集計と表示される行)以外のデータに罫線を引きたいのですが、行数が多くて苦労する場合があります。 添付ファイルの様に集計行以外のデータ行に自動で罫線を引くマクロやVBAがあればご教示願います。 ※当然ですが、集計行以外のデータ行の行数は毎回変動します。 

  • Excel2007行と列の並べ替え

    添付の画像のエクセルシートには、B3:B8(行)に数値が記入されています。 これらの数値をC2:H2(列)に並べ替えをするにはどうしたらよいでしょうか? ご存知の方ご教示願います。

  • エクセルの小計を自動的に色づけするには

    こんにちは。 仕事で使用しているのですが、エクセルの「小計」で出てくる行を自動的に色づけする方法があれば教えていただきたいです。毎回、データを追加で入力するたびに小計を外して、また小計を出してセルを色づけしているので大変手間がかかっています。 会社のPCのエクセルはXPの2003を使用しています。 よろしくお願いします。

  • エクセルのグループごとに集計をした表の並べ替え

    エクセルで入力した表を、データ→集計を使ってグループごとに小計を出しました。 そこで、次にこの小計の数値を基準として並べ替えをおこないたいのですが、どうやればいいのかわかりません。小計のみを表示して、他のシートにコピーすると、データ全てがコピーされてしまいます。 私が欲しいのは、各グループの小計のみが表示されている表なのですが、そういうことはできないのでしょうか?ご教授願います。

  • Excel2010の並べ替えで行の高さを維持したい

    EXCEL2010の並び替えでは、その行の行の高さを変えないで並び替えはできないでしょうか。セル内の日本語メモが全部印刷されるように高さを調整しても、並べ替えすると調整し直しになって困ってます。 Excelの[オプション] → [詳細設定] → [挿入したオブジェクトをセルと共に切り取り、コピー、並べ替えを行う] チェック しております。また、シート全体を指定(ctl-Aでも左上隅クリックでも)しても、高さが変わってしまいます。 新しいBookのシートにコピー(ctl-a 、ctl-cしてctl-v貼り付けですが)してもダメなようです。 並べ替え前後を比べると、行の高さは並べ替え前の行のそれが維持されるように見えています。並べ替え前の行aが10なら、並べ替え後の行aが10になるようです。

専門家に質問してみよう