Подсчет измененных слов (Microsoft Word)
Стивен постоянно использует в своих документах «Отслеживание изменений». Ему нужен способ подсчитывать только те слова, которые были изменены в документе — те, на которые влияет функция «Отслеживать изменения».
Ответ заключается в том, что вы можете получить нужную информацию с помощью панели просмотра. Откройте вкладку «Рецензирование» на ленте, затем щелкните инструмент «Панель рецензирования» (в группе «Отслеживание»). Word отображает панель рецензирования на экране, а в верхней части панели отображается сводка изменений, внесенных в документ. Он показывает статистику следующих пяти изменений:
Вставки Удаления Перемещения Изменения форматирования * Комментарии
Может показаться, что эти статистические данные соответствуют всем требованиям, но вы помните, что я сказал, что они предоставляют «своего рода» необходимую информацию. Они немного не справляются, если вы действительно хотите подсчитать количество измененных слов. Статистика кол-во изменений, не измененных слов. Например, если вы удаляете фразу, состоящую из нескольких слов, это изменение считается в статистике только одним удалением. Точно так же, если вы добавляете фразу в свой документ, это добавление считается одной вставкой, даже если вставка содержала полный абзац.
Если вы хотите, чтобы слова были изменены, вам, к сожалению, не повезло — Word не предоставляет возможности получить желаемую информацию. Однако вы можете разработать свой собственный макрос для определения желаемой информации. Вот пример:
Sub GetTCStats() Dim lInsertsWords As Long Dim lInsertsChar As Long Dim lDeletesWords As Long Dim lDeletesChar As Long Dim sTemp As String Dim oRevision As Revision lInsertsWords = 0 lInsertsChar = 0 lDeletesWords = 0 lDeletesChar = 0 For Each oRevision In ActiveDocument.Revisions Select Case oRevision.Type Case wdRevisionInsert lInsertsChar = lInsertsChar + Len(oRevision.Range.Text) lInsertsWords = lInsertsWords + oRevision.Range.Words.Count Case wdRevisionDelete lDeletesChar = lDeletesChar + Len(oRevision.Range.Text) lDeletesWords = lDeletesWords + oRevision.Range.Words.Count End Select Next oRevision sTemp = "Insertions" & vbCrLf sTemp = sTemp & " Words: " & lInsertsWords & vbCrLf sTemp = sTemp & " Characters: " & lInsertsChar & vbCrLf sTemp = sTemp & "Deletions" & vbCrLf sTemp = sTemp & " Words: " & lDeletesWords & vbCrLf sTemp = sTemp & " Characters: " & lDeletesChar & vbCrLf MsgBox sTemp End Sub
Этот макрос проходит через каждое изменение в текущем документе и отдельно суммирует количество слов и количество символов как для вставок, так и для удалений. Затем статистика будет представлена в окне сообщения. Обратите внимание, что макрос просматривает коллекцию слов для каждого изменения в документе.
Вы должны понимать, что количество слов, представленное здесь, является приблизительным. Это из-за способа подсчета слов. Например, каждый знак препинания в добавлении считается отдельным словом. Это означает, что фраза типа «как видите, это отличный способ» будет засчитана как десять слов вместо девяти (запятая считается отдельным словом). Кроме того, если добавленная вами фраза включала в себя начальный пробел — что часто бывает при вставках, — тогда для вставки будет учтено одиннадцать слов из-за этого места.
_Примечание: _
Если вы хотите знать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах WordTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / wordribbon-WordTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
WordTips — ваш источник экономичного обучения работе с Microsoft Word.
(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (11484) применим к Microsoft Word 2007, 2010, 2013, 2016, 2019 и Word в Office 365. Вы можете найти версию этого совета для старый интерфейс меню Word здесь:
link: / word-Counting_Changed_Words [Подсчет измененных слов]
.