Как увеличить фото в excel

Макрос позволяет увеличивать / уменьшать изображения на листе Excel по щелчку мыши.

Для использования макроса, скопируйте в свой файл модуль с кодом (просто перетащив его мышкой из прикреплённого файла),
выделите все картинки в своём файле Excel, и назначьте им макрос ZoomImage

Чтобы выделить все изображения, проделайте следующее:

  • нажмите Ctrl + G (для появления диалогового окна «Переход»)
  • нажмите кнопку «Выделить» в этом диалогом окне
  • в появившемся окне «Выделение группы ячеек» поставьте галочку «Объекты», и нажмите OK

После этого (как все картинки будут выделены), щелкните на одной из картинок правой кнопкой мыши,
в контекстном меню нажмите «Назначить макрос», выделите макрос ZoomImage, и нажмите OK

При щелчке на картинке, макрос плавно увеличивает картинку в 3 раза, попутно перемещая её в центр экрана
(коэффициент увеличения, скорость увеличения фото, и количество промежуточных шагов увеличения, можно задать в коде)

Для увеличения создаётся копия исходной картинки.
При щелчке на увеличенной картинке, она плавно уменьшается в размерах, после чего удаляется.

Код макроса ZoomImage:

Sub ZoomImage()
    ' Макрос для увеличения / уменьшения картинок в Excel, по щелчку на них
    ' © 2013 EducatedFool     ExcelVBA.ru/code/ZoomImages

    Const ZOOM_RATIO# = 3    ' коэффициент увеличения изображения
    Const STEPS_COUNT& = 20    ' количество промежуточных шагов при увеличении
    Const ZOOM_SPEED# = 2   ' скорость увеличения / уменьшения картинки ( от 0 до 10)

    On Error Resume Next: Err.Clear: Dim sha As Shape, s_sha As Shape, i&
    Set s_sha = ActiveSheet.Shapes(Application.Caller)
    If Err Then Exit Sub    ' выход, если макрос вызван не щелчком на картинке

    If s_sha.Name Like "BigImage_*" Then    ' щелчок на увеличенной картинке
        With s_sha
            cx1# = .Left + .Width / 2: cy1# = .Top + .Height / 2
            dw# = .Width / STEPS_COUNT&
            dt# = ZOOM_SPEED# / 50 / STEPS_COUNT&
 
            For i& = 1 To STEPS_COUNT&    ' в цикле уменьшаем картинку
                t = Timer: .Width = .Width - dw#
                .Left = cx1# - .Width / 2: .Top = cy1# - .Height / 2
                While Timer - t < dt#: DoEvents: Wend
            Next i
            .Delete    ' а потом удаляем её
        End With
 
    Else    ' щелчок на исходной картинке, - создаём её копию, и увеличиваем
        For Each sha In ActiveSheet.Shapes
            If sha.Name Like "BigImage_*" Then sha.Delete
        Next
 
        Set sha = s_sha.Duplicate    ' создаем копию картинки
        sha.Top = s_sha.Top: sha.Left = s_sha.Left    ' помещаем копию поверх исходной
        sha.Name = "BigImage_" & Timer    ' переименовываем изображение
        sha.LockAspectRatio = 1
 
        ' если есть закреплённые столбцы и строки
        TopRowsHeight# = Range("1:1").RowHeight    ' закреплена первая строка
        LeftColumnsWidth# = 0    ' закреплённых столбцов нет

        With sha
            cx1# = .Left + .Width / 2: cy1# = .Top + .Height / 2
 
            cx2# = Columns(ActiveWindow.ScrollColumn).Left - LeftColumnsWidth# + _
                   ActiveWindow.Width / 2 * 100 / ActiveWindow.Zoom
            cy2# = Rows(ActiveWindow.ScrollRow).Top - TopRowsHeight# + _
                   ActiveWindow.Height / 2 * 100 / ActiveWindow.Zoom
 
            dw# = .Width * (ZOOM_RATIO# - 1) / STEPS_COUNT&
            dx# = (cx2# - cx1#) / STEPS_COUNT&: dy# = (cy2# - cy1#) / STEPS_COUNT&
            cx# = cx1#: cy# = cy1#: dt# = ZOOM_SPEED# / 50 / STEPS_COUNT&
 
            For i& = 1 To STEPS_COUNT&
                t = Timer: cx# = cx# + dx#: cy# = cy# + dy#
                .Width = .Width + dw#: .Left = cx# - .Width / 2: .Top = cy# - .Height / 2
                While Timer - t < dt#: DoEvents: Wend
            Next i
        End With
    End If
