Page 1 of 1


PostPosted: 19 Jan 2019, 17:48
by catastrophic999
Am running MS Office 2010 64bit and need a 64bit version of


So far I cannot locate one.
Any and all help and advice gratefully received.

Many thanks

Re: vba332.dll

PostPosted: 21 Jan 2019, 10:49
by DllAdmin
Hello catastrophic999,

Unfortunately we do not have any 64bit vba332.dll available at this time.

What is the exact and complete error message you get regarding this file?
When do you get this error? Windows start? Only when trying a specific program?
Which program is requesting this file? Look for "program".EXE in error message.
Where is this "program".EXE located on your system?

What have you tried so far for solving this error?

Best regards

Re: vba332.dll

PostPosted: 22 Jan 2019, 19:54
by catastrophic999
Dear Erik,

thank you for the email. The problem arises in the context of converting an Excel Spreadsheet from its original 32 bit form into 64 bits. One of the VBA modules contains the following declarations:

Private Declare Function GetCurrentVbaProject _
Lib "vba332.dll" Alias "EbGetExecutingProj" _
(hProject As Long) As Long
Private Declare Function GetFuncID _
Lib "vba332.dll" Alias "TipGetFunctionId" _
(ByVal hProject As Long, ByVal strFunctionName As String, _
ByRef strFunctionId As String) As Long
Private Declare Function GetAddr _
Lib "vba332.dll" Alias "TipGetLpfnOfFunctionId" _
(ByVal hProject As Long, ByVal strFunctionId As String, _
ByRef lpfn As Long) As Long

These all need to be made PtrSafe and in order to do that I need to know what the PtrSafe versions are and, apparently, also to have a 64 bit version of vba332.dll installed.

Hope thaat clarifies the situation

Again my thanks



Re: vba332.dll

PostPosted: 23 Jan 2019, 12:14
by DllAdmin
Dear catastrophic999 ,

I will let you know here if we find a 64bit version of the vba332.dll .

I am sorry to say I am not knowledgeable in the field of Office and VBA stuff.

According to people over at Microsoft Tech Support, the document itself should not need converting, but your VBA code might need adjusting;

"An Excel file is an Excel file, there is no difference between 32-bit and 64-bit.

You only need to make a distinction if you use special VBA code that calls external DLL's directly.
You can check that very easy, search for "Declare" in your VBA code.
If that keyword doesn't exists, forget it, your file is 64-bit compatible.
Otherwise you have to rewrite your VBA code, but you don't need to make any changes in the sheets anywhere!

The only difference between Excel 32-bit application and Excel 64-bit application is that the 64-bit version can address more memory, the 32-bit version is limited to 2GB of memory (means RAM, not file size!). That's all."

Re: vba332.dll

PostPosted: 28 Jan 2019, 12:32
by catastrophic999
The problem arises specifically because the Declare statements in my original post are not compatible with 64 bit usage.

They need to be made PtrSafe. That is obviously straightforward but for all three of the identified functions the argument 'hProject' needs to be made into a LongPtr. Again straightforward. There remains, however, the argument 'lpfn' in the third function. Does that need to be changed??

Finally would the modified function definitions actuallybe compatible with a 32bit dll?