Лен обычно помещает все свои фигуры в текстовые поля. Он форматирует текстовые поля, чтобы они не перекрывали друг друга. (Он отображает диалоговое окно «Макет» и на вкладке «Положение» снимает флажок «Разрешить перекрытие».) Лен хотел бы, чтобы этот параметр был очищен по умолчанию, но всегда кажется, что по умолчанию перекрытие разрешено. Он задается вопросом, есть ли способ полностью отключить его.
К сожалению, похоже, что нет способа полностью отключить его – Word просто по умолчанию разрешает перекрытие. Однако вы можете создать пару макросов, которые могут оказаться полезными. Первый устанавливает настройку перекрытия для выделенного текстового поля:
Sub AllowOverlapFalse () Selection.ShapeRange.WrapFormat.AllowOverlap = FalseEnd Sub
Все, что вам нужно сделать, это чтобы создать текстовое поле, выберите его и запустите макрос. Возможно, вы даже захотите назначить его сочетанию клавиш, чтобы выполнять задачу быстро и легко.
Другой подход похож на этот первый, но он работает со всеми текстовыми полями в документ. Таким образом, вы можете создать все нужные текстовые поля, а затем запустить этот макрос.
Sub FixTextBoxOverlap () Dim s As Shape For Each s In ActiveDocument.Shapes If s.Type = msoTextBox Then s. WrapFormat.AllowOverlap = False End If NextEnd Sub
Как видно из этих макросов, текстовые поля обрабатываются как фигуры в мире VBA. Этот макрос гарантирует, при пошаговом обходе всех определенных фигур, что он влияет только на те, которые на самом деле являются текстовыми полями.