• ベストアンサー

[Excelマクロ]集計結果及ぶ降順での並べ替え

添付ファイルのような行列が商品コードのテーブルがございます。 (実際の行数はもっと多いです) 作成したいのは、黄色セルです ・I列に各行の合計 ・K列へ合計の降順に商品コードの並べ替え、L列にその合計 ・同額は検索順で配置 Office 365を使用しています。 マクロではどうのよに記述したら良いでしょうか?

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

  • ベストアンサー
  • SI299792
  • ベストアンサー率48% (715/1479)
回答No.1

行数が書いてありません、1行目が項目名、2行目からデータとします。 関数 I2: =SUM(B2:H2)+ROW()/10000 K2: =INDEX(A:A,MATCH(L2,I:I,0)) L2: =LARGE($I:$I,ROW()-1) I,L列、セルの書式設定、ユーザー定義「0」 でできます。但し、この場合、合計に誤差が出るので、合計の更に合計など、計算には使わないでください。 必要なら別に=SUM(B2:H2) を設けて下さい。 VBA の場合 Option Explicit ' Sub Macro1() Dim Rend As Long ' Rend = [A1].End(xlDown).Row Range("I2:I" & Rend) = "=SUM(B2:H2)" Range("A2:A" & Rend).Copy [K2].PasteSpecial xlPasteValues Range("I2:I" & Rend).Copy [L2].PasteSpecial xlPasteValues Range("K2:L" & Rend).Sort Key1:=[L2], Order1:=xlDescending End Sub

genesis50
質問者

お礼

ありがとうございました。 初めて使用する関数ばかりで勉強になりました。

