Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Как избавиться от кавычек при переносе данных из Excel в Word?
 
Здравствуйте.
В документе Excel создана таблица, данные из которой должны переноситься в документ Word. В таблице Excel записан макрос, который при нажатии на кнопку формирует заполненный PDF-документ. Проблема заключается в том, что если в ячейке Excel присутствует символ переноса строки, то при последующей вставке этих данных в Word, весь текст в ячейке обрамляется кавычками. Подскажите пожалуйста, как от этого можно избавиться?

Код макроса:
Код
Private Sub CommandButton1_Click()
    If Application.Intersect(ActiveCell, ActiveSheet.UsedRange) Is Nothing Then Exit Sub
    
    ActiveCell.EntireRow.Copy Sheets("Буфер").Rows(1)
    cPathD = ActiveWorkbook.Path & "\"
    cFileD = cPathD & "Z.docx"
    cCellName = ActiveCell.Address(False, False, xlA1)
    
    Set WD = CreateObject("Word.Application")
    WD.Visible = False
    WD.Documents.Open Filename:=cFileD
    'WD.Application.ScreenUpdating = False
    For Each aF In WD.ActiveDocument.Fields
        aF.Unlink
    Next
    'WD.Application.ScreenUpdating = True
    WD.Application.DisplayAlerts = False
    WD.ActiveDocument.SaveAs Filename:=cPathD & "Çàÿâêà" & cCellName & ".pdf", FileFormat:=wdFormatPDF
    WD.Application.DisplayAlerts = True
    WD.Application.Quit
    Set WD = Nothing

End Sub
Изменено: Dezmont777 - 11 Мар 2018 03:03:34
 
Не совсем правильно поставил вопрос.
Имеется документ Word, который связан с файлом Excel. Данные из определённых ячеек подставляются в поля Word файла. Поле имеет следующий вид:
{ LINK Excel.SheetMacroEnabled.12 C:\\Users\\Vitalii\\Desktop\\Z.xlsm Буфер!R1C6 \a \t \* CHARFORMAT }.
Проблема в том,что если в ячейке Excel присутствует символ перевода строки (Alt+Enter), то соответствующие данные в файле Word обрамляются двойными кавычками. В итоге:

Должно быть Получаем
Иванов
Петров
"Иванов
Петров"
Подскажите пожалуйста, как можно избавиться от этих кавычек?
Изменено: Dezmont777 - 11 Мар 2018 15:30:49
 
Не совсем по теме, но все-же. Зачем этот промежуточный WORD документ? Сделайте шаблон Заявки в этом же файле Excel, заполняйте его и печатайте в PDF. ИМХО
Согласие есть продукт при полном непротивлении сторон.
 
Доброе время суток.
Ради интереса. В исходной книге на листе "Буфер" поставил шрифт Times New Roman, 10 пунктов (в ячейке R1C3 сделал перенос строки по Alt+Enter). В документе Word в третьей ячейке 1 строки задал параметры поля связи как
Код
{ LINK Excel.SheetMacroEnabled.12 C:\\Path\\Z.xlsm Буфер!R1C3 \a \r }
Вывелось без лишних обрамляющих кавычек.
Попробуйте.
P. S. Лучше по форматированию документов Word спрашивать в профильном форуме.
Изменено: Андрей VG - 11 Мар 2018 18:46:18
 
Sanja, спасибо за совет. Как будет время нужно будет дописать. :)

Андрей VG, благодарю. Ключ \r помог. Действительно немного не туда написал. Спасибо!
Страницы: 1
Читают тему (гостей: 1)
Наверх