Страница: 1 |
Вопрос: Из Ворда Selection в Access | Добавлено: 06.08.12 23:54 |
Автор вопроса: ![]() |
При помощи простой программки пользователь нажатием правой кнопки сохраняет данные, выделенные в вордовском документе, в базу данных Access:
Public WithEvents App As Word.Application
Private Sub App_WindowBeforeRightClick(ByVal Sel As Selection, Cancel As Boolean) Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset With cn .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Data Source=C:\1.mdb" .Open End With rs.Open "SELECT * FROM Ranges", cn, adOpenStatic, adLockOptimistic rs.AddNew rs("Range") = Selection rs.UpdateBatch rs.Close cn.Close End Sub Но этот код сохраняет исключительно текстовое содержание. Но мне надо, чтобы сохранялся текст со всем форматированием (выделение жирным. курсивом, цветом, размером и видом шрифта и т.д.). Как это реализовать и VBA в Word, |
Ответы | Всего ответов: 3 |
Номер ответа: 1 Автор ответа: ![]() ![]() ICQ: 264730390 Вопросов: 2 Ответов: 106 |
Профиль | Цитата | #1 | Добавлено: 09.08.12 02:38 |
Форматирование само по себе не сохранится. Тебе нужно получить из Word'а стиль текста, а в access'е расширить табличку...
text(текстовое поле), bold(логическое), italic(логическое), color(числовое), kegel(числовое), font(текстовое), ...и т.д. |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 91 Ответов: 67 |
Web-сайт: Профиль | Цитата | #2 | Добавлено: 10.08.12 23:27 |
Это подойдёт только в том случае, если выделен фрагмент текста с однородным форматированием. А если выделен выделена фраза "Петя съел Машу", в которой "Петя" написано жирным курсивом, "съел" - просто жирным, а "Машу" - просто курсивом? |
Номер ответа: 3 Автор ответа: ![]() ![]() ICQ: 264730390 Вопросов: 2 Ответов: 106 |
Профиль | Цитата | #3 | Добавлено: 13.08.12 04:02 |
В таком случае надо проверять каждое слово (или символ). Слова (символы) с одинаковым форматированием (и следующие подряд, естественно) - группируешь.
Таблица для групп текста(tbl_gr_text): id, content, bold, italic, color, kegel, font 31, Петя, true, true, 0, 14, Arial 32, съел, true, false, 0, 14, Arial 33, Машу, false, true, 0, 14, Arial Сводная таблица групп(tbl_groups): id, id_groups 18, "31,32,33" Запрос: Select * From tbl_gr_text Where id In (Select * From tbl_groups Where id=18) Примерно так должно выглядеть то, что ты хочешь... |
Страница: 1 |
|