День добрый! У меня возникла такая ситуация: Есть книга. В ней первый лист - реестр. Следующие листы - детальная информация по каждой строке реестра. Необходимо на каждый лист книги сделать ссылки в реестре. Нашел здесь макрос для создания оглавления ( http://www.planetaexcel.ru/tip.php?aid=49 ) Помогите переделать его для моей ситуации. Приложил файл с такой же структурой. В нём надо сделать ссылку на соответствующий лист для каждого имя в реестре.
Sub test() Dim sh As Worksheet: On Error Resume Next For Each sh In ThisWorkbook.Worksheets ' перебираем все листы If Not sh Is reestr Then ' (если лист - не реестр) FIO = sh.Range("c2") ' берем ФИО ' ищем на листе РЕЕСТР в столбце B очередное ФИО With reestr.Range("b:b").Find(FIO, , xlValues, xlWhole) .Hyperlinks.Add .Range("a1"), "", "'" & sh.Name & "'" & "!c2", _ "Перейти к просмотру листа" & vbNewLine & FIO End With End If Next sh End Sub
{quote}{login=EducatedFool}{date=31.03.2011 08:58}{thema=}{post}Вот вам пример макроса:
Sub test() Dim sh As Worksheet: On Error Resume Next For Each sh In ThisWorkbook.Worksheets ' перебираем все листы If Not sh Is reestr Then ' (если лист - не реестр) FIO = sh.Range("c2") ' берем ФИО ' ищем на листе РЕЕСТР в столбце B очередное ФИО With reestr.Range("b:b").Find(FIO, , xlValues, xlWhole) .Hyperlinks.Add .Range("a1"), "", "'" & sh.Name & "'" & "!c2", _ "Перейти к просмотру листа" & vbNewLine & FIO End With End If Next sh End Sub