Таблица отступов, вставленная из Excel в Word - PullRequest
0 голосов
/ 23 мая 2019

Мне интересно, как сделать отступ, вставленный из таблицы Excel в MS Word.Что может быть не так в моем текущем коде, когда я получаю сообщение об ошибке?

Я пытался использовать rngPara.Indent.Мой текущий код проходит через диапазон Excel, выбирает «Случаи» и создает документ Word в соответствии с каждым делом.Текущий случай вставляет таблицу 5 Case "table5"

Часть моего текущего кода для копирования - вставка таблицы Excel:

   Dim wdRngPL As Object 'Word.Range
   Set wdRngPL = .Range.Characters.Last
    Case "table5"
      ThisWorkbook.Sheets("Pricelist").Range("B31:D681").Copy
        With wdRngPL
        Set rngPara = .Paragraphs.Last.Range
        rngPara.Style = "Attachment"
        rngPara.PasteExcelTable False, False, False
        '.Tables(.Tables.Count).AutoFitBehavior wdAutoFitWindow
        .Font.Hidden = 0
        rngPara.Indent
        Set rngPara = Nothing
        End With

Я хочу смоделировать ручную работу.Если я удаляю rngPara.Indent, тогда мой процесс идет следующим образом.Таблица вставляется в Word из Excel.Я должен перейти к документу Word, выбрать мою таблицу и нажать Увеличить отступ один раз.

1 Ответ

1 голос
/ 23 мая 2019

Поскольку таблица вставляется в конце Range, можно выбрать объект Table напрямую:

Dim tbl as Word.Table 'or Object
Set tbl = wdRngPL.Tables(wdRngPl.Tables.Count)

С этого момента получите диапазон таблицы и примените желаемыйформатирование:

tbl.Range.Paragraphs.Indent

Причина, по которой код в вопросе не дает ожидаемого результата, заключается в том, что rngPara, вероятно, не содержит вставленного содержимого.Чтобы увидеть подобные вещи, вставьте, например, метод Select (rngPara.Select), установите точку разрыва на строке после нее, а затем посмотрите в документе Word на то, что было выбрано.Это даст ключ к пониманию того, что необходимо для решения требуемого объекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...