|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
27.07.2008, 22:14 | #21 |
Пользователь
Регистрация: 27.07.2008
Сообщений: 12
|
Мне нужно делать вставку текста в ворд с определенным форматированием, тоесть шрифт такой, прописные, первая буква предложения заглавная. Вот и прошу помощи у спецов !
По моему это уже надо в другой теме задавать, есть настройка параметров вставки в ворд по умолчанию? Последний раз редактировалось knyz; 28.07.2008 в 08:51. |
28.07.2008, 09:32 | #22 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
1) что в вашем понимании "с определённым форматированием" ?
2) чем не устраивает Selection.Copy 3) как именно Вы вставляете в Word? руками? в принципе, попробуйте в ворд включить Макрос -Запись - потом вставьте текст и отформатируйте. завершить запись. получите готовый макрос ;-) |
28.07.2008, 09:35 | #23 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Если я правильно понял, то нужно скопировать содержимое ячейки (объединенной или нет, не важно) в документ Word в виде текста (не таблицы) с сохранением всего того ( формат, шрифт, цвет и т.д.), что было подготовлено в копируемой ячейке?
Если так, то посмотрите вложение. Пусть, например, есть файл "Test.doc", который находится в той же папке, что и наш xls-файл. Выделить подготовленную ячейку и нажать кнопку. Макрос откроет Word, откроет "Test.doc" и скопирует требуемый текст в позицию курсора. В коде подробные комментарии. В целях упрощения, не производится никаких проверок (открыт ли файл, существует ли файл и т.д.). Если нужно - добавьте по мере надобности.
Чем шире угол зрения, тем он тупее.
|
28.07.2008, 10:16 | #24 |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
SendKeys - дело тёмное
SAS888,
я бы не связывался с SendKeys без крайней необходимости. SendKeys "^{Insert}", True 'Копируем в буфер обмена выделенный диапазон в Excel можно заменить на Selection.Copy , а SendKeys "+{Insert}", True 'Вставляем в Word данные из буфера обмена можно заменить на Selection.PasteExcelTable False, False, False . Кроме того, при копировании одной ячейки Word не создаёт таблицу (вставляется просто параграф). Получилось Код:
|
28.07.2008, 10:56 | #25 |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
в коде, приведенном дмидми, у меня VBE почему-то "ругается" на строку
Код:
Код:
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 |
28.07.2008, 10:57 | #26 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
дмидми. Соглашусь с Вами. Хотя, разницы не вижу. Все, что здесь предлагается, это, так сказать, наброски (болванки), руководство к действию. С одной ячейкой, тоже все в порядке (см.вложение). А с методом "SendKeys", действительно, нужно следить за тем, какое приложение активно, или использовать ожидание ( ,True). Т.е. Ваш код рациональнее (но это не говорит о том, что мой не рабочий).
Чем шире угол зрения, тем он тупее.
|
28.07.2008, 13:02 | #27 | |
Пользователь
Регистрация: 27.07.2008
Сообщений: 12
|
Цитата:
2) Selection.Copy копирует ячейку как ячейку таблицы (рамку), а она мне в ворде не нужна. 3)В ворде я выбираю место куда надо вставить и нажимаю "вставить" Вот весь код : Код:
Далее в проекте задумано одновременную добавку в буфер текста, дословно :""" (позиции тендера№ ххх) - предложены (выпадающий список фирм );"""". Список хочу сделать в виде базы данных в отдельном документе ексель. всё это мной затеяно для автоматизации создания тендерного протокола, тока знаний не хватает.... _____________ С уважением. Последний раз редактировалось knyz; 28.07.2008 в 13:54. |
|
30.12.2008, 10:30 | #28 |
Новичок
Джуниор
Регистрация: 29.12.2008
Сообщений: 1
|
Смена регистра
Здравствуйте! Извините, не разобралась, где создавать новую тему, поэтому пишу сюда.
Есть табличка в екселе с 3 столбцами: ФИО, должность, абривиатура отдела. И есть вордовский документ, в котором мне нужно заменять данные о сотрудниках на данные из списка в екселе. Написала макрос и все хорошо работает, но есть одна проблема: в екселе в столбце "Должность" во всех ячейках текст начинается с ЗАГЛАВНОЙ буквы, а вставлять его нужно с маленькой, но при этом должность может состоять из нескольких слов. Подскажите, пожалуйста, решение для моей проблемы. Вот часть кода по замене: With Selection.Find .Text = "Иванова Мария Ивановна" .Replacement.Text = xlSht.Cells(i, 1) ' имя .Wrap = wdFindContinue End With Selection.Find.Execute Replace:=wdReplaceAll With Selection.Find .Text = "ведущий технолог" .Replacement.Text = xlSht.Cells(i, 2) ' должность .Wrap = wdFindContinue End With Selection.Find.Execute Replace:=wdReplaceAll With Selection.Find .Text = "СВПС" .Replacement.Text = xlSht.Cells(i, 3) ' отдел .Wrap = wdFindContinue End With Selection.Find.Execute Replace:=wdReplaceAll |
11.01.2009, 06:12 | #29 |
Пользователь
Регистрация: 19.10.2008
Сообщений: 22
|
А что нужно изменить в коде, чтобы получить в Worde отформатированную точно так же как в Excel таблицу? И как скорректировать её размеры автоматически при вставке?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Параметры копирования | Черничный | Общие вопросы Delphi | 4 | 14.08.2008 10:57 |
Конструктор копирования | Djaconda | Общие вопросы C/C++ | 3 | 11.06.2008 18:54 |
Копирования файлив | Shaitan63 | Общие вопросы Delphi | 10 | 24.05.2008 19:31 |
Запрет копирования | pinhead | Win Api | 11 | 10.01.2007 07:01 |