Note: The other languages of the website are Google-translated. Back to English

Як вставити малюнок у текстове поле?

За замовчуванням ми можемо швидко вставити малюнок або зображення на аркуш за допомогою функції Вставити, але ця функція не застосовується для вставки зображення в текстове поле. За допомогою цієї статті я можу допомогти вам вставити малюнок у текстове поле, як вам потрібно.

Вставте малюнок або зображення в текстове поле з кодом VBA


стрілка синя права міхур Вставте малюнок або зображення в текстове поле з кодом VBA

Щоб вставити малюнок у текстове поле, вам може допомогти такий код VBA, зробіть так:

1. Вставте текстове поле, клацнувши Insert > Текстове поле, а потім намалюйте текстове поле, див. знімок екрана:

doc вставити зображення в текстове поле 1

2. Потім утримуйте клавішу ALT + F11 ключі, щоб відкрити Microsoft Visual Basic для додатків вікна.

3. Клацання Insert > Модуліта вставте наступний код у Модулі Вікно

Код VBA: Вставте зображення в текстове поле:

Sub ShapePicture()
    Dim xSh As Shape
    Dim xPic As IPictureDisp
    Dim xFileName As String
    xFileName = "C:\Users\DT168\Desktop\pictures\Apple.JPG"
    Set xPic = LoadPicture(xFileName)
    Set xSh = Sheets("Sheet4").Shapes(1)
    xSh.Height = xPic.Height / xPic.Width * xSh.Width
    Set xPic = LoadPicture("")
    Set xPic = Nothing
    xSh.Fill.UserPicture xFileName
End Sub

примітки: У наведеному вище коді, Sheet4 - назва аркуша, що містить текстове поле, до якого потрібно вставити малюнок, та C: \ Users \ DT168 \ Desktop \ pictures \ Apple.JPG це шлях до зображення, який ви хочете вставити, ви повинні змінити їх відповідно до своїх потреб.

4. А потім натисніть F5 клавішу для запуску цього коду, конкретне зображення буде відразу вставлено в текстове поле, і ви можете редагувати текстове поле, як вам потрібно, див.

doc вставити зображення в текстове поле 2


Статті по темі:

Як встановити значення за замовчуванням у текстовому полі?

Як дозволити вводити в текстове поле лише цифри?

Як застосувати перевірку правопису в текстовому полі?

Як змінити колір текстового поля на основі значення в Excel?


Найкращі інструменти для підвищення продуктивності офісу

Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%

  • Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
  • Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
  • Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
  • Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
  • Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
  • Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
  • Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
  • Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
  • Понад 300 потужних функцій. Підтримує Office / Excel 2007-2021 і 365. Підтримує всі мови. Легке розгортання на вашому підприємстві чи в організації. 30-денна безкоштовна пробна версія повних функцій. 60-денна гарантія повернення грошей.
вкладка kte 201905

Вкладка Office забезпечує інтерфейс з вкладками для Office і значно спрощує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (6)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
Спробував цей макрос у Excel 365. Він не спрацював. Повідомлення про помилку не отримано. Макрос був завершений. Зображення не відображається в текстовому полі.
Цей коментар був мінімізований модератором на сайті
Привіт, Харві,
Чи змінюєте ви назву аркуша та шлях до зображення на свої власні в коді? Будь ласка, перевірте це, дякую!

примітки: У наведеному вище коді, Sheet4 - назва аркуша, що містить текстове поле, до якого потрібно вставити малюнок, та C: \ Users \ DT168 \ Desktop \ pictures \ Apple.JPG це шлях до зображення, який ви хочете вставити, ви повинні змінити їх відповідно до своїх потреб.
Цей коментар був мінімізований модератором на сайті
Це працює ідеально. Змініть лише назву текстового поля, як показано:
Встановити xSh = Sheets("Sheet1").Shapes("TextBox 2")
Цей коментар був мінімізований модератором на сайті
Привіт Скай
Я змінив назву аркуша та шлях зображення. Але все одно не працює.

У мене є помилки в "xSh.Fill.UserPicture xFileName"

Велике спасибі.
Мег
Цей коментар був мінімізований модератором на сайті
Привіт, Мег,
Код у цій статті може добре працювати для простого зображення імені.
Якщо назва вашого зображення складна, слід застосувати наведений нижче код:
примітки: Будь ласка, змініть Текстове поле 1 до власної назви текстового поля.
Sub InsertPicture()
    Dim sPicture As String, pic As Picture
    Dim shp As Shape, shps As ShapeRange  
    sPicture = Application.GetOpenFilename("Pictures (*.gif; *.jpg; *.bmp; *.tif;*.png), *.gif; *.jpg; *.bmp; *.tif; *.png", _
        , "Select Picture to Import") 
    If sPicture = "False" Then Exit Sub   
    Set shp = ActiveSheet.Shapes("Text Box 1")
    Set pic = ActiveSheet.Pictures.Insert(sPicture)
    With pic
        .Name = "My Picture"
        .ShapeRange.LockAspectRatio = msoFalse
        .Height = shp.Height
        .Width = shp.Width
        .Top = shp.Top
        .Left = shp.Left
        .Placement = xlMoveAndSize
    End With
    Set shps = ActiveSheet.Shapes.Range(Array("Text Box 1", "My Picture"))
    shps.Group
    shps.Name = "Pic inside text box"    
    Set pic = Nothing
End Sub


Будь ласка, спробуйте, сподіваюся, це допоможе вам!
Якщо у вас виникли інші проблеми, прокоментуйте тут.
Цей коментар був мінімізований модератором на сайті
Так, я змінив обидва. Я не отримав жодних помилок, коли запустив макрос за допомогою клавіші F5.

Я спробував розмістити макрос у різні папки робочої книги, аркуша, модуля, модуля класу, але результати були однаковими: немає зображення в текстовому полі.


Дякую, що написали. Прізвище Гекер, до речі....опечатка
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця

Слідуй за нами

Copyright © 2009 - WWW.extendoffice.com. | Всі права захищені. На основі ExtendOffice. | Карта сайту
Microsoft та логотип Office є товарними знаками або зареєстрованими товарними знаками Microsoft Corporation у США та / або інших країнах.
Захищений Sectigo SSL