2013-04-07 86 views
0

我想從我的VBA代碼中指定一個範圍作爲頁眉。Excel VBA - 將範圍指定爲頁眉

但是,當我確實

ActiveSheet.PageSetup.LeftHeader = HeaderSheet.Range("A1:L2").Value 

我從HeaderSheet僅需第一小區即A1作爲頁標題,並忽略其餘部分。它也不會在頁眉中應用邊框。

任何解決此問題的方法嗎?

回答

1

所以「左標題」將是描述表格或報告的三個標題的最左邊的標題。通常情況下,它將具有諸如報告標題,作者,報告日期等值。

您確定您不是要表明行或列標題嗎?

下面,PrintTitleRows指定行1 & 2用作要在頂部重複的行。或者左側重複的列只是「A」列。

Sub example() 

    'ActiveSheet.PageSetup.LeftHeader = HeaderSheet.Range("A1:L2").Value 

    With ActiveSheet.PageSetup 
     .PrintTitleRows = "$1:$2" 
     .PrintTitleColumns = "$A:$A" 
    End With 
End Sub 

如果你沒有真正打算把單元格A1-L2到最左側的標頭部分的內容,那麼你就必須做電池的串聯,我相信......即,

With ActiveSheet.PageSetup 
    .LeftHeader = Range("a1").Value & " " & Range("b1").Value & " " & Range("a2").Value & " " & Range("b2").Value 
End With 
+0

@LurinS:PrintTitleRows是我想要的。非常感謝:) – Tejas 2013-04-08 05:11:18

+1

只需添加一個便條。我確實相信第一個例子是缺少一個'End With'語句。至少當我在代碼中使用此代碼段時,它是必需的。 – 2016-04-22 16:01:48

+0

調整以反映克里斯托弗的反饋。謝謝 – 2016-04-29 20:25:01