として別のワークシートを使用してコードです:これは私がように使用する必要が私は2番目の部分を持っている今、私の列に基づいて、新しいワークシートを作成しワークシート内の列からワークシートを作成し、テンプレートここ
Sub CreateSheetsFromAList()
Dim MyCell As Range, MyRange As Range
Set MyRange = Sheets("Company").Range("B2")
Set MyRange = Range(MyRange, MyRange.End(xlDown))
For Each MyCell In MyRange
Sheets.Add After:=Sheets(Sheets.Count) 'creates a new worksheet
Sheets(Sheets.Count).Name = MyCell.Value ' renames the new worksheet
Next MyCell
End Sub
」それはヘッダー情報とボタンを持っています。
Sub Wsh_PasteSpecial()
Dim WshSrc As Worksheet
Dim WshTrg As Worksheet
Rem Set working worksheets
Set WshSrc = ThisWorkbook.Worksheets("RecordsTemplate") '<-- my template
Set WshTrg = ThisWorkbook.Worksheets("Target") '<-- QUESTION IS HOW DO I SET THE TARGET.
WshSrc.Cells.Copy
With WshTrg.Cells
.PasteSpecial Paste:=xlPasteColumnWidths
.PasteSpecial Paste:=xlPasteFormats
.PasteSpecial Paste:=xlPasteFormulasAndNumberFormats
Application.CutCopyMode = False
End With
End Sub
は、どのように目標を設定することをありませんか?エラーが発生していますか?あなたがしたいことをしていないのですか?ここで問題/質問は何ですか? – JNevill
"Target"はシートの名前ではなく、シートの名前がトップサブルーチンに 'MyCell.Value'として動的に追加されていますか?下のサブルーチンのすべてのコードを取り出し、そのループの中でトップルーチン内に貼り付け、 'SET WshTrg = Sheets(Sheets.Count)'をセットするだけですか?私は何をしようとしているのか、何が問題になっているのかがはっきりしていないので、ここで完全に推測しています。 – JNevill