Как конвертировать .jpg или .gif файлы в формат .bmp?

Для того, чтобы сохранить все .jpg или .gif файлы, которые могут находиться в указанной (нужной) папке, в формате .bmp, можно создать пользовательскую форму, разместить на ней элемент управления Рисунок - Image1 и скрыть этот элемент управления установив значение Visible = False. Затем, по мере необходимости, использовать свойство Picture, вкупе с функцией LoadPicture и инструкцией SavePicture.

code: #vba
Private Sub ConvertJPGtoBMP_Click()
     With Application.FileSearch
          .NewSearch
          .SearchSubFolders = False 'True
          .LookIn = ThisWorkbook.Path 'Укажите свою папку
          .FileName = "*.jpg" '"*.jpeg" игнорируются 'XL97 - ".jpg"
          .Execute
          For iCount& = 1 To .FoundFiles.Count
              iFileName$ = .FoundFiles(iCount&)
              Me.Image1.Picture = LoadPicture(FileName:=iFileName$) ':DoEvents
              'SetAttr iFileName$, vbNormal: Kill iFileName$
              'Если необходимо удалить исходные файлы
              Mid(iFileName$, Len(iFileName$) - 2, 3) = "bmp"
              SavePicture Picture:=Me.Image1.Picture, FileName:=iFileName$
          Next
     End With
End Sub

Если работы с диалоговым окном не предполагается, то просто используйте инструкцию SavePicture и функцию LoadPicture

code: #vba
Private Sub ConvertJPGtoBMP()
    iPath$ = ThisWorkbook.Path & "\" 'Укажите свою папку
    iFileName$ = Dir(iPath$ & "*.jpg") '"*.jpeg" игнорируются
    Do While iFileName$ <> ""
       SavePicture LoadPicture(iPath$ & iFileName$), _
       iPath$ & Left(iFileName$, Len(iFileName$) - 3) & "bmp"
       iFileName$ = Dir
    Loop
End Sub
Поделиться:

Похожие статьи: