Загрузка данных


Sub PasteFromExcelAndFormat()
    Dim para As Paragraph
    Dim rng As Range
    
    ' 1. Вставка только текста (без исходного форматирования)
    Selection.PasteSpecial DataType:=wdPasteText
    
    ' После вставки выделение автоматически охватывает вставленный фрагмент.
    ' Если вставки не произошло (пустой буфер), выходим.
    If Selection.Type = wdSelectionIP Then Exit Sub
    
    ' 2. Убираем интервал после абзаца
    Selection.ParagraphFormat.SpaceAfter = 0
    
    ' 3. Устанавливаем шрифт Times New Roman, 11 пт
    With Selection.Font
        .Name = "Times New Roman"
        .Size = 11
    End With
    
    ' 4. Преобразуем каждое слово: первая буква заглавная, остальные строчные
    For Each para In Selection.Paragraphs
        Set rng = para.Range
        ' Исключаем символ конца абзаца, чтобы не испортить его при замене
        rng.MoveEnd Unit:=wdCharacter, Count:=-1
        If rng.Characters.Count > 0 Then
            ' StrConv с vbProperCase делает первую букву каждого слова заглавной,
            ' остальные – строчными.
            rng.Text = StrConv(rng.Text, vbProperCase)
        End If
    Next para
    
    ' Снимаем выделение (опционально)
    Selection.Collapse Direction:=wdCollapseEnd
End Sub