powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как подкорректировать макрос так, чтобы названием документа на выходе были первые два слов
5 сообщений из 5, страница 1 из 1
Как подкорректировать макрос так, чтобы названием документа на выходе были первые два слов
    #38983239
Alla Potehina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
макрос:

Код: 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.
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:\Users\Алла\Desktop\Исторические портреты"
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



что нужно написать в этой вот части
ActiveDocument.SaveAs FileName:="test_" & DocNum & ".doc"
чтобы в названии документа были первые два слова этого документа, а не "test_" & DocNum
...
Рейтинг: 0 / 0
Как подкорректировать макрос так, чтобы названием документа на выходе были первые два слов
    #38983630
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Слово - понятие растяжимое :) Будем считать, что это последовательность букв и цифр.
Код: 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.
Sub BreakOnPage()
Dim i As Long, docNum As Long, re As Object, mt, fn As String
Set re = CreateObject("vbscript.regexp")
re.ignorecase = True
re.Global = True
re.Pattern = "[0-9A-ZА-ЯЁ]+"

Selection.HomeKey wdStory
' Used to set criteria for moving through the document by page.
Application.Browser.Target = wdBrowsePage
ChangeFileOpenDirectory "C:\temp"

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
  
  Set mt = re.Execute(ActiveDocument.Range.Text)
  Select Case mt.Count
  Case Is > 1:  fn = mt(0) & "_" & mt(1)  'есть 2 слова
  Case 1:       fn = mt(0)                'есть только 1 слово
  Case Else                               'нет слов, используем номер
    docNum = docNum + 1
    fn = Format$(docNum, "000")
  End Select
  ActiveDocument.SaveAs FileName:=fn & ".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
Как подкорректировать макрос так, чтобы названием документа на выходе были первые два слов
    #38983677
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Казанский, ну ты и навернул

Код: vbnet
1.
2.
ThisDocument.Range.Words(1)
ThisDocument.Range.Words(2)
...
Рейтинг: 0 / 0
Как подкорректировать макрос так, чтобы названием документа на выходе были первые два слов
    #38983717
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,
вставь в новый документ Re: Как подкорректировать макрос и попробуй.
А еще бывает картинка на всю страницу.
...
Рейтинг: 0 / 0
Как подкорректировать макрос так, чтобы названием документа на выходе были первые два слов
    #38983739
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
согласен ))
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как подкорректировать макрос так, чтобы названием документа на выходе были первые два слов
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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