|
▼こうちゃんさん、つんさん、ありがとうございます。
私の意図はこうです。
全部で600ある選択肢をdに代入していきます。
caseごとに、すなわちdの値ごとに、その都度addされたワークシートにデータを書きこみます。
そして最終的に600枚のシートができる、というものです。
ところが、ワークシートのaddすら出来ていません。
いったいどこを直せばよいのでしょうか。
Sub test()
Dim n As Long
Dim i As Long
Dim A As Integer
Dim d As String
Dim ws1 As Worksheet
Dim ws2 As Worksheet
'変数bを追加します。
Dim b As Integer
Set ws1 = Worksheets("一覧")
Set ws2 = Worksheets("全営業所")
'変数Aの処理をしました
A = 13
For n = 1 To ws2.Range("A600").End(xlUp).Row
d = ws2.Cells(n, 1).Value
For i = 2 To ws1.Range("A65535").End(xlUp).Row
'select caseにします。実際は選択肢が600個すなわちdに代入されうる値が_
600種類あるからです。
Select Case ws1.Cells(i, 10).Value = d
Case d
'b=1のときのみワークシートをaddするロジックを追加します。
If b = 1 Then
Worksheets.Add after:=Worksheets(1), Count:=1
b = b + 1
End If
'addしたてのワークシートに書きこんでいきたいのです。
Sheets(Cells(i, 10).Value).Cells(A, 1).Value=_
ws1.Cells(i, 9).Value
Sheets(Cells(i, 10).Value).Cells(A, 2).Value=_
ws1.Cells(i, 10).Value
A = A + 1
End Select
b = 1
Next i
Next n
End Sub
|
|