我在使用VBA创建二维码的时候提示olepro32.dll文件未找到,我检查了我的windows文件夹下面是存在该文件的
Private Declare PtrSafe Function OleCreatePictureIndirect Lib "olepro32.dll" (lpPictDesc As PictDesc, riid As GUID, ByVal fPictureOwnsHandle As Long, IPic As IUnknown) As Long
Public Function BitmapToPicture(ByVal hBmp As Long, ByVal fPictureOwnsHandle As Long) As StdPicture
If (hBmp = 0) Then Exit Function
Dim oNewPic As IUnknown, tPicConv As PictDesc, IGuid As GUID
With tPicConv
.cbSizeOfStruct = Len(tPicConv)
.picType = 1
.hImage = hBmp
End With
With IGuid
.Data4(0) = &HC0
.Data4(7) = &H46
End With
OleCreatePictureIndirect tPicConv, IGuid, fPictureOwnsHandle, oNewPic
Set BitmapToPicture = oNewPic
End Function
Sub 图片创建()
Dim Picture_obj As Object
Picture_obj = BitmapToPicture("-821731954 ", 1)
End Sub
运行环境是Windows11 64位系统,Office 365 此段VBA代码在32位系统可以正常执行并创建一个图片对象