| 
    
     |  | さえ さん、おはようございます。 
 >一読して、致命的なミスに気づかれる方がいましたら助言をどうかよろしくお願いします。
 
 ざっと見た感じだと、下の↓#↓のところがおかしいですね(いらない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")に変更
 でしょうか。
 
 |  |