Excel VBA-获取工作表的父窗口

Excel VBA-获取工作表的父窗口,vba,excel,Vba,Excel,我有一个从模板中插入标题并冻结活动工作表顶行的子项,该子项写为 Sub HeaderInsert(headerTemplate As Worksheet) headerTemplate.Rows("1:1").Copy ActiveSheet.Rows("1:1").Select ActiveSheet.Paste With ActiveWindow .SplitColumn = 0 .SplitRow = 1 .F

我有一个从模板中插入标题并冻结活动工作表顶行的子项,该子项写为

Sub HeaderInsert(headerTemplate As Worksheet)
    headerTemplate.Rows("1:1").Copy
    ActiveSheet.Rows("1:1").Select
    ActiveSheet.Paste
    With ActiveWindow
        .SplitColumn = 0
        .SplitRow = 1
        .FreezePanes = True
    End With
End Sub
我想把它转换成一个函数,它被传递给工作表,以将标题插入其中。这样就可以写出来了,

Function HeaderInsert(headerTemplate As Worksheet, contentSheet as Worksheet)
ActiveSheet
变成了
contentSheet
,但是如何才能获得
contentSheet
窗口


还有更好的复制和粘贴方法吗?

我想您需要
contentSheet.Parent.Windows(1)
,例如:

Sub test()
Dim ws As Excel.Worksheet
Dim wb As Excel.Workbook

Set ws = ActiveSheet
Set wb = ws.Parent
Debug.Print wb.Windows(1).Caption
End Sub
至于更好的粘贴方式: headerTemplate.Rows(“1:1”)。复制ActiveSheet.Rows(“1:1”)

更一般地说,你想要