Excel OLE Objects Расположение встроенного пути
Как гласит заголовок, я не нашел способа получить ни имя внедренного объекта, ни его путь (прикрепленное изображение)
В приведенном примере я хотел бы получить либо полный путь, либо имя 67CE8... как минимум - поскольку я знаю, что они хранятся в папке Temp - так что я мог бы автоматически сохранять их с помощью VBA. Я пробовал ".SourceName", но без удачи, так как кажется, что он только получает гиперссылку (но настоящей гиперссылки нет, следовательно, ошибка 1004).
РЕДАКТИРОВАТЬ Для кода, который был в комментариях:
ActiveSheet.OLEObjects.Add(Filename:= _ "https://...dummylink" _ , Link:=False, DisplayAsIcon:=False).Select x = Selection.Name Selection.Verb Verb:=xlPrimary
2 ответа
Кажется, нет другого способа, кроме как работать с временными файлами, я получил ответ здесь (нажмите) на обходной код, чтобы сделать это, еще раз спасибо!
Посмотрев на значок на вашем изображении, вы вставили объект, который является файлом, и не отметили "Ссылка на файл", что означает (как вы указали), что он встроен, у него нет пути, поскольку он существует внутри файла.
Я нашел ответ на предыдущий вопрос здесь, но не смог заставить его работать для меня, не открыв диалоговое окно.
Есть более чем вероятно другой способ сделать это, но в Word a была похожая проблема, и я решил ее, используя следующие шаги:
- Выберите и скопируйте объект
- Создать новый документ (рабочую книгу)
- Вставьте объект в
- Сохранить новый документ (книгу) в формате HTML
- Просмотрите сохраненный пакет для единственного файла изображения (поскольку это было единственное в файле)
- Переместите это в место, чтобы я мог использовать его в другом месте
- Удалить новый документ (рабочую книгу) и его HTML-копию