Допустим, мы поместили небольшую таблицу переходов в столбцы S и T , например:
![enter image description here](https://i.stack.imgur.com/zoNjs.png)
Номера строк указаны в столбце T .Мы помещаем раскрывающийся список в R5 и следующий код в области кода рабочего листа:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim R5 As Range, v As String, r As Range
Set R5 = Range("R5")
If Intersect(Target, R5) Is Nothing Then Exit Sub
v = R5.Value
Set r = Range("S:S").Find(what:=v, After:=Range("S1"))
Application.Goto Range("A" & r.Offset(0, 1).Value)
End Sub
Всякий раз, когда пользователь выбирает новое имя в ячейке R5 ,код перейдет к строке, указанной в столбце T .
Поскольку это код рабочей таблицы, очень просто установить и использовать автоматически:
- щелкните правой кнопкой мыши имя вкладки в нижней части окна Excel
- выберите Просмотр кода - откроется окно VBE
- вставьте материал и закройте окно VBE
Если у вас есть какие-либо проблемы, сначала попробуйте на пробном листе.
Если вы сохраните книгу, макрос будет сохранен вместе с ней.Если вы используете версию Excel более поздней, чем в 2003 году, вы должны сохранить файл как .xlsm, а не .xlsx
В удалить макрос:
- откройте окна VBE, как указано выше
- удалите код
- закройте окно VBE
Чтобы узнать больше о макросах в целом, см .:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
и
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
Подробнее о макросах событий (код таблицы) см.
http://www.mvps.org/dmcritchie/excel/event.htm
Для работы должны быть включены макросы!