grbdv
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору life_so_good Грустно. Попробуй пошукай в контексте "парсер для rtf", "структура rtf". Может дешевле и эффективнее rtf, как текстовый файл распарсить? В этой теме про VB может спросить... Веб-программеры должны, по идее, часто с подобными задачами сталкиваться. Добавлено: life_so_good Вот, взгляни Это экселевский файл. Надо его положить в одну папочку вместе с primer.rtf В редакторе VBA надо подключить библиотеку Word: Alt+F11, Tools - Refernces - в списке найти 'Microsoft Word 11.0 Object Library' и поставить галку. Зайти в Module1, встать внутрь процедуры sb_rtf2xls и нажать F5. Я объектную модель Word почти не знаю, поэтому не справился с явным выделением текста из рамки. Сделал тупо в лоб - копи-пасте. Из-за этого получаются накладки в ячейках, где присутствуют табуляции. Вобщем, надо, чтобы кто-то, хорошо знающий Ворд подключился. Код: Sub sb_rtf2xls() Dim wrd As Object, frm As Frame, dcm As Document, rng As Range Dim lCol&, lCC&, lRR& Dim sPathName$ Cells.Clear ' clear sheet content sPathName = ThisWorkbook.Path & "\" & "primer.rtf" lCol = 8 ' set columns qty Set wrd = CreateObject("Word.Application") wrd.Visible = True Set dcm = wrd.Documents.Open(sPathName) lRR = 0: lCC = 1 For Each frm In dcm.Frames If lCC = 1 Then lRR = lRR + 1 lCC = lCol + 1 End If lCC = lCC - 1 frm.Copy Cells(lRR, lCC).PasteSpecial (xlPasteValues) Next Set wrd = Nothing End Sub |
| Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 13:54 12-05-2012 | Исправлено: grbdv, 15:19 12-05-2012 |
|