- ベストアンサー
EXCEL2010 VBAで繰り返し処理を行う方法
- EXCEL2010でVBAを使用して繰り返し処理を行う方法について紹介します。
- 指定した条件に基づいてEXCEL2010でシートを作成し、自動入力を行うVBAのコードの作り方を説明します。
- A1の数値によってシート2上の複数のセルに対してアルファベットと数字を自動的に入力する方法について詳しく解説します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
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
その他の回答 (1)
- keithin
- ベストアンサー率66% (5278/7941)
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 などのように。
お礼
回答ありがとうございます。 別の方法も知れて助かりました。
お礼
回答ありがとうございます。無事にできました。