アプリ版:「スタンプのみでお礼する」機能のリリースについて

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

A 回答 (2件)

> 効率よく行う方法がありましたら、



グループ化を行っていると、いい感じで処理してくれるみたいです。
[-]ボタンでリストを畳めますし、便利です。

データ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にして下さい。
    • good
    • 1
この回答へのお礼

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

お礼日時:2005/05/26 23:35

あまりスマートな方法ではないと思うのですが、お急ぎのようですので。



仮に、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列は削除

お試し下さい。
    • good
    • 0
この回答へのお礼

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

お礼日時:2005/05/26 23:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!