|
さえ さん、おはようございます。
>一読して、致命的なミスに気づかれる方がいましたら助言をどうかよろしくお願いします。
ざっと見た感じだと、下の↓#↓のところがおかしいですね(いらないActivateとかは省いてあります)。
Sub ジャンルの統計出力()
Dim myCell2 As Range
Dim jan As Long, jan2 As Long, mymaxrow3 As Long, i As Long, a As Long
Dim ZAN(1 To 30) As Long
'
Set myCell2 = Sheets("1").Range("E9:E58")
'
For a = 1 To 50 '読み込ます対象は50件
For jan = 1 To 30 'ジャンルは30種類
mymaxrow3 = Sheets("2").Cells(500, jan).End(xlUp).Row
For jan2 = 1 To mymaxrow3 '
If Sheets("2").Cells(jan2, jan).Value = myCell2.Cells(a, 1).Value Then
ZAN(jan) = ZAN(jan) + 1 'ここで件数をカウントアップ
Exit For
End If
'↓1↓ 上の条件と合致しなくてもここを通った時点で脱出しています
Exit For
Next jan2
Next jan
Next a
'
Sheets("3").Activate
For i = 1 To 30 'ここでシート3に出力する。
'↓2↓ シート2に書き出してます。
Sheets("2").Cells(i, 1).Value = ZAN(i)
ZAN(i) = 0
Next i
End Sub
とりあえず、
↓1↓ → 下のExit Forが不要
↓2↓ → Sheets("3")に変更
でしょうか。
|
|