Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/34: Рейтинг темы: голосов - 34, средняя оценка - 4.97
0 / 0 / 0
Регистрация: 23.02.2018
Сообщений: 11
1

Копирование содержимого word в word из Excel с макросом

23.02.2018, 20:30. Показов 6589. Ответов 7

Author24 — интернет-сервис помощи студентам
Ребят, добрый вечер!
Подскажите,. пожалуйста, мне надо по сути создать копию документа WORD из Excel и работать с копией. Я указываю путь к файлу, создаю новый док-т, вставляю в него содержимое из дока
ПИшу
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub op()
Dim wd As Object
Dim ns As Object
 
Set wd = CreateObject("Word.Application")
f = Application.GetOpenFilename("Документ Microsoft Word, *.docx,Все файлы, *.*")
Set wdd = wd.Documents.Open(f)
wdd.Content.Select
t = wdd.Content.Copy
Set ns = Documents.Add
ns.PasteAndFormat
wdd.Close (False)
wd.Quit (False)
End Sub
После выбора пути создается процесс Word в диспетчере задач. Excel ждет, когда завершится этот процесс.
Что я не так делаю ?
Заранее спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.02.2018, 20:30
Ответы с готовыми решениями:

Копирование содержимого ячейки таблицы Excel в закладку Word
Задача. Нужно скопировать значение ячейки (например А1) в документ word в определенное место. Место...

Копирование текста из Word макросом
Всем привет. Если не сложно, помогите пожалуйста решить проблему. Появилась задача копирования...

Замена текста в Word макросом из Excel
Есть файл Экселя с данными, есть текстовый шаблон Ворда с метками для этих данных Сделал макрос...

Запуск макроса excel макросом из word
Помогите, пожалуйста. Необходимо запустить макрос в excel при помощи макроса в word, не знаю, как...

7
1589 / 662 / 225
Регистрация: 09.06.2011
Сообщений: 1,334
23.02.2018, 21:32 2
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub op()
  Dim wApp As Object, wDoc As Object, f$
    f = Application.GetOpenFilename("Документ Microsoft Word, *.docx,Все файлы, *.*")
    If f = "" Then Exit Sub
    Set wApp = CreateObject("Word.Application")
    Set wDoc = wApp.Documents.Add(f)    ' Добавление документа, выбранный файл используется в качестве шаблона
    
    ' работа с копией документа wDoc
     wApp.Visible = True ' если требуется отобразить
    
    ' wApp.Quit (False) ' закрытие Word'а
    Set wApp = Nothing
End Sub
1
0 / 0 / 0
Регистрация: 23.02.2018
Сообщений: 11
23.02.2018, 22:37  [ТС] 3
Спасибо большое!!!!! Но тоже самое, указываю путь к файлу и зависает... Word-й процесс в диспетчере задач висит
0
1589 / 662 / 225
Регистрация: 09.06.2011
Сообщений: 1,334
23.02.2018, 22:43 4
Цитата Сообщение от isq Посмотреть сообщение
Word-й процесс в диспетчере задач висит
1. Удалите все процессы Word'а перед запуском макроса
2. Попробуйте переместить 9 строку перед 6, чтоб видеть уведомления
1
0 / 0 / 0
Регистрация: 23.02.2018
Сообщений: 11
24.02.2018, 03:17  [ТС] 5
Работает, работает!!!!!!!!!!!!!!!!!!!!!!!!! Спасибо огромное!!!

Добавлено через 2 часа 21 минуту
А есть ли в Excel VBA аналогия типа Paragraph ? Excel VBA Ругается на объявление переменной с таким типом. А мне нужно удалить целый разный абзац по определенным условиям
0
15145 / 6418 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
24.02.2018, 11:08 6
Цитата Сообщение от isq Посмотреть сообщение
А есть ли в Excel VBA аналогия типа Paragraph ? Excel VBA Ругается на объявление переменной с таким типом.
Объявляйте As Object. Код лучше отлаживать в VBA Word, потом переносить в VBA Excel с заменой констант типа wdReplaceAll на их числовые значения.
1
0 / 0 / 0
Регистрация: 23.02.2018
Сообщений: 11
26.02.2018, 04:53  [ТС] 7
Пошла вообще другим путем:
Visual Basic
1
2
3
4
5
6
7
With Selection.Find
     .Text = "_начало_удаления_*_конец_удаления_"
  
    Selection.Delete
 
 
   End With
и еще wDoc.Range.Find.Execute FindText:="_начало_удаления_*_конец_удаления_", ReplaceWith:="", Replace:=2
Код отрабатывает без ошибок, но ничего не удаляет. Может я неправильно диапазон меток указываю ?
0
15145 / 6418 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
02.03.2018, 16:59 8
isq, трудно судить по обрывкам кода. Где например указание на поиск с использованием подстановочных знаков (MatchWildcards:=True)?
0
02.03.2018, 16:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.03.2018, 16:59
Помогаю со студенческими работами здесь

Открытие документа Word с форматированием - макросом из Excel
Народ такой вопрос есть макрос под EXCEL открывающий word документ, копирует содержимое и...

Макросом в Excel получить данные из Word файлов
Добрый день, стоит задача макросом в Excel получить данные из Wordовских файлов, находящихся в...

Перевод курсора в Word на следующую строку, макросом из Excel
Добрый день. Имеется таблица в Ворде, макрос работает из Экселя. На закладку выходит нормально,...

Получить значения из документа word по маске макросом в excel
Здравствуйте! Подскажите, пожалуйста, можно ли макросом произвести поиск по маске в документах...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru