Имя: Пароль:
IT
 
VBA Excel subscript out of range при попытке получить гиперссылку
0 umnick
 
13.03.12
01:08
При попытке отработать код:
MsgBox (Cells(5, 5).Hyperlinks(1).Address)

Выдает сообщение:
subscript out of range

Попробовал еще такой код:
MsgBox (Cells(5, 5).Text)
Работает нормально

Пожалуйста подскажите что не так
1 ЗлобнийМальчик
 
13.03.12
01:11
попробуйте в отладчике посмотреть что выдает код Cells(5, 5).Hyperlinks(1)
2 umnick
 
13.03.12
01:25
subscript out of range
3 Tatitutu
 
13.03.12
01:26
(0)  у тебя не указан явно лист
т.е. если на текущем листе в ячейке (5,5) есть ссылка то ок
нет будет ошибка

MsgBox (ActiveSheet.Cells(5, 5).Hyperlinks(1).Address)

MsgBox (WorkSheet("Лист1").Cells(5, 5).Hyperlinks(1).Address)
4 umnick
 
13.03.12
01:33
(3) Попробовал оба варианта: все равно выскакивает та же ошибка.
MsgBox (Cells(5, 5).Text) сделал специально чтобы проверить что правильно указываю ячейку содержащую ссылку, т.е. в той ячейке наверняка есть ссылка и ошибка не из-за отсутствия ссылки в ячейке.
5 Tatitutu
 
13.03.12
01:35
см (3) и не спорь

проверь активный лист

MsgBox (Cells(5, 5).value)
6 Tatitutu
 
13.03.12
01:36
(4) название листа поменял в коде ?
7 umnick
 
13.03.12
01:37
(3) Выдает то же что в книге написано в той ячейке
(4) Поменял название листа в книге
8 Tatitutu
 
13.03.12
01:40
(7) все работает идеально
и в 2003 и в 2010
уверен что гиперссылка есть ?
9 umnick
 
13.03.12
01:44
(9) Гиперссылка была задана формулой
ГИПЕРССЫЛКА("http://tmmp.com.ua/pic/IMG_3380.JPG";"смотреть фото")
Поэтому и не работала.

Всем спасибо за помощь!
Основная теорема систематики: Новые системы плодят новые проблемы.