powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
15 сообщений из 15, страница 1 из 1
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34687512
NF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
NF
Гость
Есть многостраничный файл Ворд (140стр). Все что надо - это сделать 140 файлов, в каждом из которых должна быть одна страница из начального документа.
Есть ли готовое решение?
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34687534
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Готового вроде нет. Но можно взять и написать (сложного ничего нет - работы на полчаса). Хотя мб Ivan33 вам чем поможет.
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34689302
Asvad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Готовые решения тож не очень то помогают - потому что если в конце страницы идет перенос слова, то не получается разорвать его, или например даж если нет переноса, а выравнивание абзаца По ширине, нижний абзац приходится разбивать и последняя строка по идее должна быть выравнена к правому краю, но там появляется пробел
Видимо вам нужно что б текст не "гулял" в документе - что часто наблюдается при смене принтеров, или переносе файла на другой комп - то для этого есть решение - создать PDF-файл
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34689327
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34689498
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
готовое решение посмотри, может есть возможность в триале сделать твою задачу
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34689524
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
отсюда код макроса

автор'-------------Begin-----------------
Sub doc_splitter()
' Copyright by W. Polmann
' Use at your own risk

origdoc = ActiveDocument.Name

Dim Mldg, Titel, Voreinstellung, Batches
Mldg = "Number of batches?"
Titel = "Freeware by www.ecm-e.de, W. Polmann."
Voreinstellung = "1" ' Voreinstellung festlegen.
' Meldung, Titel und Standardwert anzeigen.
Batches = InputBox(Mldg, Titel, Voreinstellung)

Prozentsprung = 100 / Batches

For x = 1 To Batches


ActiveDocument.SaveAs FileName:="Teil_" & x & "_" & origdoc & ".doc", _
FileFormat:=wdFormatDocument, LockComments:=False, Password:="", _
AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
:=False, SaveAsAOCELetter:=False


EndeProzentsprung = Prozentsprung * x
AnfangProzentsprung = EndeProzentsprung - Prozentsprung


Selection.GoTo What:=wdGoToPercent, Which:=wdGoToNext, Count:=AnfangProzentsprung, Name:=""
Anfang = Selection.Start

Selection.GoTo What:=wdGoToPercent, Which:=wdGoToNext, Count:=EndeProzentsprung, Name:=""
' Bis zur nächsten Absatzmarke hoch


Selection.Find.ClearFormatting
With Selection.Find
.text = "^p"
.Replacement.text = ""
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
Selection.MoveRight Unit:=wdCharacter, Count:=1
Ende = Selection.End


Set Range = ActiveDocument.Range(Anfang, Ende)


Range.Select
Selection.Copy


Selection.WholeStory
Selection.Delete Unit:=wdCharacter, Count:=1
Selection.Paste
ActiveDocument.Save
ActiveDocument.Close

Documents.Open FileName:=origdoc, _
ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
wdOpenFormatAuto

Next x

ActiveDocument.Close

End Sub
'---------End---------------
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34689539
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34690011
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот моё творение
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
Public Sub FuckingWordPages()
Dim LineCount As Long, i As Long
Dim StartLine As Long, EndLine As Long, CurrentPageNum As Long

Selection.HomeKey unit:=wdStory
LineCount = ThisDocument.BuiltInDocumentProperties("Number of Lines")

StartLine =  1 : CurrentPageNum =  1 
For i =  1  To LineCount
    
    Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=i
    If Selection.Information(wdActiveEndPageNumber) <> CurrentPageNum Then
        ' нашли начало страницы
        EndLine = i -  1  ' на одну строку назад
        ' переход в начало страницы
        Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=StartLine
        ' выделяем
        Selection.MoveDown unit:=wdLine, Count:=EndLine - StartLine +  1 , Extend:=wdExtend
        Selection.Copy
              
        Documents.Add DocumentType:=wdNewBlankDocument
        Selection.PasteAndFormat (wdPasteDefault)
        ThisDocument.Activate
        StartLine = i
        Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=i
        
        CurrentPageNum = Selection.Information(wdActiveEndPageNumber)
    End If
