Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7368 / 13645 ツリー ←次へ | 前へ→

【39523】同じ数字の集計をする 八幡 06/6/26(月) 10:23 質問[未読]
【39526】Re:同じ数字の集計をする Statis 06/6/26(月) 10:57 回答[未読]
【39550】Re:同じ数字の集計をする Statis 06/6/26(月) 15:26 回答[未読]

【39523】同じ数字の集計をする
質問  八幡 E-MAIL  - 06/6/26(月) 10:23 -

引用なし
パスワード
   新人ですのでよろしくご指導お願いします。
内容は、U列にある1〜10桁の同じ数字を合計し数字別に集計する作業です。
プログラムの内容は、AU列にエラーを発生させ、その数を集計別シートへ転記させる内容です

    On Error Resume Next

Set sen = Sheets("線")
Set hen = Sheets("編集")


hen.Select
Range("A1").Value = "数字"
Range("B1").Value = "合計"

 
  For i = 1 To 500
 
 sen.Select
 Columns("AF:AF").Delete
 Range("AF13").FormulaArray = "=IF(U13=$U$13,na(),"""")"         ' 作ったときは動作したのですがこの部分でおかしくなりました

Range("AF13").Select
  Selection.AutoFill Destination:=Range("AF13:AF1500"), Type:=xlFillDefault
Range("AF2").FormulaArray = "=countif(af12:af1500,na())"


Selection.AutoFill Destination:=Range("F12:F400"), Type:=xlFillDefault
Range("AF11:F400").SpecialCells(xlCellTypeFormulas, 2).Select
    Range("AF2").Copy
    Range("AF1").PasteSpecial Paste:=xlValues

  
  sen.Range("AF1").Copy
  hen.Select
  Range("B65536").End(xlUp).Offset(1).Select
          ActiveSheet.Paste
  sen.Range("U13").Copy
  Range("A65536").End(xlUp).Offset(1).Select
          ActiveSheet.Paste
  

 sen.Select

  Columns("AF:AF").Select
  Selection.SpecialCells(xlCellTypeFormulas, 16).Select
  Selection.EntireRow.Delete
 Columns("AF:AF").Delete


Next
i = i + 1

【39526】Re:同じ数字の集計をする
回答  Statis  - 06/6/26(月) 10:57 -

引用なし
パスワード
   こんにちは

>内容は、U列にある1〜10桁の同じ数字を合計し数字別に集計する作業です。

シート名(線)のU列の数字を数字ごとに集計し
編集シートのA列に数字、B列に合計するのですね。
2が3つあれば合計6と言う事ですね。
と考えてこれで如何かな?

Sub Test()
Dim Ws As Worksheet, C As Range, Co As Long
Set Ws = Worksheets("編集")

Application.ScreenUpdating = False
With Worksheets("線")
   .Rows(1).Insert Shift:=xlDown
   .Range("U1").Value = "項目"
   .Range("U1", .Range("U65536").End(xlUp)) _
     .AdvancedFilter xlFilterCopy, , Ws.Range("A1"), True
   Ws.Range("A1:B1").Value = Array("数字", "合計")
   For Each C In Ws.Range("A2", Ws.Range("A65536").End(xlUp))
     Co = WorksheetFunction.CountIf(.Columns(21), C.Value)
     C.Offset(, 1).Value = C.Value * Co
   Next C
   Ws.Columns("A:B").EntireColumn.AutoFit
   .Rows(1).Delete
End With
Application.ScreenUpdating = True
Set Ws = Nothing

End Sub

記載コードで
「na()」て何ですか?

【39550】Re:同じ数字の集計をする
回答  Statis  - 06/6/26(月) 15:26 -

引用なし
パスワード
   こんにちは


Sub Test_1()
Dim C As Range
With Worksheets("編集")
   .Rows(1).Insert Shift:=xlDown
   .Range("U1").Value = "項目"
   .Range("U1", .Range("U65536").End(xlUp)) _
     .AdvancedFilter xlFilterCopy, , .Range("A2"), True
   .Rows(1).Delete
   .Range("A1:B1").Value = Array("数字", "合計")
   For Each C In .Range("A2", .Range("A65536").End(xlUp))
     C.Offset(, 1).Value = WorksheetFunction.CountIf(.Columns(21), C.Value)
   Next C
End With
End Sub

7368 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free