Я пытаюсь создать макрос, который вставляет объект в Excel, который связан, а не встроен. У меня есть диалоговое окно формы, где путь к файлу и описание нужного объекта, которые будут отображаться, вводятся пользователем. Когда они нажимают кнопку «Ссылка», запускается следующий код:
Private Sub CommandButton2_Click()
ActiveSheet.OLEObjects.Add(Filename:= _ FilePath _, Link:=True, DisplayAsIcon:=True, IconFileName:= _"H:\Z) REFERENCE\logo_HFX_icon.ico", _ IconIndex:=0, IconLabel:=FileNaming).Select
End Sub
Строки FilePath и FileNaming определяются формой пользователя, упомянутой выше. Значок является стандартным значком, который я хочу отобразить вместо значка типа документа, заданного c.
У меня проблема со ссылкой: = Истинная часть. Если я запускаю код, создается связанный объект, но файл, на который он ссылается, не является исходным входным путем к файлу FilePath. Путь к файлу для связанного объекта - это просто временная копия файла в C: \ Users \ USERNAME \ AppData \ Local \ Microsoft \ Windows \ INetCache \ Content.MSO. Если я установлю Link: = False, файл встраивается просто отлично.
Какие-либо предложения относительно того, как я могу гарантировать, что связанный файл сохраняет тот же путь к файлу?