End Sub

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

Увеличивать изображение при нажатии на него с кодом VBA


Увеличивать изображение при нажатии на него с кодом VBA

Следующий код VBA может помочь вам увеличить изображение, щелкнув его в Excel. Пожалуйста, сделайте следующее.

1. Щелкните правой кнопкой мыши изображение, которое необходимо увеличить, просто щелкнув по нему, затем щелкните Назначить макрос из контекстного меню. Смотрите скриншот:

2. в Назначить макрос диалоговое окно, щелкните Новинки кнопку.

3. Во всплывающем Microsoft Visual Basic для приложений окна, скопируйте и вставьте приведенный ниже код VBA между ниже и End Sub коды. Смотрите скриншот:

Код VBA: увеличьте изображение, щелкнув по нему в Excel

Dim shp As Shape
    Dim big As Single, small As Single
    Dim shpDouH As Double, shpDouOriH As Double
    big = 3   
    small = 1 
    On Error Resume Next
    Set shp = ActiveSheet.Shapes(Application.Caller)
    With shp
        shpDouH = .Height
        .ScaleHeight 1, msoTrue, msoScaleFromTopLeft
        shpDouOriH = .Height
    
        If Round(shpDouH / shpDouOriH, 2) = big Then
            .ScaleHeight small, msoTrue, msoScaleFromTopLeft
            .ScaleWidth small, msoTrue, msoScaleFromTopLeft
            .ZOrder msoSendToBack
        Else
            .ScaleHeight big, msoTrue, msoScaleFromTopLeft
            .ScaleWidth big, msoTrue, msoScaleFromTopLeft
            .ZOrder msoBringToFront
        End If
    End With

Внимание: В коде можно назначить большие размеры картинки в коде big = 3.

4. Затем нажмите другой + Q клавиши одновременно, чтобы закрыть Microsoft Visual Basic для приложений окно.

С этого момента, когда вы нажимаете на изображение, оно будет увеличено до указанного вами размера, а повторное нажатие вернет его к исходному размеру, как показано на скриншотах ниже.


Статьи по теме:

  • Как заблокировать изображение / изображение в ячейке или внутри нее в Excel?
  • Как динамически вставлять изображение или изображение в ячейку на основе значения ячейки в Excel?

Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

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

офисный дно

Комментарии (9)


Оценок пока нет. Оцените первым!

Здесь можно получить ответы на вопросы по Microsoft Excel 57350 469102

30 Сен 2018 13:56:23

44519 357828

29 Янв 2017 17:28:40

Лучшие избранные темы с основного форума 14 80

28 Июн 2018 15:25:11

Если вы — счастливый обладатель Mac 😉 217 1059

21 Сен 2018 06:21:34

Раздел для размещения платных вопросов, проектов и задач и поиска исполнителей для них. 2080 13278

29 Сен 2018 20:15:30

Если Вы скачали или приобрели надстройку PLEX для Microsoft Excel и у Вас есть вопросы или пожелания — Вам сюда. 307 1580

28 Сен 2018 09:07:46

800 11414

30 Сен 2018 13:59:28

Обсуждение функционала, правил и т.д. 268 3463

28 Сен 2018 12:42:51

Сейчас на форуме (гостей: 353, пользователей: 13, из них скрытых: 4) , , , , , , , ,

Сегодня отмечают день рождения (35), (45), (47), (60)

Всего зарегистрированных пользователей: 82854

Приняло участие в обсуждении: 31731

Всего тем: 105554

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

Так сделать можно, и довольно просто!

Кликните правой кнопкой мыши на ячейке и выберите «Вставить примечание» (рис. 1).

как сделать увеличивающуюся картинку в excel

Рис. 1

