Я предполагаю, что вы хорошо разбираетесь со стилями и т.д. В Word, и просто перекомпоновка в Word не работает для вас.
Я не понимаю, если вы ищете:
- Выполните однократное преобразование или сохраните документ как есть;
- Вставьте эти строки как записи в программу календаря или просто отобразите данные в формате calendar-y.
Если вы выполняете однократное преобразование, просто сохраните документ в текстовом формате и поработайте со строками.
Если вы хотите импортировать строки в программу календаря, вы можете экспортировать их в файлы .ics, которые можно импортировать практически в любую программу для составления календаря, например, Календарь Google и т.д. См. Http://en.wikipedia.org/wiki/ICalendar для получения подробной информации о макете.
Если вы просто ищете дисплей, пометьте строки именами стиля даты / активности, используя синтаксис, например
<style type="text/css">
ol.daylist { list-style-type: lower-roman }
li.dayofweek { list-style-type: none }
li.todoitem { background-color:#00ff00;}
</style>
<ol class="daylist">
<li class="dayofweek">Monday</ol>
<li class="todoitem">8-9 Wake up</li>
<li class="todoitem">9-12 Work out</li>
</ol>
и использовать файл CSS для отображения данных, как вам нравится.
Если вы хотите использовать существующий документ как есть и просто отображать его динамически, используйте VBA, чтобы прочитать содержимое документа и записать строки в виде html-файла, который затем можно открыть в системном веб-браузере.
Этот пример кода, адаптированный с http://www.exceltip.com/show_tip/Applications_-_Word,_Outlook_in_VBA/Control_Word_from_Excel_using_VBA_in_Microsoft_Excel/465.html, показывает, как можно использовать макрос VBA для открытия документа и чтения каждой строки.
Вы можете увидеть, где, если в документе используются стили, вы можете проверить стиль и использовать его, чтобы определить, какой стиль назначить строке, когда вы записываете ее в HTML-файл.
Sub OpenAndReadWordDoc()
Dim wrdApp As Word.Application
Dim wrdDoc As Word.Document
Dim tString As String, tRange As Word.Range
Set wrdApp = CreateObject("Word.Application")
Set wrdDoc = wrdApp.Documents.Open("c:\calendar.docm")
With wrdDoc
For p = 1 To .Paragraphs.Count
Set tRange = .Range(Start:=.Paragraphs(p).Range.Start, End:=.Paragraphs(p).Range.End)
tString = tRange.Text
tString = Left(tString, Len(tString) - 1) 'this is to avoid including CR/LF
MsgBox (tString)
Next p
.Close ' close the document
End With
wrdApp.Quit ' close the Word application
Set wrdDoc = Nothing
Set wrdApp = Nothing
End Sub