Excel VBAを始めるには(013)

[12]で作成した、乱数発生の一覧表500セルの集計一覧表の作成です。
1-99/100-199/200-299・・・・10分類を、列に集計・一覧にします。
[12]の応用で、別のセルに集計する手法で、Sheetでの関数操作では大変です。
こんな場合はVBAが強みを発揮します。

以下、そのSource

’---------------------------------------------------------------------
Sub Syukei01()
'
' Syukei01 Macro
'
' セルの内容を一定区分で集計します

Dim i, j As Integer
'Dim Cnt_n As Integer

' 集計用のカウンター用変数
Dim C100_n, C200_n, C300_n, C400_n, C500_n, C600_n, C700_n, C800_n, C900_n, C1000_n As Integer


Sheets("Sheet3").Select

Call Syukei_Cls '集計一覧のデータの初期化 プロシージャを呼ぶ

C100_n = 2 'カウンター変数を座標用数値に
C200_n = 2
C300_n = 2
C400_n = 2
C500_n = 2
C600_n = 2
C700_n = 2
C800_n = 2
C900_n = 2
C1000_n = 2


For i = 1 To 25
For j = 1 To 20

Cel_n = Val(Cells(i, j)) 'セルの値を数値化する

Cells(i, j).Select


Select Case Cel_n 'ここでセルの値を識別

Case 1 To 99

Cells(C100_n, 22) = Cells(i, j) 'セルの内容を区分された列に追加

C100_n = C100_n + 1 ' 座標をプラス


Case 100 To 199

Cells(C200_n, 23) = Cells(i, j)

C200_n = C200_n + 1


Case 200 To 299

Cells(C300_n, 24) = Cells(i, j)

C300_n = C300_n + 1


Case 300 To 399

Cells(C400_n, 25) = Cells(i, j)

C400_n = C400_n + 1


Case 400 To 499

Cells(C500_n, 26) = Cells(i, j)

C500_n = C500_n + 1


Case 500 To 599

Cells(C600_n, 27) = Cells(i, j)

C600_n = C600_n + 1


Case 600 To 699

Cells(C700_n, 28) = Cells(i, j)

C700_n = C700_n + 1


Case 700 To 799

Cells(C800_n, 29) = Cells(i, j)

C800_n = C800_n + 1


Case 800 To 899

Cells(C900_n, 30) = Cells(i, j)

C900_n = C900_n + 1


Case Else

Cells(C1000_n, 31) = Cells(i, j)

C1000_n = C1000_n + 1


End Select



Next j
Next i


'
End Sub
'-----------------------------------------------------------------------
Sub Syukei_Cls()
'
' Syukei_Cls Macro
'

'
Range("V2:AE100").Select
Selection.ClearContents


End Sub



わかお かずまさ
VegaSystems

📷📷📷📷📷📷
#LAN_PRO
#Bloguru
#kuma

People Who Wowed This Post

×
  • If you are a bloguru member, please login.
    Login
  • If you are not a bloguru member, you may request a free account here:
    Request Account