2015-08-11 2 views
1

Пожалуйста, помогите:Split файл большого RTF в нескольких файлов

У меня есть большой RTF файл с примерно 400 страниц. Я хочу разбить RTF-файл на несколько файлов на основе количества строк.

Например:

Я хочу разделить каждые 15 строк в новый файл в формате RTF. Это возможно?

Мне удалось разделить документ на новой странице, но мне нужно разбить его на основе количества строк. Макрос я использовал, чтобы разбить файл на основе новой страницы:

Sub BreakOnPage() 
    ' Used to set criteria for moving through the document by page. 
Application.Browser.Target = wdBrowsePage 

For i = 1 To ActiveDocument.BuiltInDocumentProperties("Number of Pages") 

    'Select and copy the text to the clipboard. 
    ActiveDocument.Bookmarks("\page").Range.Copy 

    ' Open new document to paste the content of the clipboard into. 
    Documents.Add 
    Selection.Paste 
' Removes the break that is copied at the end of the page, if any. 
    Selection.TypeBackspace 
    ChangeFileOpenDirectory "C:\" 
    DocNum = DocNum + 1 
    ActiveDocument.SaveAs FileName:="test_" & DocNum & ".doc" 
    ActiveDocument.Close 

    ' Move the selection to the next page in the document. 
    Application.Browser.Next 
Next i 
ActiveDocument.Close savechanges:=wdDoNotSaveChanges 
End Sub 
+0

так что это слово-vba? Не могли бы вы прояснить, что вы ожидаете от решения (хотя я не слишком много знаком с word-vba, так что может думать, что вам нужен макрос или некоторый код vba, неуверенный) –

+0

@ DanielBrose: Спасибо за вашу заботу. Да, это слово-VBA. На самом деле я разработчик iOS. Мне нужно отобразить один файл RTF на страницу в uipageviewController. Поэтому мне нужно разбить большой файл RTF на несколько файлов, которые можно легко отобразить на UIPAGEVIEWCONTROLLER. Я думаю использовать макрос или скрипт для aplit этого файла RTF. Мне удалось разбить RTF на основе новой страницы, но мне нужно разбить ее в соответствии с количеством строк, которые могут отображаться на моем UIPAGEVIEWCONTROLLER. –

ответ

0

хотя я не в программирование IOS, может быть, этот VBA код может помочь вам:

Sub SplitDoc() 

    SplitAfterLines 15 

End Sub 


Private Sub SplitAfterLines(xLines As Integer) 

    Dim docCounter As Integer 
    Dim docPath As String 
    Dim lineMove As Long 

    docPath = ActiveDocument.Path 
    docCounter = 1 

    Selection.HomeKey wdStory 

    Do 
     lineMove = Selection.MoveDown(wdLine, xLines, wdExtend) 
     If lineMove < xLines Then 
      ActiveDocument.SaveAs2 docPath & "\Split_" & docCounter & ".doc" 
      Exit Do 
     End If 

     Selection.Cut 
     Application.Documents.Add 
     Selection.Paste 
     ActiveDocument.SaveAs2 docPath & "\Split_" & docCounter & ".doc" 
     ActiveDocument.Close 
     docCounter = docCounter + 1 
    Loop 

    ActiveDocument.Close 

End Sub 

Хотя я уверен, есть более чистый способ сделать это, я надеюсь, что это поможет вам войти в нужное вам направление ...

+0

Спасибо за ваше драгоценное время, но я справился с ним в самом ios. –

Смежные вопросы