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

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

Dim rCell As Range Set rCell = Range("A2")

With ActiveSheet.Shapes("Picture 1")

.Top = rCell.Top + 5     .Left = rCell.Left + 3 End With

Обратите внимание, что после выполнения этого кода рисунок (определяемый именем Рисунок 1) размещается чуть ниже верхнего края ячейки A2 и справа от ее левого края.

_Примечание: _

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

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (9726) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Positioning_a_Graphic_in_a_Macro [Размещение графики в макросе].