関連するQ&A

  • エクセル グループ化したまま並べ替えがしたい

    エクセルで行の商品リスト 行1 2 3 4 5 6並べ替えで 1 2グループ 3 4 グループ 5 6グループ で並べ替えをしました。 グループ化は行12を選択してではなく1のみを選択して下の行2とグループ化しました。 12を選択してグループ化をすると3が含まれてしまうので上記のようにグループ化しました。 すでにまちがいでしょうか? 列には商品名 コード 納期 等々 グループをとじて(+)全列行を選択して並べ替え(納期列を優先)をしたところ 各行で納期順にはなったのですが 123456がばらばらにグループ化されていました。 商品順 コード順 納期順 いづれの並び替えでもグループ化が固定されるようにしたいです。 どうすればよいでしょうか? 数が多いのでできるだけリストの内容をいらわない方向で(1と2を同じ行にまとめてしまうとかはしたくないです)

  • Excelの並べ替えをマクロで実行したら・・・

    Excelの並べ替えをマクロに登録しました。その日の作業ではうまく動くのですが、後日、元のデータを変えて実行したらおかしくなります。具体的には、B列を降順で並べ替えをしたら、その他の列が並び替えられないのです。その日に電源を入れなおして実行しても、うまく並び替えできるのですが、後日実行したらおかしくなります。ちなみにTODAYとかは入っていません。WinXPでExcel2000です。宜しくお願いします。

  • エクセル(マクロ含む)で、列の並べ替えはできますか?

    エクセル(マクロ含む)で、列の並べ替えはできますか? 例えば、 A1  B1  C1  D1  E1 名前  ナシ  カキ  蜜柑  モモ 価格  80  50  45  95 人気   3   4   2   1 個数  35  90  80  20 という表において、 価格、人気、個数、それぞれの指標をもとに、 B1~E1までの列を、降順・昇順に並べ替えたりしたいのですが、 そんなことは可能でしょうか? 例えば、人気の指標で、降順に並べ替えるとすると、 E列(モモ列)がB列に来て、以下同様に、 D列(蜜柑列)がC列に、 B列(ナシ列)がC列に、 C列(カキ列)がE列に来るような形で、並べ替えが行われます。 並べ替えが行われるのは、あくまで、「列」において、です。 よく見かける「『行』が移動するような並べ替え」とは異なるものですので、 誤解無きよう、宜しくお願い致します。 以上、どなたか、お分かりになるかた、色々とお教示下さい。 必ず、お返事とポイント付与を行います。

  • Excel並べ替えマクロ

    よろしくお願いします。 Excel並べ替えマクロについて質問なのですが、画像を見ていただきたいのですが、 前提条件としてL列~S列までは画像とるために非表示にしてあります。 又非表示にしてありますがQ列は区切り線でQより右側と左側は支店Aと支店Bのデータになります。※左側データの支店Aのデータを基準にします。 (1)D列を名称ごとに並べ替えします。 (2)E列を名称ごとに並べ替えします。 (3)E列の名称ごとにJ列の高い順に並べ替えします。 (4)左側の支店Bも基準となる支店Aと比較できるように横並びに見れるようにします。 (5)横並びにできたらE列の名称ごとに太線で分けます。 どうぞよろしくお願いいたします。

  • 集計マクロ

    こんにちは。 早速ですが、例えばこんなカンジです。 [元データ(Sheet1)] [1] 鈴木| 佐藤| 山田|・・・ [2] 茶 | 水 |    | [3] 魚 |    | 酒 | [4]    | 肉 | 茶 | [5] 肉 | 茶 | 魚 | 上記のようなデータから↓↓↓ 1.行ごとに種類別に並べ替え 2.'=count(A2:D2)のような種類別の行集計列([数])を追加 3.[数]を基準に降順に並べ替え ↓↓↓ [集計データ(Sheet2)] [1] 鈴木| 佐藤| 山田|・・・| 数 [2] 茶 | 茶 | 茶 |・・・| 3 [3] 肉 | 肉 |    |・・・| 2 [4] 魚 |    | 魚 |・・・| 2 [5]    | 水 |    |・・・| 1 [6]    |    | 酒 |・・・| 1 お解かりいただけますでしょうか(・_・;)? 今までは作業列(商品名)を挿入し、[VLOOKUP]→[COUNT]→値貼付→並べ替え→不要な商品名(行・列)を削除していましたが、度々では面倒に思い、マクロを組もうと試みました。 ですが、まだまだマクロ勉強中の私自身の頭が整理しきれず、行き詰ってしまいました。 アドバイスでも結構です。お力をお貸しください。 よろしくお願いいたします。

  • エクセルの並べ替えについて

    エクセルでの並べ替えについて教えてください。 Aという製品の製造番号をA列に上から順に入れていきます Bという製品の製造番号はB列に・・・・ Cという製品の製造番号はC列に・・・・ (以下省略) それぞれの製品の数は、バラバラなので A列は3行目まで、B列は10行目まで、C列は5行目まで・・のように使う行数はバラバラです。 ここで、関数等使用して行数の多いもの(又は少ないもの)の順に並べ替える方法はあるのでしょうか? 上の例でいうと、(多いもの順)=B列→C列→A列の順に並べかえることができるのかどうかということです。 つまり

  • エクセルの並べ替えについて質問です。

    エクセルの並べ替えについて質問です。 行/列   A      B    C      D 1    商品コード  単価  商品コード 単価 2     100      50    102      70 3     101      60    100      55 4     103      65    104      65 5                   101      65 と並んでいるデータを 行/列   A      B    C      D 1    商品コード  単価  商品コード 単価 2     100      50    100      55 3     101      60    101      65 4                   102      70 5     103      65 6     104      65 というように商品コードで並べ替えて、しかも対比する商品コードがない場合は空欄になる‥なんてことはマクロを使えば可能なんでしょうか? よろしくお願い致します。

  • 集計表をマクロで作成したい。

    月末在庫を社内のシステムから抽出するとエクセルには 次のように表示されます。  A列  B列 C列  D列  E列 F列   G列 1(空欄) AQ73 (空欄) 白桃  31A  埼玉県   3 2    AQ74     オレンジ21B  宮城県B 1 3    AQ74     オレンジ31A  埼玉県   1 4    AQ75     メロン 11A  北海道  8 5    AN92     ラムネ 31A  埼玉県  240 6    AP28     グレープMYN  埼玉工場 15 下一桁が「A」か「B」のものは倉庫の在庫で「A」は通常品 「B」は出荷止め品です。 この情報から次のような表を作成するマクロを作りたいと思っています。 倉庫コード・名称 11A 31A  MYN   A  21B   B 合計 商品コード 商品名称 北海道 埼玉県 埼玉工場 小計 宮城県B 小計 AQ73  白桃       3        3         3 AQ74  オレンジ     1        1  1    1 2 AQ75  メロン 8            8 8 AN92  ラムネ      240  240 240 AP28  グレープ         15 15 15  合 計      8   244  15   267 1     1 268 A列に商品コード・B列に商品名称・C列から「通常品と小計」「出荷止め品と小計」「合計」というような表をマクロで作りたいのです。 マクロの記録をしようとしても、どうやってピボットテーブルを設定 したらよいのか思いつかず、うまく行きません。 アドバイスいただけませんか?

  • エクセルマクロについて教えてください

    エクセルで A~F列に 「 組 No. 枠  記号 コードA コードB」と並べています。 2行目以降に、「記号」を除き数値が入ります。 ※ お手数をおかけしますが画像を確認願います。ご覧頂いたほうがわかりやすいと思いますので。 これを、 (1) 組・No.・枠 固定 (記号・コードA・コードBが並び変わっても不動) (2) コードA 降順 (3) コードB 昇順 (4) 2~9行目の コードAを昇順で枠Aに指定された順に 上記のように並べ替えをしたい場合、どのようなマクロを作成したらよろしいでしょうか?  

  • エクセルの並べ替え

    こんにちは。 エクセルの基礎ですが質問させてください。 A列に数字、b列に商品名、c列に金額が記載されている表があったとします。 ほぼ50音順に並べ替えする方法を教えてください。 単純にb列をクリック→並べ替えで名前の並べ替えは出来ますが、金額が連動してこないので、金額と商品が一致して並べ替えできる方法を教えてください。 A列は一致してもしなくてもいいです。

専門家に質問してみよう