У меня есть форма в Access 2016 с текстовым полем, в котором мне нужно иметь несколько гиперссылок, разделенных точкой с запятой (которые будут создаваться динамически). Что я решил сделать, так это создать «строку построения гиперссылки» в VBA, а затем присвоить ее значению текстового поля. Итак, что-то вроде:
Me.Field.Value = {link: www.google.com : "Google"} & "; " & {link: www.yahoo.com : "Yahoo"}
... приведет к тому, что это будет в текстовом поле:
Моя проблема в том, что я не могу понять синтаксис для создания отдельной ссылки в текстовом поле, не превращая все текстовое поле в одну гиперссылку, что не сработает.
Я работал с несколькими решениями, которые я нашел. Я читал, что это создаст ссылку так, как мне нужно, но она просто выглядит как буквальный текст со знаками фунта:
"Google # www.google.com # Some Argument"
Я также попытался установить для текстового поля форматированный текст, а затем установить значение, включающее форматированный текстовый код для гиперссылки... но это не работает:
"{\field{\*\fldinst HYPERLINK ""http://www.google.com/""}{\fldrslt http://www.google.com}}"
Я также подумал о разработке запроса, который будет возвращать гиперссылки. Но я как бы хотел сделать это с помощью VBA, потому что у меня будет больше гибкости в том, как я создаю ценность. У кого-нибудь есть какие-либо идеи?
Примечание. Я понимаю, что в реляционной базе данных 1:M должно быть несколько значений. Они есть. Но требования задачи заключаются в том, чтобы получить все значения M для объекта 1, а затем перечислить их через точку с запятой с разделителями, которые все служат ссылками на таблицу сведений для объекта M.