Перейти к содержимому

Как скопировать изображение с листа в пользовательскую форму в Excel?

Author: Siluvia Last Modified: 2025-08-07

В этой статье вы узнаете методы копирования изображения с активного листа в пользовательскую форму в Excel.

Копирование изображения с листа в пользовательскую форму путем копирования и вставки
Копирование изображения с листа в пользовательскую форму с помощью кода VBA


Копирование изображения с листа в пользовательскую форму путем копирования и вставки

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

1. Перейдите на лист, содержащий изображение, которое нужно скопировать в пользовательскую форму, а затем нажмите клавиши Alt + F11 вместе, чтобы открыть окно Microsoft Visual Basic for Applications.

2. В окне Microsoft Visual Basic for Applications нажмите Вставить > Пользовательская форма. См. скриншот:

click Insert > Userform

3. Теперь вставьте элемент управления Изображение в Пользовательскую форму. Нажмите кнопку Изображение в диалоговом окне Панель инструментов, затем вручную нарисуйте элемент управления Изображение в Пользовательской форме. См. скриншот:

insert an Image Control into the UserForm

4. Щелкните правой кнопкой мыши вставленный элемент управления Изображением и выберите Свойства из контекстного меню, как показано на скриншоте ниже:

Right-click the Image control, and click Properties

5. Затем вы увидите панель свойств, которая отображается слева в окне Microsoft Visual Basic for Applications.

6. Вернитесь на лист и выберите изображение, которое хотите отобразить в пользовательской форме, а затем скопируйте его, нажав клавиши Ctrl + C.

7. Вернитесь в окно Microsoft Visual Basic for Applications, прокрутите вниз до поля Изображение и вставьте скопированное имя изображения под вкладкой Алфавитный порядок.

Теперь изображение с листа скопировано в пользовательскую форму.

a screenshot of kutools for excel ai

Раскройте магию Excel с Kutools AI

  • Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
  • Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
  • Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
  • Интерпретация формул: Легко разбирайтесь в сложных формулах.
  • Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Улучшите возможности Excel с помощью инструментов на базе ИИ. Скачать сейчас и испытайте беспрецедентную эффективность!

Копирование изображения с листа в пользовательскую форму с помощью кода VBA

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

1. Пожалуйста, следуйте шагам 1 и 2 выше, чтобы вставить пользовательскую форму в ваш рабочий лист.

2. Затем вставьте элемент управления Фрейм в Пользовательскую форму, как показано на скриншоте ниже:

insert a Frame Control into the UserFrom

3. Щелкните правой кнопкой мыши вставленный Фрейм и выберите Свойства из контекстного меню. На левой панели свойств выберите Нет из поля Видимый. См. скриншот:

Right-click the Frame, and select Properties, then select False from the Visible field

4. Вставьте несколько элементов управления Изображение в Фрейм, как показано на скриншоте ниже.

Insert multiple Image control into the Frame

5. Вернитесь на лист и выберите изображение, которое хотите отобразить в пользовательской форме, и нажмите клавиши Ctrl + C, чтобы скопировать его.

6. Вернитесь в окно Microsoft Visual Basic for Applications, щелкните правой кнопкой мыши первый элемент управления Изображение и выберите Свойства из контекстного меню. См. скриншот.

right-click the first Image control, and select Properties

7. В панели свойств нажмите на поле Изображение, затем нажмите клавиши Ctrl + V, чтобы вставить изображение, скопированное на шаге 5, и выберите 1 – fmPictureSizeModeStrtch из раскрывающегося списка PictureSizeMode, как показано на скриншоте ниже.

set options in the Properties pane

8. Повторите шаги 5-7, чтобы вставить другие изображения с листа в оставшиеся элементы управления Изображение в Пользовательской форме. Результат будет отображаться, как показано на скриншоте ниже.

Repeat to paste other pictures

9. Переместите элемент управления Фрейм в угол Пользовательской формы, затем вставьте новый элемент управления Изображение и элемент управления Выпадающий список в Пользовательскую форму. См. скриншот:

insert a new Image control and a Combo Box control into the UserForm

10. Щелкните правой кнопкой мыши Пользовательскую форму, а затем нажмите Просмотр кода. Затем скопируйте и вставьте приведенный ниже код VBA, чтобы заменить оригинальный код в окне Код.

Right-click the UserForm, and then click View Code

Код VBA1: Копирование изображения с листа в пользовательскую форму

Private Sub ComboBox1_Change()
    UserForm1.Controls.Item("Image4").Picture = UserForm1.Controls.Item(UserForm1.ComboBox1.Value).Picture
End Sub
Private Sub UserForm_Initialize()
    Dim xImg As Control
    On Error Resume Next
    For Each xImg In UserForm1.Controls
        If TypeName(xImg) = "Image" And xImg.Name <> "Image4" Then
            UserForm1.ComboBox1.AddItem xImg.Name
        End If
    Next
End Sub

Примечание: В коде UserForm1 — это имя вставленной пользовательской формы, Image4 — это имя элемента управления Изображение, в котором будут отображаться изображения. А Image представляет все элементы управления Изображение, которые содержат изображения, скопированные с листа. ComboBox1 — это имя выпадающего списка, который вы вставили в пользовательскую форму. Пожалуйста, измените их на свои собственные.

11. Закройте окно Microsoft Visual Basic for Applications.

12. Вставьте кнопку команды в рабочий лист, нажав Разработчик > Вставить > Кнопка команды (элемент управления ActiveX).

13. Щелкните правой кнопкой мыши кнопку команды и выберите Просмотр кода из контекстного меню. Затем скопируйте и вставьте приведенный ниже код VBA в окно Код. И, наконец, закройте окно.

Right-click the command button and select View Code

Код VBA2: Копирование изображения с листа в пользовательскую форму

Private Sub CommandButton1_Click()
UserForm1.Show
End Sub

15. Нажмите Разработчик > Режим конструктора, чтобы отключить режим конструктора.

С этого момента при нажатии на кнопку команды появится пользовательская форма. Вы можете отобразить изображение, выбрав имя изображения из выпадающего списка. См. скриншот:

when clicking the command button, the UserForm will pop up

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

Select different names from the combo box will display different pictures in the UserForm


Связанные статьи:

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Переворот в анализе данных на основе: Интеллектуальное выполнение   |  Сгенерировать код  |  Создать Пользовательские Формулы  |  Анализ данных и генерация диаграмм  |  Вызов Kutools Functions
Популярные функции: Найти, выделить или отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячейки без потери данных   |   Округлить...
Супер ПОИСК: VLookup с несколькими критериями    VLookup с несколькими значениями  |   Многолистовой поиск   |   Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскр. список   |  Зависимый раскрывающийся список   |  Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки   |  Дизайн листа   |   Улучшенная строка формулы    Управление книгой и листами   |  Библиотека автотекста (Auto Text)   |  Выбор даты   |  Объединить данные   |  Шифрование/Расшифровка ячеек    Отправить письмо по списку   |  Супер фильтр   |   Специальный фильтр (фильтр по жирному/курсиву/зачеркиванию...) ...
Топ–15 наборов инструментов: 12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...)   |   50+ типов диаграмм (Диаграмма Ганта, ...)   |   40+ практических формул (Расчет возраста на основе даты рождения, ...)   |   19 инструментов вставки (Вставить QR-код, Вставить изображение из пути, ...)   |  12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...)   |  7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...)   |   ... и многое другое
Используйте Kutools на вашем предпочитаемом языке – поддерживаются английский, испанский, немецкий, французский, китайский и более40 других языков!

Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени.  Щелкните здесь, чтобы получить наиболее нужную вам функцию...


Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!