Сжатие всех изображений в книге Excel через VBA - PullRequest
0 голосов
/ 21 апреля 2019

Мне нужна помощь для сжатия всех изображений в книге Excel через VB (формат электронной почты 96 ppi).

Я попробовал sendkeys, но, похоже, он не работает.

Sub test()

  Dim wsh As Worksheet

  Set wsh = Worksheets("Sheet1")
  wsh.Activate
  wsh.Shapes(1).Select

  SendKeys "%JP", True
  SendKeys "%M", True
  SendKeys "%e", True
  SendKeys "~", True

End Sub

Ответы [ 2 ]

0 голосов
/ 22 апреля 2019

Я нашел это решение, и оно работает для меня.Спасибо, Storax

Sub test()

Dim wsh As Worksheet

    Set wsh = Worksheets("Sheet1")
    wsh.Activate
    wsh.Shapes(1).Select

    SendKeys "%w", True
    SendKeys "~", True
    Application.CommandBars.ExecuteMso "PicturesCompress"

End Sub
0 голосов
/ 21 апреля 2019

Может быть, вам поможет следующее "решение"

Sub test()

    Dim wsh As Worksheet

    Set wsh = Worksheets("Sheet1")
    wsh.Activate
    wsh.Shapes(1).Select

    SendKeys "%e", True
    SendKeys "~", True
    Application.CommandBars.ExecuteMso "PicturesCompress"
End Sub

Но если вы не выберете какое-либо изображение, вы получите следующее диалоговое окно при вызове Application.CommandBars.ExecuteMso "PicturesCompress".Если вы выберете Веб / Экран, вы получите разрешение 96 точек на дюйм.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...