Excel VBA устанавливает именованный диапазон в качестве заголовка - PullRequest
0 голосов
/ 08 декабря 2018

Я хочу установить именованный диапазон N2: P3 с именем NorthHead в качестве центрального заголовка.Однако с моим кодом я получаю только ячейку N2 в заголовке.В чем может быть проблема?

Sub SetCenterHeader()
         ActiveSheet.PageSetup.CenterHeader = Range("NorthHead")
         ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub

1 Ответ

0 голосов
/ 08 декабря 2018

Я думаю, у вас есть текст во всех этих ячейках, а затем просто присоединитесь к ним:

Option Explicit

Sub SetCenterHeader()
    Dim txt As String
    Dim myRow As Range

    With Range("NorthHead") ' reference named range
        For Each myRow In .Rows ' loop through referenced range rows
            txt = txt & Join(Application.Transpose(Application.Transpose(myRow.Value)), " ") & vbLf ' update 'txt' with current row cells values joined and separated by a blank
        Next
    End With
    ActiveSheet.PageSetup.CenterHeader = Left(txt, Len(txt) - 1) ' set CenterHeader with resulting 'txt' excluding last vblf character
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...