Если у вас есть идея или совет по эффективному использованию редактора Word, то пишите мне через форму контактов на сайте. Любые ваши дельные советы и подсказки будут размещены в очередных выпусках рассылки и на сайте (с указанием вашего авторства).
Имя документа из текста закладки
Александр спрашивает: Как сделать так, чтобы при сохранении созданного документа в качестве имени файла предлагалось содержимое одной из закладок.
Вся соль состоит в том, чтобы пользователь сохранял документ через стандартную команду «Сохранить», а не отдельной кнопкой, к которой прикручен макрос.
Предположим, что в тексте документа используется множество разных закладок, одна из которых носит имя "Закладка". Вот ее мы и возьмем в качестве имени файла (документа). Далее воспользуемся следующим макросом.
Внимание!
Если вы включите этот макрос в глобальный шаблон Normal.dot, то при сохранении любого документа, основанного на этом шаблоне, будет всегда выводится окно с сообщением. Используйте этот макрос только для других шаблонов, с которыми вы работаете для создания специфических документов, и в имени которых должен быть текст одной из закладок.
Sub FileSave()
'Сохранение документа с именем одной из закладок
'Помощь Graham Mayor
Dim fName As String
On Error Resume Next
If Len(ActiveDocument.Path) = 0 Then
fName = ActiveDocument.Bookmarks("Закладка").Range
If Len(fName) = 0 Then
MsgBox "Документ не содержит закладки." & vbCr & _
"Документ не может быть сохранен."
Exit Sub
End If
ActiveDocument.SaveAs fName & ".doc"
Else
ActiveDocument.Save
End If
End Sub
Наталья работает с отсканированными книгами, в которых вместо обычных сносок стоят верхние надстрочные индексы (1, 2, 3 и т.д.). Наталье необходимо преобразовать все эти псевдосноски в полноценные сноски.
Следующий макрос решает эту задачу:
Sub Superscript2Footnote()
'замена надстрочных символов на сноски
'помощь Steven M.
'http://groups.google.com/group/microsoft.public.word.vba.general/browse_thread/thread/5e3b5c6e4737e268?hl=en#
Dim oRange As Range
Dim fn As Footnote
Set oRange = ActiveDocument.Range
With oRange.Find
.ClearFormatting
.Forward = True
.Format = True
.Wrap = wdFindStop
.Font.Superscript = True
.Execute
While .Found
oRange.Delete
Set fn = ActiveDocument.Footnotes.Add(oRange)
oRange.Move wdWord, 1
.Execute
Wend
End With
End Sub
Операция прервана из-за ограничений, наложенных на данный компьютер
Алексей столкнулся с такой проблемой: При клике мышкой по гиперссылке в документе Word выдается окно "это операция была прервана из-за ограничений наложенных на данный компьютер. Обратитесь к системному администратору". Компьютер куплен в Формозе с установленной ОС ХР. не поскажете, что это может быть? Как это устранить?
Эта, достаточно распространенная проблема, связана с настройками браузера Internet Explorer (одна из причин). Есть мнение, что проблема решается с помощью сброса параметров IE. Для этого:
Запустите Internet Explorer.
В меню Сервис выберите команду Свойства обозревателя. Откроется одноименное диалоговое окно.
На вкладке Программы нажмите кнопку Сброс параметров (для версии IE младше 7) или на вкладке Дополнительно нажмите кнопку Сброс (для версии IE 7) - хотя я сомневаюсь в том, что эта проблема проявляется с новой версией браузера. Если у кого-то это так, то отпишитесь в комментариях о результативности наших действий.
Сергей интересуется: Я подготовил большой текст, в котором много примечаний (annotations). Теперь их всех нужно превратить в сноски. Есть ли возможность это сделать наименее трудоемким способом (Word 97, 2002)?
Есть возможность преобразовать все примечания в тексте в сноски. Вот макрос, который решает эту задачу.
Sub Comments2Footnotes()
'преобразование примечаний в сноски
'помощь Steven M.
Dim actDoc As Document
Dim oRange As Range
Dim comm As String
Dim fn As Footnote
Dim i As Long
Set actDoc = ActiveDocument
For i = actDoc.Comments.Count To 1 Step -1
comm = actDoc.Comments(i).Range.Text
Set oRange = actDoc.Comments(i).Scope
oRange.Select
With Selection
If Right(.Range, 1) = Chr(32) Then
.MoveLeft unit:=wdCharacter, Count:=1, Extend:=wdExtend 'удаляем пробелы в конце дипапзона примечания, если они есть
Set oRange = .Range
End If
End With
oRange.Collapse wdCollapseEnd
actDoc.Comments(i).Delete
Set fn = actDoc.Footnotes.Add(oRange)
fn.Range.Text = comm
Next i
Selection.Collapse wdCollapseStart
End Sub
Вся информация, представленная на сайте WordExpert.ru и в этой рассылке, никаким образом не связана с корпорацией Microsoft. В рассылке упоминаются компании и продукты, которые могут быть зарегистрированными торговыми марками и принадлежать различным физическим и юридическим лицам как на территории РФ, так и за ее пределами.
Авторские права на все материалы, опубликованные на сайте WordExpert.ru и в этой рассылке (включая текст, фотографии, подборку, расположение и т.п.) принадлежат Кокину Антону Вадимовичу, если не указано иное. Вы можете свободно использовать и распространять эти материалы с обязательной ссылкой вида "Информация с сайта WordExpert.ru" и с обязательным указанием автора материала.
Все материалы, опубликованные на сайте WordExpert.ru и в этой рассылке, представлены на информационной основе. Вы можете использовать любую информацию с сайта WordExpert.ru или из данной рассылки исключительно на свой страх и риск. Тем не менее, я рекомендую перед применением какой-либо информации с сайта WordExpert.ru или из данной рассылки обязательно сохранять и создавать резервные копии ваших документов.
В этой рассылке также упоминаются различные web-страницы с соответствующими ссылками. Эти ссылки указываются исключительно в информационных целях и никакой рекомендации или одобрения с моей стороны данных веб-страниц не подразумевается, если не указано иное.