Щелкните правой кнопкой мыши на границе примечания и выберите «Формат примечания» (рис. 2).

как сделать увеличивающуюся картинку в excel

Рис. 2

В открывшемся окне переходим на вкладку «Цвета и линии», раскрываем выпадающий список «Цвет» и выбираем пункт меню «Способы заливки» (рис. 3).

как сделать увеличивающуюся картинку в excel

Рис. 3

В открывшемся окне «Способы заливки» нажимаем кнопку «Рисунок», ищем интересующий файл изображения и подтверждаем свой выбор (рис. 4).

как сделать увеличивающуюся картинку в excel

Рис. 4

После выбора изображения ставим галочку «Сохранять пропорции рисунка» и нажимаем «ОК» (рис 5.).

как сделать увеличивающуюся картинку в excel

Рис. 5

Мышью регулируем размер примечания, чтобы картинка была хорошо видна. Затем, щелкаем на ячейке правой кнопкой мыши и выбираем «Скрыть примечание» (рис. 6)

как сделать увеличивающуюся картинку в excel

Рис. 6

Теперь, при наведении курсора на ячейку мы видим связанное с ней изображение (рис.7).

как сделать увеличивающуюся картинку в excel

Рис. 7

8 ноября 2012, 22:59

Я давно хотела узнать, как можно увеличить рисунок, сделать его форматом больше чем А-4. 

1.Выбрать на компьютере программу Microsoft Office Excel 2007, нажав на надпись 1 раз курсором ( левая клавиша мыши): 

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

3.Найдём раздел «вставка» и нажимаем 1 раз всё той же клавишей:
4. выбираем в открывшемся окошке «рисунок» и нажимаем опять 1 раз:
5. В открывшемся окне обычным образом выбираем рисунок, выбранный для увеличения, пометили(1 раз): 
6. Вставляем (1 раз): 
7. Видим, что рисунок разместился в программе на клеточках для увеличения:
8. Подводим курсор к правому нижнему (свободному) углу картинки, нажимаем на клавишу –левую- и не отпуская, растягиваем картинку чуть –чуть, убеждаясь, что это возможно
9.Теперь нам надо сделать разметку, Выбрать нужный размер картинки, 1 раз нажимая на «разметка страницы»:
10. Нажимаем 1 раз «размер» в открывшемся окне:
11.Выбираем в открывшемся окне «А4» и нажимаем 1 раз:
12.Убедились, что на поле появилась сетка из линий – это разметка страниц:
13.Повторим пункт «8» с учётом необходимого размера картинки:

14.Последний шаг. Картинка увеличена, осталось предварительно просмотреть или просто сохранить или напечатать сразу. Для этого нам нужна кнопка Office (помечаем 1 раз):
15. Если наша цель – просто получить увеличение, то при печати надо не забыть в «свойства» поставить «Быстрая черновая печать». В итоге получаем несколько страниц А4, которые надо соединить, чтобы получить увеличенный рисунок.
Вот и всё!!! Попробуйте! Обязательно получится! 
Увеличивать картинки позволяет любая версия этой программы!!! Есть только небольшие нюансы, которые легко освоить.

Предлагаю всем интересующимся макрос, который масштабирует картинки в Excel.

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

Отдельные картинки, в режиме когда они увеличены, можно масштабировать динамически с сохранением нового значения масштаба используя клавиши Ctrl+Alt+UP и Ctrl+Alt+DOWN.

Для присвоения базового масштаба картинкам необходимо после открытия книги с данным макросом нажать Ctrl+Alt+Right. По умолчанию картинкам присваивается масштаб равный 90% высоты всех строк, которые видны на экране. Если размеры экрана изменить — изменится и размер увеличенной картинки.

Чтобы заменить значение по умолчанию для всех картинок используются клавиши Ctrl+Alt+Left
Текст макроса с комментариями ниже:

Private Sub auto_open()
Application.OnKey "^%{RIGHT}", "EnumImageV2" 'Запуск перенумерации картинок выполняется по нажатию клавиш Ctrl+Alt+Стрелка вправо
Application.OnKey "^%{LEFT}", "ImgScaleAll" 'Изменение масштаба всех картинок на листе выполняется по нажатию клавиш Ctrl+Alt+Стрелка влево
ThisWorkbook.OnSheetActivate = "DelImg" 'Сброс увеличенных картинок при переключении листов
End Sub

