Я хочу установить межстрочный интервал по умолчанию в Powerpoint 2007 на 1,1, а не на 0,8, который Microsoft установил по умолчанию. Есть какой-либо способ сделать это?

Кроме того, я мог бы также управлять, если бы я мог создать макрос, который делает это. Но MS также удалили Macro Recorder из PP2007. Может кто-нибудь помочь с кодом VBA?

Спасибо

2 ответа2

1

Я знаю, что это старый вопрос, но люди должны знать, что вам не нужен код для этого! Я использую 2013 год, но я верю, что это работало так же в 2007 году. Просто перейдите к View / Slide Master, щелкните по мастер-слайду (верхнему), а затем нажмите на основной текстовый заполнитель. Ctrl-a, чтобы выбрать все, затем щелкните правой кнопкой мыши, выберите «Абзац» и измените межстрочный интервал на «Несколько» 1.1. Вуаля, это будет волновать каждый макет и каждый слайд.

Если вы уже изменили настройки по умолчанию для любых слайдов, перейдите к каждому из этих слайдов и на вкладке «Главная» в разделе «Слайды» выберите «Сброс». (Обратите внимание, что все изменения, сделанные вами, будут сброшены на весь слайд.)

1

Ну, если вы сделаете макрос, вы можете использовать этот код:

Sub SetLineSpacing()
Dim sld As Slide
Dim shp As Shape

For Each sld In Application.ActivePresentation.Slides
  For Each shp In sld.Shapes
    *If shp.TextFrame.HasText Then*
       With shp.TextFrame.TextRange.ParagraphFormat
          .LineRuleWithin = msoTrue
          .SpaceWithin = 1.1
       End With
     *End If*
   Next
 Next
End Sub

Но есть один недостаток. Если у вас есть какой-то текст с межстрочным интервалом 3 (например), но нет места для такого межстрочного интервала, powerpoint автоматически уменьшит его, т.е. до 2,8. Когда вы запустите этот макрос, межстрочный интервал станет 1,2 или 1,3 или что-то в этом роде. Только при повторном запуске макроса эта проблема будет устранена. Я не мог понять, откуда возникла эта проблема, поскольку отладка кода делала его безупречным с первого запуска.

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