Not_Proさん
以下のコードできると思います。
※但し、シート1のA1は1~26までです("A"~"Z")。
Sub シート自動作成()
Dim A As Long
Dim B As Long
Dim 行 As Long
With Sheets("シート2").Range("A14")
For A = 1 To Sheets("シート1").Range("A1")
For B = 1 To Sheets("シート1").Range("A2")
.Offset(行, 0) = Chr(Asc("A") + A - 1)
.Offset(行, 1) = B
If Sheets("シート1").Range("A1") = 1 Then .Offset(行, 0) = ""
行 = 行 + 1
Next B
Next A
End With
End Sub
sub macro1r1()
dim a, b, i
a = worksheets("Sheet1").range("A2") '個数
b = worksheets("Sheet1").range("A1") '種類の数
for i = 0 To b - 1
worksheets("Sheet2").range("A14").resize(a, 1).offset(i * a) = iif(b=1,"",chr(65 + i))
worksheets("Sheet2").range("B14").resize(a, 1).offset(i * a).formula = "=ROW(B1)"
next i
with worksheets("Sheet2").range("B14:B" & 13+a*b)
.value = .value
end with
end sub
などのように。
お礼
回答ありがとうございます。無事にできました。