Next i
    EndLine = LineCount
        ' переход в начало страницы
        Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=StartLine
        ' выделяем
        Selection.MoveDown unit:=wdLine, Count:=EndLine - StartLine +  1 , Extend:=wdExtend
        Selection.Copy
              
        Documents.Add DocumentType:=wdNewBlankDocument
        Selection.PasteAndFormat (wdPasteDefault)

        ThisDocument.Activate
    

End Sub
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #34690356
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NF наверное в шоке
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #36100754
mr_ZM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, как можно сохранить каждую страницу word в отдельный файл word именем одного из значений в таблице.
исходный документ получился в результате слияния из excel файлика, т.е. все страницы однотипные. Общее число страниц порядка 500.
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #36101939
mr_ZM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ответ подсказали на ixbt, Nosorog.
Шаблон представляет обычный вордовский документ, места для вставки - названия столбцов в Экселе, обрамленные каким-либо символом: #номер строки#, #наименование# и т.д.
Макрос в Экселе запускает Ворд, открывает этот документ, делает поиск-замену по этим "меткам", сохраняет файл с нужным именем.

Sub mr_ZM()
Dim wrd As Object, doc As Object, x As Range, y As Range
Set wrd = CreateObject("word.application")
'wrd.Visible = True
For Each x In Range(Range("A2"), Range("A1").End(xlDown))
Set doc = wrd.Documents.Open(Filename:="c:\temp\mr_ZM шаблон1.doc", ConfirmConversions:= _
False, ReadOnly:=True)
For Each y In Range(x, x.End(xlToRight))
With doc.Range.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "#" & y.End(xlUp) & "#"
.Replacement.Text = y
.Forward = True
.Wrap = 1 'wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.Execute Replace:=2 'wdReplaceAll
End With
Next
doc.SaveAs "C:\temp\output\" & x & "_" & x.Offset(0, 1)
doc.Close 0
Next
wrd.Quit

End Sub
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #38025913
КИла
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите плз к этой темке есть макрос

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
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 / 0
Период между сообщениями больше года.
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #38955332
lenaterzyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
добрый день! объясните пожалуйста человеческим языком, как сохранить все страницы документа отдельными файлами(документами). каждая страница через разрыв. вот файл если я я не правильно что-то объяснила.
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #38955350
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lenaterzyan,

предыдущий пост смотрел(а)?
...
Рейтинг: 0 / 0
Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
    #38956685
lenaterzyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
big-duke,

[b][b]как можно в этом макросе [/b][/b]
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
Public Sub FuckingWordPages()
Dim LineCount As Long, i As Long
Dim StartLine As Long, EndLine As Long, CurrentPageNum As Long

Selection.HomeKey unit:=wdStory
LineCount = ThisDocument.BuiltInDocumentProperties("Number of Lines")

StartLine = 1: CurrentPageNum = 1
For i = 1 To LineCount
    
    Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=i
    If Selection.Information(wdActiveEndPageNumber) <> CurrentPageNum Then
        ' нашли начало страницы
        EndLine = i - 1 ' на одну строку назад
        ' переход в начало страницы
        Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=StartLine
        ' выделяем
        Selection.MoveDown unit:=wdLine, Count:=EndLine - StartLine + 1, Extend:=wdExtend
        Selection.Copy
              
        Documents.Add DocumentType:=wdNewBlankDocument
        Selection.PasteAndFormat (wdPasteDefault)
        ThisDocument.Activate
        StartLine = i
        Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=i
        
        CurrentPageNum = Selection.Information(wdActiveEndPageNumber)
    End If
Next i
    EndLine = LineCount
        ' переход в начало страницы
        Selection.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=StartLine
        ' выделяем
        Selection.MoveDown unit:=wdLine, Count:=EndLine - StartLine + 1, Extend:=wdExtend
        Selection.Copy
              
        Documents.Add DocumentType:=wdNewBlankDocument
        Selection.PasteAndFormat (wdPasteDefault)

        ThisDocument.Activate
    

End Sub


Модератор: Учимся использовать тэги оформления кода - FAQ


[b][b]добавить такую функцию, которая сохраняла бы все файлы в тхт? [/b][/b]
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как сохранить многостраничный Word в отдельные файлы (по одной странице)?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]