2015-10-16 3 views
1

Мне нужно использовать Snipping Tool для захвата нескольких скриншотов, а затем скопировать & вставьте его в мой шаблон электронной почты Outlook.Изменение ширины изображений в Outlook 2013 с использованием кодов VBA

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

То есть код должен будет проходить через текущий объект, который открыт и идентифицировать объект изображения, и запускать коды для изменения ширины изображения (с включенным соотношением сторон).

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

p.s. Я сделал поиск и понял, что ShapeRange применяются только для Word, Powerpoint, Excel, Project, и т.д.

Option Explicit 

Sub ChangeWidth() 

Dim objApp As Outlook.Application 
Dim objItem As Outlook.MailItem 
Dim OrigShape As ShapeRange 
Dim image As Object 

Set objApp = Application 
Set objItem = objApp.ActiveInspector.CurrentItem 

objItem.ShapeRange.LockAspectRatio = msoTrue 
objItem.ShapeRange.Width = 255.1181103 

End Sub 

ответ

1

Вы должны использовать InlineShapes:

Option Explicit 

Sub ChangeWidth() 

Dim objApp As Outlook.Application 
Dim objItem As Outlook.MailItem 
Dim iShape As InlineShape 
Dim image As Object 

Set objApp = Application 
Set objItem = objApp.ActiveInspector.CurrentItem 

For Each shp In objItem.InlineShapes 
    If shp.HasPicture Then 
     shp.LockAspectRatio = msoTrue 
     'shp.ScaleHeight = 150 
     'shp.ScaleWidth = 150 
     'or 
     shp.Width = 255.1181103 
    End If 
Next 

End Sub 
+0

Привет R3uK, Спасибо за ваш ответ! Однако, HasPicture работает только для ContactItems. Поэтому я тоже не смог запустить программу. Вы знаете, как я могу использовать коды VBA, чтобы определить, есть ли изображение в теле электронной почты? – JJ2015

+0

Без проблем, рад, что я мог бы помочь! Устрашает ли ваша проблема? если он действительно подтвердит (тик справа под вверх/вниз голос) ответ, чтобы отметить ваш вопрос, как решена! ;) – R3uK

+0

Я только что видел редактирование вашего комментария. Я не имею в виду способ идентифицировать это, я тоже посмотрю, но если вы найдете правильную ссылку или что-то еще, напишите здесь, я улучшу свой ответ, чтобы полностью функционировать! ;) – R3uK

Смежные вопросы