Ссылка на ячейку, содержащую путь к файлу

Я использую следующий код, чтобы захватить и изменить размер изображения из файла, чтобы я мог распечатать его как часть формы.

Private Sub CommandButton1_Click() ActiveSheet.Pictures.Insert ("C:\Filepath\Example.jpg") With ActiveSheet.Shapes(ActiveSheet.Shapes.Count) .LockAspectRatio = True 'maintain aspect-ratio .Top = Range("B2").Top .Left = Range("B2:H2").Left .Width = Range("B2:H2").Width 'same width of C3 End With End Sub 

Моя проблема заключается в том, что я пытаюсь получить код для ссылки на ячейку, которая содержит путь к файлу для импортируемой фотографии. Он работает только в том случае, если я ввожу путь к файлу напрямую в код. Может кто-нибудь посоветует мне, как это сделать, пожалуйста.

Скажем, например, я хочу вставить фотографию C: \ Filepath \ Example.jpg, и я набрал этот путь к файлу (или, в идеале, просто имя самого файла, но теперь я соглашусь на полный путь к файлу) в ячейку A1 и хочу используйте командную кнопку для импорта фотографии с помощью приведенного выше кода. Должен ли я определять A1 как строку или что-то еще? Я не использовал excel в течение года, и, увы, моя память оставила меня 🙁

Вы можете просто получить содержимое ячейки A1 в активном листе следующим образом:

 ActiveSheet.Range("A1").Value ' or .Text 

Итак, предполагая, что путь к вашему изображению находится в ячейке A1, тогда в вашем коде вы замените:

 ActiveSheet.Pictures.Insert ("C:\Filepath\Example.jpg") 

с:

 ActiveSheet.Pictures.Insert ActiveSheet.Range("A1").Value 

Примечание: вам не нужны скобки.

Interesting Posts

Excel: whatif, когда в столбце есть как положительные, так и отрицательные числа

Устранение ошибки при добавлении строк в несколько листов

Вставить текст перед каждой ячейкой Excel

Прокрутить список инструкций по запросу

создание диаграммы в таблице Excel с использованием NPOI

Регулярное выражение VBA для соответствия диапазону времени, например «13:30 – 12:00»,

Расширение надстройки и надстройка COM

Excel 2010 VBA «Если» Поток справа налево или слева направо

Импорт данных из файла XLS с использованием ADO и Delphi

excel суммировать все ячейки, в которых другая ячейка содержит строку

Добавить форматирование в формулу Excel вложенных функций

VBA: Получите Excel FileDialogOpen, чтобы указать на «Мой компьютер» по умолчанию

Изменение размера строки таблицы в другой размер строки таблицы

Загрузить результаты SQL в CSV и PDF

выделить целую строку, используя условный формат

Давайте будем гением компьютера.