Instr() function crashes MS Access after 4/4/2024 update to office 16.0.17425.20146

Anonymous
2024-04-05T16:32:38+00:00

After Office updated to version 16.0.17425.20146 my MS Access crashes when running very simple functions. I created a new database with one table and one query.

Table1.Text1
Zebra
x-ray
4x4
Posted to X
Next
axe
None
extreme
wax

This works:

SELECT Table1.Text1, InStr(1,[Text1],"x") AS Field2

FROM Table1;

Query1
Text1 Field2
Zebra 0
x-ray 1
4x4 2
Posted to X 11
Next 3
axe 2
None 0
extreme 2
wax 3

This crashes MS Access before returning any results:

SELECT Table1.Text1, InStr(1,[Text1],"x") AS Field2

FROM Table1

WHERE (((InStr(1,[Text1],"x"))>0));

I tried compact/repair. Tried recreating the database from scratch. Rebooted my computer. I uninstalled and re-installed MS Office.

Any ideas??

Microsoft 365 and Office | Access | For business | Windows

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments

54 additional answers

Sort by: Oldest
  1. Anonymous
    2024-04-11T14:13:52+00:00

    Karl,

    Thanks for the info.

    The work-around that I found was easier to implement than rolling back the entire office suite to get a more stable version of Access. The affected PC was not running mission-critical apps, just IT tools. Also, with the replaced DLL, it is easier for me to switch back-and-forth to test the latest Access version on others' databases or PC-specific configurations to help track down the issues.

    Reiff

    Was this answer helpful?

    0 comments No comments
  2. Anonymous
    2024-04-11T22:43:44+00:00

    A reply to the documenting article on AFo has suggested that you could try adding the final optional, Compare, argument to Instr().

    That actually worked, adding the optional param allowed the query to run without crashing Access.

    I changed:

    SELECT ID, Desc FROM Table1 WHERE InStr(Desc, ".") > 0;

    to:

    SELECT ID, Desc FROM Table1 WHERE InStr(1,Desc, ".", 1) > 0;

    This is a helpful temp fix while MS sort out the underlying issue.

    Thanks GroverParkGeorge for the info.

    Was this answer helpful?

    2 people found this answer helpful.
    0 comments No comments
  3. George Hepworth 23,120 Reputation points Volunteer Moderator
    2024-04-11T23:31:43+00:00

    Thanks go to the folks who figure it out; I just passed it along.

    Was this answer helpful?

    0 comments No comments