4

With Microsoft's latest forced update to Office 365 that broke so many Access databases using tables ODBC links to server databases, I've been trying to find a way to pull the Office build info while in MS-Access and display that info in a Main form for troubleshooting.

There's many solutions out there that use Application.Version in VBA but that doesn't seem to show the offending update version. I'm looking for a solution that maybe can find it using Registry, DLL or a VBA Object property.

In Access - under File | Account I can see the offending version under

  • Product Information in Office Click-To-Run

Office Version

or,

  • About Access in Apps For Business

Apps for Business version

From VBA I can get the following

Debug.Print Application.Version & "." & Application.Build & vbcrlf & Application.ProductCode
16.0.8326 
{90160000-000F-0000-0000-0000000FF1CE}

Looking at the properties of MSAccess.exe only shows the same app versions

MS-Access.exe

EDIT

No luck with registry setting either

Looking at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\Configuration only shows

CurrentVersionToReport=16.0.8326.2096

dbmitch
  • 5,361
  • 4
  • 24
  • 38

4 Answers4

3

This is, unfortunately, not a trivial task, but Colin made a serious attempt:

Access / Office 365 / Windows Version Check

Version 2.55. Updated 26/11/2021

Attached is a utility for checking the following: a) Access version & bitness b) Whether Office 365 is installed c) Windows version & bitness (32/64-bit)

Several functions are available for obtaining the Access version in varying degrees of detail.

  • GetAccessVersion e.g. 16.0 (for Access 2016/2019/2021/365)
  • GetAccessBuildVersion e.g. 16.0.14701 (for Access 365)
  • GetAccessEXEVersion e.g. Access 365 - Build 16.0.14701.20226

These are combined with another function IsOfficex64 which returns the value 32-bit or 64-bit

The full Windows version is obtained using a GetWindowsVersion function which returns e.g. Windows 10 Pro Version 21H2 - Build 10.0.19044.1348 64-bit

Too much code to post here.

Gustav
  • 53,498
  • 7
  • 29
  • 55
  • 1
    Wow - great resource @Gustav. He's done a detailed analysis of how Microsoft versions differ and even registry settings. I found it amazing that if someone registers their account it then triggers the ClickToRun registry structure. Thanks for the reference. – dbmitch Jun 04 '22 at 14:24
2

You can map the build to the version. They're the same thing.

You've already figured out how to get the build number, Application.Build.

You can map that using the table provided on Microsoft Docs: https://learn.microsoft.com/en-us/officeupdates/update-history-microsoft365-apps-by-date.

The version is just a shorter code, and thus more easy to memorize and communicate (and minor changes can result in different build numbers but identical version numbers).

Erik A
  • 31,639
  • 12
  • 42
  • 67
  • Wow - that is useful - thanks Erik. I guess I could build code to pull the table and make a lookup table with build numbers. Funny the update history makes no reference to anything ODB or SQL Server related. And no fix yet. Great resource link. Also points to question as to why our company is using current channel release path. Thank you for info. – dbmitch Jun 03 '22 at 19:36
  • I still can't get seem to find OFFICE build version - only MS-Access - which doesn't match the update builds. Even registry setting `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\Configuration` only shows `CurrentVersionToReport=16.0.8326.2096` – dbmitch Jun 03 '22 at 20:03
  • Oops - I see the match now - I can link the Build Number to Version using Release History table – dbmitch Jun 03 '22 at 20:08
2

For info, the old link to my Access/Office/Windows version checker provided by Gustav is no longer being maintained and will eventually disappear. The current link is https://www.isladogs.co.uk/access-office365-win-check/index.html

Having made a determined effort last year to find the 365 monthly version (currently 2205) by various methods using VBA / from the registry / database properties etc, I agree that the version number can only be obtained by creating a lookup table.

Perhaps Office 'phones home' at startup to retrieve the version number? We now know that Access does this to determine whether certain features should be 'switched on' or not - a feature that is often used to roll back issues such as the hyperlink subaddress & #DELETED bugs that were triggered by version 2205

isladogs
  • 101
  • 4
0

Office applications don't provide the version numbers in the format listed on the About window. You need to find the Application.Version in the list of all builds with a corresponding human-readable versions listed in MSDN.

Eugene Astafiev
  • 47,483
  • 3
  • 24
  • 45