:: Visual Foxpro, Foxpro for DOS
Как добавить гиперссылку в ячейку Excel?
Konstantin_Pavlovich

Сообщений: 143
Откуда: Москва
Дата регистрации: 21.11.2007
Здравствуйте! Надо чтобы в ячейках Excel были ссылки на фотографии товара, сам excel создаётся с помощью Foxpro. Сделал просто ссылки, типа http://адрес фотографии/имя файла.jpg, но этот адрес получился в виде строки, а надо, чтобы была именно гиперссылка. Чтобы можно было одним нажатием мышки перейти по заданному адресу. А вот это у меня не получается! Пробовал поработать с функцией гиперссылка, ставить её как в текст, так и в формулу ячейки, никакого результата. Например, o_ex.application.cells(1,1).value='=гиперссылка("http://...")' всё равно получается просто текст и только после кликания мышки он становится гиперссылкой. Пробовал свойству ячейки hyperlink что-то присвоить, тоже ничего не получилось. Перепробовал кучу разных вариантов, так ничего и не добился. Может быть кто-то знает, как решить данную проблему?


------------------
С уважением
Стороженко Константин Павлович




Исправлено 2 раз(а). Последнее : Konstantin_Pavlovich, 12.11.18 00:13
Ratings: 0 negative/0 positive
Re: Как добавить гиперссылку в ячейку Excel?
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Konstantin_Pavlovich
o_ex.application.cells(1,1).value='=гиперссылка("http://...")' всё равно получается просто текст

По идее там вставляется не как "значение", а именно "гиперссылка", т.е. должен быть другой синтаксис.
Попробовал через макросы выцепить и адаптировать, похоже, что-то типа вот такого вроде бы вставляет именно гиперссылку:
WITH oBook.ActiveSheet
.Hyperlinks.Add(.Range("D3"), "https://forum.foxclub.ru/read.php?29,775938")
ENDWITH


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)




Исправлено 1 раз(а). Последнее : Crispy, 12.11.18 11:04
Ratings: 0 negative/0 positive
Re: Как добавить гиперссылку в ячейку Excel?
Igor Korolyov
Автор

Сообщений: 34580
Дата регистрации: 28.05.2002
Для того чтобы задавать в ячейке формулу нужно использовать свойство .Formula а не .Value.
Ну или .FormulaLocal если зачем-то захочется задавать "локализованный" вариант функции, а не английский. Учитывая что у пользователя вполне может оказаться другая локализация и такой код попросту сломается (потому предпочтительнее всё же .Formula и "английское" написание имён функций, форматов чисел и способов разделения параметров)
.Cells(1,1).Formula = [=HYPERLINK("https://forum.foxclub.ru/read.php?29,775938", "Форум")]
Вполне работоспособно.
НО эту функцию имеет смысл применять если сами значения для URL и для "подписи" находятся в каких-то ячейках в книге (и, соотвествтенно, параметрами функции будут адреса ячеек). Для "просто вставки ссылки" вариант Криспы предпочтительнее - он вставляет именно простую ссылку, а не формулу которая преобразуется в ссылку Для полноты картины описание метода Add коллекции Hyperlinks
Можно задать и текст и всплывающую подсказку для создаваемой ссылки. В фоксе параметры можно только строго по порядку в скобках указывать, "по именам" нельзя задавать их.


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Как добавить гиперссылку в ячейку Excel?
Konstantin_Pavlovich

Сообщений: 143
Откуда: Москва
Дата регистрации: 21.11.2007
Спасибо всем за ответы, завтра попробую.


------------------
С уважением
Стороженко Константин Павлович
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 24 alex;  (Гостей: 23)

© 2000-2024 Fox Club 
Яндекс.Метрика