Worksheets("V1") will return a Worksheet object. However, Worksheets(Array("V1", "V2")) returns a Worksheets collections object.
Worksheet object allows you to access and update its properties as well as access its member objects, like Range.
Worksheets collection allows you to perform sheet level operations since it is a collection of worksheets. That is kind of like any Collections object, like a list or set or queue. As with collection objects, you have to first access the object in it, then access its member methods/properties.
Worksheets("Titles").Rows("1:1").Copy Worksheets("V1").Rows(1).Insert Shift:=xlDown
Worksheets("Titles").Rows("1:1").Copy Worksheets("V2").Rows(1).Insert Shift:=xlDown
Private Sub ShiftRowsInSheets(aSheetNames As Variant)
Dim sheetName As Variant
Dim oSheet As Worksheet
For Each sheetName In aSheetNames
Worksheets("Titles").Rows("1:1").Copy
Worksheets(sheetName).Rows(1).Insert Shift:=xlDown
Application.CutCopyMode = False
Next
End Sub
Private Sub TestSub()
ShiftRowsInSheets Array("Sheet1", "Sheet2")
End Sub
You need to use a loop.
Code:Private Sub ShiftRowsInSheets(aSheetNames As Variant) Dim sheetName As Variant Dim oSheet As Worksheet For Each sheetName In aSheetNames Worksheets("Titles").Rows("1:1").Copy Worksheets(sheetName).Rows(1).Insert Shift:=xlDown Application.CutCopyMode = False Next End Sub Private Sub TestSub() ShiftRowsInSheets Array("Sheet1", "Sheet2") End Sub