Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2014, 23:16   #1
Coolira
Новичок
Джуниор
 
Регистрация: 16.10.2014
Сообщений: 1
По умолчанию Выделение всех исправлений в тексте

Добрый день! Подскажите, как можно быстро выделить и скопировать все исправления в тексте? Вообще задача такая: Есть большой файл (ок. 3 тыс страниц), в этом файле куча исправлений (где-то штук 700). В идеале от файла должны остаться только исправления (вставки и удаления) и несколько строк до/после исправления. Я каждый месяц вручную проделываю эту работу, сил уже нет. Если у кого-то есть мысли - подтолкните меня к решению, пожалуйста )) а мб есть какой-то элементарный способ, а сижу и туплю (
Ну хотя бы выделить все исправления как?
Coolira вне форума Ответить с цитированием
Старый 07.11.2014, 13:44   #2
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,077
По умолчанию

попробуйте макрос на копии документа
Код:
Sub w41107_1213()
'
Dim rev As Revision, j1, S0, S1, S2, SS
Dim pr As Paragraph
    ''ActiveWindow.View.MarkupMode = wdInLineRevisions
    ''ActiveWindow.ToggleShowAllReviewers
    Debug.Print Word.ActiveDocument.Revisions.Count
    SS = ""
    For Each pr In Word.ActiveDocument.Paragraphs
    j1 = 0
    S1 = pr.Range.Text
    If pr.OutlineLevel <> wdOutlineLevelBodyText Then
    S0 = pr.Range.Text
    End If
    
    
    If pr.Range.Revisions.Count > 0 Then
     If Len(S0) > 0 Then
    SS = SS & "### " & Chr(13) & Chr(10)
    SS = SS & "### " & S0
    SS = SS & "### " & Chr(13) & Chr(10)
    S0 = ""
    End If
    S2 = "----------ИЗМЕНЕННАЯ СТРОКА--------" & Chr(13) & Chr(10)
    SS = SS & S2
    SS = SS & S1
 
    
    
    For Each rev In pr.Range.Revisions
    j1 = j1 + 1
    
    
    
    Debug.Print j1; "/"; rev.Type; " DT="; rev.Date; " AVT="; rev.Author; " TEXT="; rev.Range.Text
    'Debug.Print rev.Style
      SS = SS & j1 & "/" & rev.Type & " DT=" & rev.Date
      SS = SS & " AVT=" & rev.Author
      SS = SS & " TEXT=" & rev.Range.Text & Chr(13) & Chr(10)
  
    'Debug.Print rev.Style
    Next rev
    End If
NEXT_PR:
    Next pr
    Word.Documents.Add
    Selection.Range.Text = SS
End Sub
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа со строками.Выделение букв в тексте. DIQUON Помощь студентам 2 06.12.2013 15:55
Выделение цветом абзацов с одинаковыми числовыми значениями в тексте в Word'e xamillion Microsoft Office Word 16 01.09.2010 08:39
Организовать поиск всех вхождений заданного слова в загруженном тексте s2dentishe Помощь студентам 0 21.11.2009 18:53
выделение всех чекбоксов + onClick Yurka_kursant JavaScript, Ajax 8 14.04.2009 21:52
[Delphi] Выделение частей речи в тексте vince Помощь студентам 8 07.12.2008 23:37