戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
「VBAで重複データをまとめたいです」を参照して

    [192363] 「VBAで重複データをまとめたいです」を参照して-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ さゆり -(2020/07/03(09:03))
    □U R L/
      次の様に集計したいです。
      A列 | B列 | C列|→結果 D列 | E列 | F列|
      aaa |bbb  | 50 |       aaa |bbb  | 90 |
      ccc |ttt  | 30 |       ccc |ttt  | 50 |
      aaa |bbb  | 40 |       yyy |uuu  | 20 |
      ccc |ttt  | 20 |        ↓ ↓  ↓
      yyy |uuu  | 10 |   まとめる  合計
      yyy |uuu  | 10 |
      
      
      半平太が回答してくれたVBAです。
      Sub Macro1()
          Application.ScreenUpdating = False '画面ちらつき防止
          
          With Worksheets("Sheet1")
              .Columns("F").ClearContents '事前に更地化
              
              'コピペ
              .Columns("A:B").Copy
              .Range("D1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
              
              '重複排除
              .Range("D:E").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
              
              '数式で集計し、その後に値化
              With .Range("F2", .Cells(.Rows.Count, "D").End(xlUp).Offset(, 2))
                  .FormulaLocal = "=SUMIFS(C:C,A:A,D2,B:B,E2)"
                  .Value = .Value
              End With
              
              .Select
              .Range("D1").Select
          End With
          
          Application.ScreenUpdating = True
      End Sub
      
      
      
      上記内容で、回答済になっているのをみて、私も同じような事を行いたいと思ってました。
      私もVBA初心者で正直よくわかっていません。色々な方のアップされたのをみて勉強していますが、
      中々難しくてわからないので、教えてほしいです。
      
      次のようにしたいです。
      
      データーシート       集計シート
      A列 |B列 |→結果(別シート)A列 |B列|
      aaa |50  |             aaa |90 |
      ccc |30  |             ccc |50 |
      aaa |40  |             yyy |20 |
      ccc |20  |              ↓ ↓
      yyy |10  |       まとめる 合計
      yyy |10  |
      
      お力かしてください。


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他



      ++++++++++++++++++++
      OS      ⇒OTHER
      Version⇒OTHER
      ++++++++++++++++++++




    [192367] Re[1]: 「VBAで重複データをまとめたいです」を参照して-

    記事引用/メール受信=OFF■

    □投稿者/ さゆり -(2020/07/03(11:49))
    □U R L/

      先程、シートを分けていましたが、シートを変えずにC列とD列がいいです。
      宜しくお願いします。




    [192368] Re[2]: 「VBAで重複データをまとめたいです」を参照して-

    記事引用/メール受信=OFF■

    □投稿者/ 半平太 -(2020/07/03(17:10))
    □U R L/
      Sub Macro1()
          Application.ScreenUpdating = False '画面ちらつき防止
          
          With Worksheets("Sheet1")
              .Columns("D").ClearContents '事前に更地化
              
              'コピペ
              .Columns("A").Copy
              .Range("C1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
              
              '重複排除
              .Columns("C").RemoveDuplicates Columns:=1, Header:=xlYes
              
              '数式で集計し、その後に値化
              With .Range("D2", .Cells(.Rows.Count, "C").End(xlUp).Offset(, 1))
                  .FormulaLocal = "=SUMIF(A:A,C2,B:B)"
                  .Value = .Value
                  
              End With
              .Range("D1") = .Range("B1").Value
              .Select
              .Range("D1").Select
          End With
          
          Application.ScreenUpdating = True
      End Sub


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [192369] Re[3]: 「VBAで重複データをまとめたいです」を参照して-

    保留中です・・・ / 記事引用/メール受信=OFF■

    □投稿者/ さゆり -(2020/07/03(22:58))
    □U R L/

      半平太様
      凄いです。
      私は小計を使い行っていたのですが、その後の処理が大変でした。
      一発でできてしまうところが凄いです。
      これからも勉強させていただきます。

      あと、一点できたら、教えてください。
      金額の総合計もできたら最高なのです。

      仕事の事務で苦労していました。
      すごく楽になりそうです。


      ++++++++++++++++++++
      OS      ⇒OTHER
      Version⇒OTHER
      ++++++++++++++++++++




    [192370] Re[4]: 「VBAで重複データをまとめたいです」を参照して-

    記事引用/メール受信=OFF■

    □投稿者/ 半平太 -(2020/07/03(23:43))
    □U R L/
      With .Range("D2", .Cells(.Rows.Count, "C").End(xlUp).Offset(, 1))
      >    .FormulaLocal = "=SUMIF(A:A,C2,B:B)"
      >    .Value = .Value
           .Cells(.Rows.Count + 1, 0).Resize(1, 2) = Array("合計", Application.Sum(.Cells)) ’←挿入
      End With


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [192371] Re[5]: 「VBAで重複データをまとめたいです」を参照して-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ さゆり -(2020/07/04(22:57))
    □U R L/

      半平太様
      本当にご親切にありがとうございます。
      こういう形で教えてくれる方って本当にうれしいです。
      ヤフーみたいにお礼制度とかあればいいですよね。
      感謝しかできなく申訳ありません。



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G