Подскажите пожалуйста, как быстро найти сноску, если в самой сноске отсутствует текст?
Макрос для перехода к первой страничной или концевой сноске, у которой нет текста.
Принцип такой: если нет пустых страничных сносок, то макрос дойдёт и до концевых сносок. Если есть пустые страничные сноски, то макрос раньше завершит работу.
Макрос
Sub Макрос()
Dim objNote As Object
'1. Цикл по страничным сноскам.
For Each objNote In ActiveDocument.Footnotes
' Если в тексте сноски пусто.
If objNote.Range.Text = "" Then
' Перестановка текстового курсора перед номером сноски.
Selection.GoTo What:=wdGoToFootnote, Which:=wdGoToAbsolute, Count:=objNote.Index
' Выделение слова, которое находится слева от знака сноски, чтобы бросалось в глаза.
Selection.Words(1).Previous.Words(1).Select
' Выход из процедуры.
Exit Sub
End If
Next objNote
'2. Цикл по концевым сноскам.
For Each objNote In ActiveDocument.Endnotes
If objNote.Range.Text = "" Then
Selection.GoTo What:=wdGoToEndnote, Which:=wdGoToAbsolute, Count:=objNote.Index
Selection.Words(1).Previous.Words(1).Select
Exit Sub
End If
Next objNote
'3. Сообщение, если нет пустых сносок.
MsgBox "В файле нет пустых сносок.", vbInformation
End Sub
В ворде есть ещё возможность просмотреть все сноски в одном месте:
- вкладка "Вид" - группа "Режимы" - Черновик;
- вкладка "Ссылки" - группа "Сноски" - Показать сноски;
- если есть и страничные и концевые сноски, то появится диалог для выбора, какие сноски показать, выберите те, которые хотите посмотреть.
После этих действий внизу монитора вы увидите область со всеми сносками и можете легко прокручивать эту область в поисках пустых абзацев.
Чтобы выбрать нужный вид сносок, снова щёлкните "Показать сноски", чтобы отобразить диалог для выбора нужного вида сносок.
Спасибо.