Private Sub ImgScaleAll()
    DelImg                  'Удаляются все увеличенные ккартинки
    dblSend = InputBox("Масштаб задается в виде положительной десятичной дроби" & Chr(13) & "(разделитель запятая)" & Chr(13) _
    & "Чем больше цифра, тем больше картинка", "Укажите масштаб для ВСЕХ картинок", 0.9)
    On Error Resume Next
    dblSend = CDbl(dblSend)  'Если  введено правильное число, через запятую, то все пойдёт дальше, иначе сообщение об  ошибке
    If Err Then
        If MsgBox("Вы ввели неверное значение" & Chr(13) & "Хотите повторить?", vbYesNo) = vbYes Then
            ImgScaleAll         'Перезапуск текущего макроса, при желании  пользователя повторить ввод
        Else: Exit Sub          'При отказе  пользователя повторить ввод - выход из макроса
        End If
    End If
    Err.Clear
    EnumImageV2 CDbl(dblSend)   'вызывается макрос  перенумерации картинок, но в нем не выполняется перенумерация, а просто присваивается новый масштаб
End Sub

Private Sub ImgScalePlus()
With ActiveSheet
    For Each ZmImg In .Shapes                                       'выполняется  проверка названий всех картинок на листе
      If ZmImg.Name Like "Zoom*" Then                               'Отбирается картинка, у которой в названии есть Zoom
        strImgName = Mid(ZmImg.Name, 5)                             'Вырезается имя исходной картинки
        varData = CDbl(.Shapes(strImgName).AlternativeText) + 0.1   'Определяется значение масштабированияя исходной картинки и увеличивается на 10%
        .Shapes(strImgName).AlternativeText = CStr(varData)         'Новое значение масштабирования присваивается исходной картинке
        ZoomImageV3 CStr(strImgName)                                'Вызывается макрос ZommImageV3
      End If
    Next
End With
End Sub

Private Sub ImgScaleMinus()
With ActiveSheet
    For Each ZmImg In .Shapes                                       'выполняется  проверка названий всех картинок на листе
      If ZmImg.Name Like "Zoom*" Then                               'Отбирается картинка, у которой в названии есть Zoom
        strImgName = Mid(ZmImg.Name, 5)                             'Вырезается имя исходной картинки
        varData = CDbl(.Shapes(strImgName).AlternativeText) - 0.1   'Определяется значение масштабированияя исходной картинки и уменьшается на 10%
        .Shapes(strImgName).AlternativeText = CStr(varData)         'Новое значение масштабирования присваивается исходной картинке
        ZoomImageV3 CStr(strImgName)                                'Вызывается макрос ZommImageV3
      End If
    Next
End With
End Sub


Private Sub EnumImageV2(Optional dblSnd As Double)
' Макрос находит все картинки в активной книге и нумерует их по порядку
' начиная с левого верхнего угла и после присвоения номера сразу назначает картинке макрос ZoomImageV3
' совершенно не важно когда запускать этот макрос: до назначения масштабирования или после
' масштаб,  который указан в замещающем тексте  представляет собой процент от размеров текущей  рабочей области представленной на экране
i = 1
    For Each varShtsItm In ActiveWorkbook.Sheets
        For Each varImgItm In varShtsItm.Shapes
            If varImgItm.Name Like "Image_*" Then                       'Отрабатывает при запуске пользователем макроса по изменению масштаба для всех картинок
                If dblSnd > 0 Then varImgItm.AlternativeText = dblSnd   'Если масштаб был изменён, то значение  записывается в Замещающий  текст  картинки
            Else                                                        'Если картинка ранее не нумеровалась, то меняется её  имя  и ей присваивается номер
                 varImgItm.Name = "Image_" & i                          'Новые Имя и номер картинки
                 varImgItm.OnAction = "ZoomImageV3"                     'Назначение макроса масштабирующего картинку
                 varImgItm.AlternativeText = "0,9"                      'Запись  в  замещающий  текст  масштаба по умолчанию
            End If
        i = i + 1
        Next
    Next
