1

У меня есть сценарий VBA, который я выбрал из Интернета. Он берет содержимое ячейки и помещает его в соответствующий заголовок. Это работает именно так, как мне это нужно.

Sub InsertHeaderFooter()
' inserts the same header/footer in all worksheets
Dim ws As Worksheet
    Application.ScreenUpdating = False
    For Each ws In ActiveWorkbook.Worksheets
        Application.StatusBar = "Changing header/footer in " & ws.Name
        With ws.PageSetup
            .LeftHeader = vbCr & vbCr & vbCr &B &9 & Range("J2").Text & vbCr & vbCr & Range("J3").Text & vbCr & Range("J4").Text & vbCr & Range("J5")
            .CenterHeader = vbCr & vbCr & vbCr & Range("J1").Text
        End With
    Next ws
    Set ws = Nothing
    Application.StatusBar = False
End Sub

У меня проблема с форматированием заголовка через скрипт VBA. Я нашел документацию по форматированию. Я не знаю, где использовать & B для жирного шрифта или & nn для размера шрифта в сценарии. Каждое место, где я это делал, нарушает сценарий.

1 ответ1

0

По твоей линии .LeftHeader = ... вы в основном предоставили Excel строку.

В VBA строка должна быть заключена в кавычки " если это не внутренняя константа VB (например, vbCr) или переменная (например, Range("J2").Text).

Поэтому попробуйте эту строку:

 .LeftHeader = vbCr & vbCr & vbCr & "&B &9" & Range("J2").Text & vbCr & vbCr & Range("J3").Text & vbCr & Range("J4").Text & vbCr & Range("J5")

Это передаст Excel строку, содержащую вводы, значения из диапазонов - и текст «& B & 9», который Excel будет анализировать как жирный, и что-то еще (не знаю, что означает & 9)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .