Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.92/12: Рейтинг темы: голосов - 12, средняя оценка - 4.92
faiza
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 10
1

Работа в Excel из Word

26.10.2010, 10:46. Просмотров 2130. Ответов 6
Метки нет (Все метки)

Ребят, подскажите пожалуйста решение такой задачи: есть отчет в Word из текста и таблиц с данными, есть справочник в Excel. Нужно найти в worde год (который задается выбирается из пользовательской формы и передаётся в А1 excel), предыдущий и запредыдущий выбранному и взять слово перед этим годом. Это слово ищем в справочнике excel в диапозоне А3:AC14, когда находим берем значение (слово), которое лежит на одну ячейку ниже по этому же столбцу и этим значением заменяем найденное перед годом слово в worde. Поис и замена в wode должны осуществляться по всему документу, в таблицах, тексте, колонтитулах и сносках. Причем, если найденное перед годом слово было с маленькой буквы то и заменяться оно должно словом с маленькой буквы и наоборот.
Вот...

Добавлено через 2 часа 24 минуты
Добые, умные люди, ну, напишите хоть одну мысль...!
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2010, 10:46
Ответы с готовыми решениями:

Работа с Word из Excel
Здравствуйте. Помогите разобратся с взаимодействием ворда и екселя. У меня такой вопрос: Есть...

Из Word работа с Excel
Необходимо из Word осуществить поиск информации в Excel... На текущий момент смог открыть из...

Работа с word из excel
Dim wd As Object Public Sub newdoc() Set wd = CreateObject("word.application")...

Работа в Word через WBA в Excel
Нужна простенька программа, которая будет открывать документ word вставлять туда данные из excel и...

Работа с word через excel (передача строки)
Здравствуйте, возникла следующая проблемка, а точнее вопрос: Есть файл excel, который при...

6
Busine2009
Заблокирован
26.10.2010, 12:36 2
faiza,
я в трёх соснах запутался. Вот это используй как-нибудь:
Подключение библиотеки объектов программы Excel: Tools - References... - Microsoft Excel 14.0 Object Library - OK.
Visual Basic
1
2
3
4
5
6
7
8
Sub m_1()
Dim oExcel As Excel.Application
Dim oWorkbook As Excel.Workbooks
Set oExcel = CreateObject("Excel.Application")
Set oWorkbook = oExcel.Workbooks
oWorkbook.Open "E:\_Рабочий стол\Excel.xls"
oExcel.Visible = True
End Sub
Я просто бухаю сейчас - не могу сосредоточиться. Я думал, что разобрался с работой в программах из др. программ, а сейчас выясняется, что не разбираюсь в этом совсем.
0
faiza
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 10
28.10.2010, 02:06  [ТС] 3
Я уже работаю с Excel как с объектной переменной...С этим вопросов нет...Я прошу совета по организации поиска в Word.
0
Busine2009
Заблокирован
28.10.2010, 02:32 4
faiza,
find

http://www.youtube.com/watch?v=qUjfcAFuzKc&feature=related
Selection.Find.
Applicatiion.Range.Find
0
faiza
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 10
28.10.2010, 03:14  [ТС] 5
Так я объявляю excel:

Visual Basic
1
2
3
Set Ex = CreateObject("excel.application")
Ex.Workbooks.Open FileName:=ThisDocument.Path & "\Справочник.xlsx"
Ex.Application.Visible = True
А вот задачу реализовать не могу, прошу у вас помощи:
1. по всему документу word найти год (например, 2010,2009 и 2008) и взять слово, находящееся перед ним.А поиск осуществлять по всему документу:титульник, сноски, колонтитулы,таблицы,текст.
2. найденное слово в worde нужно найти в "Справочник.xlsx", но искать только в диапозоне А3:AC14.
3. когда в excel слово найдем, нужно взять значение которое лежит на 1 ячейку ниже найденного и уже этим словом заменить то, которое нашли в пункте 1 перед годом.
Спасибо.
0
Busine2009
Заблокирован
28.10.2010, 14:55 6
faiza,
вот так всё сложно реализовано в Word, может есть универсальное средство, но я его не знаю:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub m_1()
'Поиск по всему документу
Dim oSection As Section
Dim oHeaderFooter As HeaderFooter
Dim oTextFrame As TextFrame
'Поиск в основной части
ActiveDocument.Range.Find
'Поиск в колонтитулах
For Each oSection In ActiveDocument.Sections
    For Each oHeaderFooter In oSection.Headers
        oHeaderFooter.Range.Find
    Next
    For Each oHeaderFooter In oSection.Footers
        oHeaderFooter.Range.Find
    Next
Next
'Поиск в сносках
ActiveDocument.StoryRanges(wdFootnotesStory).Find
'Поиск в надписях
For Each oTextFrame In ActiveDocument.Range
    oTextFrame.TextRange.Find
Next
End Sub
0
faiza
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 10
29.10.2010, 02:50  [ТС] 7
Спасибо)

Добавлено через 32 минуты
А по поводу пункта 2 и 3, есть мысли?
0
29.10.2010, 02:50
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2010, 02:50

"работа с выделением Selection объекта word.Bookmarks и .shapes через excel"
Доброе время суток. Возникла проблема: Суть имеется 2 макроса оба запускаются из excel 1-ый...

Из Excel в Word / Задать количество листов для печати в Word
Добрый день многоуважаемые, надеюсь на ваш совет. Есть задание из Excel таблицы переносить...

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


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.