End Sub

Private Sub ZoomImageV3(Optional strImgName As String)
Attribute ZoomImageV3.VB_ProcData.VB_Invoke_Func = " n14"
    Dim dblWinHeight As Double, dblWinWidth As Double
    Dim dblWinCenterTop As Double, dblWinCenterLeft As Double   'переменные для определения параметров окна
    Dim objPict0 As Shape, objPict As Shape                     'переменные-объекты для работы с картинками
    Dim PictZoom As Double                                      'Переменная определяет размер картинки  по которому она будет отмасштабирована
    With ActiveWindow.VisibleRange                                              'Вычисляем параметры видимой на экране области
        dblWinHeight = WorksheetFunction.Round(.Height, 2)                      'Высота видимой области ячеек
        dblWinWidth = WorksheetFunction.Round(.Width, 2)                        'Ширина видимой области ячеек
        dblWinCenterTop = WorksheetFunction.Round(.Top + dblWinHeight / 2, 2)   'Расстояние сверху до центра видимой области ячеек
        dblWinCenterLeft = WorksheetFunction.Round(.Left + dblWinWidth / 2, 2)  'Расстояние слева до центра видимой области ячеек
    End With
    On Error Resume Next
    Set objPict0 = ActiveSheet.Shapes(Application.Caller)       'Обработка нажатия мышкой на картинке
    If Err Then
        V = strImgName
        Set objPict0 = ActiveSheet.Shapes(V)
    End If
    Err.Clear
    On Error Resume Next
    DelImg                               'Проверка наличия и удаление увеличенных рисунков, отмена назначения кнлавиши ESC (подпрограмма)
    If Err Then Exit Sub                 'Если  удаление картинки было вызвано отмасштабированной картинкой, то происходи выход из макроса
    Err.Clear
    On Error Resume Next
    сZoomWin = CDbl(objPict0.AlternativeText)    'переменная, задающая коэффициент масштабирования картинки относительно границ рабочей области окна, значение берётся из Альтернативного текста картинки
    If Err Then
        сZoomWin = 0.9                       'Если в Альтернативном тексте введено некорректное значение, то присваивается значение по умолчанию
        objPict0.AlternativeText = "0,9"
    End If
    Err.Clear
    Set objPict = objPict0.Duplicate        'Создание копии картинку, которая будет увеличиваться
    objPict.Name = "Zoom" & objPict.Name    'Добавление к новой картинке префикса "Zoom"
    objPict.LockAspectRatio = msoTrue       'Активация свойства рисунка,  при котором размеры изменяются пропорционально
    If dblWinHeight < dblWinWidth Then      'Проверка параметров окна, что больше высотиа или ширина окна
        PictZoom = dblWinHeight * сZoomWin  ' Если высота окна меньше ширины, то за основу берётся меньшая величина (высота)
    Else
        PictZoom = dblWinWidth * сZoomWin   ' Если высота окна больше ширины, то за основу берётся меньшая величина (ширина)
    End If
    With objPict                    'Работаем с картинкой и её свойствами
        If .Height > .Width Then    'Проверка параметров картинки
            .Height = PictZoom      'Если высота картинки больше ширины, то картинка масштабируется по высоте
        Else
            .Width = PictZoom       'Если высота картинки меньше ширины, то картинка масштабируется по ширине
        End If
        .Top = WorksheetFunction.Round(dblWinCenterTop - (.Height / 2), 2)  'Определение положения верхней границы картинки
        .Left = WorksheetFunction.Round(dblWinCenterLeft - (.Width / 2), 2) 'Определение положения левой границы картинки
    End With
  Application.OnKey "{ESC}", "DelImg"          'Назначение клавиши ESC для удаления увеличенных картинок
  Application.OnKey "^%{UP}", "ImgScalePlus" 'Увеличение масштаба отдельной картинки выполняется по нажатию клавиш Ctrl+Alt+Стрелка вверх
  Application.OnKey "^%{DOWN}", "ImgScaleMinus" 'Уменьшение масштаба отдельной картинки выполняется по нажатию клавиш Ctrl+Alt+Стрелка вниз
