Мне нужно активировать конкретный рабочий лист. Код предназначен для создания рабочих листов со специфицированным именем. Мне нужно вставить что-то из другого листа во все эти вновь созданные рабочие листы. Код, который я использую, приведен ниже. Но мне сложно активировать вновь созданный рабочий лист, чтобы вставить то, что я хочу.Excel VBA активировать рабочий лист
Sub octo()
'Dim ws As Worksheet
Dim Ki As Range
Dim ListSh As Range
Workbooks.Open ("C:\Users\Dash\Dropbox\Randika\Misc\Emmash timesheets\timesheet.xlsx")
With Worksheets("PPE 05-17-15")
Set ListSh = .Range("B4:B" & .Cells(.Rows.Count, "B").End(xlUp).Row)
End With
On Error Resume Next
For Each Ki In ListSh
If Len(Trim(Ki.Value)) > 0 Then
If Len(Worksheets(Ki.Value).Name) = 0 Then
Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = Ki.Value
'open template
Workbooks.Open ("C:\Users\Dash\Dropbox\Randika\Misc\Emmash timesheets\octo_template.xls")
Range("A1:L31").Select
Selection.Copy
Worksheets(Ki.Value).Activate
If ThisWorkbook.Saved = False Then
ThisWorkbook.Save
End If
End If
End If
Next Ki
End Sub
Нет необходимости активировать или выбирать для этого [см. Здесь некоторые идеи о том, как их избежать) (http://stackoverflow.com/a/10717999/445425) –