End Sub

Private Sub DelImg()
With ActiveSheet
    For Each ZmImg In .Shapes                       'выполняется  проверка названий всех картинок на листе
      If ZmImg.Name Like "Zoom*" Then ZmImg.Delete  'удаляются картинки с названием,  содержащим "Zoom"
    Next
End With
Application.OnKey "{ESC}"                           'Присвоение клавише ESC стандартной функции
Application.OnKey "^%{UP}"                           'Сброс  функционала  клавиш
Application.OnKey "^%{DOWN}"                         'Сброс  функционала  клавиш
End Sub


Download Article


Download Article

Do you have an image or logo that you want to add to your Excel sheet to make it more visually appealing? While there is no automatic setting that will resize your image inside a cell, you can do it yourself with a few clicks. This wikiHow article will teach you how to insert pictures in Excel and size them to fit into cells.

Steps

  1. Image titled 12969546 1

    1

    Open your project in Microsoft Excel. You can do this by going to File > Open within Excel or you can right-click the project file and select Open with > Excel.

  2. Image titled 12969546 2

    2

    Insert an image. You can do this by going to Insert > Pictures > Selecting your picture > Insert.

    Advertisement

  3. Image titled 12969546 3

    3

    Resize it. When you have the image selected, you’ll see a «Size» grouping under «Format» and «Picture Tools.»

    • Change the Height and Width to adjust the size of your image. Instead, you can drag and drop the corners of the image to re-adjust the size.
  4. Image titled 12969546 4

    4

    Lock the image to the cell. By default, the image you added «floats» above your cells and doesn’t change size as your cells do. To fix this, you need to lock the image or the cell.

    • Right-click your picture and click Format Picture. Then click the «Size & Properties» tab (a symbol with a green square with arrows around it) and select Move and size with cells.
      • You can also use a VBA code after you’ve inserted some pictures. Insert the images and press Alt + F11 to open the VBA window. Click Insert > Module and paste the following code:
      • Public Sub FitPic()
        On Error GoTo NOT_SHAPE
        Dim PicWtoHRatio As Single
        Dim CellWtoHRatio As Single
        With Selection
        PicWtoHRatio = .Width / .Height
        End With
        With Selection.TopLeftCell
        CellWtoHRatio = .Width / .RowHeight
        End With
        Select Case PicWtoHRatio / CellWtoHRatio
        Case Is > 1
        With Selection
        .Width = .TopLeftCell.Width
        .Height = .Width / PicWtoHRatio
        End With
        Case Else
        With Selection
        .Height = .TopLeftCell.RowHeight
        .Width = .Height * PicWtoHRatio
        End With
        End Select
        With Selection
        .Top = .TopLeftCell.Top
        .Left = .TopLeftCell.Left
        End With
        Exit Sub
        NOT_SHAPE:
        MsgBox "Select a picture before running this macro."
        End Sub
        
    • Press F5 to run the code and repeat this process until all the images in your sheet fit into cells.
  5. Advertisement

Add New Question

  • Question

    When I resize a picture to a smaller cell and then restore it, I lose the detail. How can I avoid this?

    CJ89483

    When you resize an image to a smaller size and then restore it to its original size, the image may lose some of its detail and sharpness. To avoid this, it is best to start with the original high-resolution image and use good-quality resizing software that includes bicubic interpolation. Bicubic interpolation is a resizing method that helps preserve detail and sharpness in the image. It is also important to avoid resizing the image too much and to save a copy of the original image. By following these tips, you can help ensure that your images retain their detail and quality when resized.

Ask a Question

200 characters left

Include your email address to get a message when this question is answered.

Submit

Advertisement

Thanks for submitting a tip for review!

About This Article

Article SummaryX

1. Open your project in Microsoft Excel.
2. Insert an image.
3. Resize it.
4. Lock the image to the cell.

Did this summary help you?

Thanks to all authors for creating a page that has been read 83,153 times.

Is this article up to date?

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Как увеличить формат ячейки в excel
  • Как увеличить формат таблицы в excel для печати
  • Как увеличить формат word
  • Как увеличить условное форматирование в excel
  • Как увеличить точность в excel

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии