MS Access Form Data not Editable

This issue popped up recently on a project where a particular Microsoft Access form’s data had been editable for several months since it was originally created and then one day it was not. Of course something changed in the underlying query that made the query stop being editable.

Below are some common reasons why query or record-source data may not be editable or update-able courtesy of Allen Browne.

  • It has a GROUP BY clause. A Totals query is always read-only.

  • It has a TRANSFORM clause. A Crosstab query is always read-only.

  • It uses First(), Sum(), Max(), Count(), etc. in the SELECT clause. Queries that aggregate records are read-only.

  • It contains a DISTINCT predicate. Set Unique Values to No in the query’s Properties.

  • It involves a UNION. Union queries are always read-only.

  • It has a subquery in the SELECT clause. Uncheck the Show box under your subquery, or use a domain aggregation function instead.

  • It uses JOINs of different directions on multiple tables in the FROM clause. Remove some tables.

  • The fields in a JOIN are not indexed correctly: there is no primary key or unique index on the JOINed fields.

  • The query’s Recordset Type property is Snapshot. Set Recordset Type to “Dynaset” in the query’s Properties.

  • The query is based on another query that is read-only (stacked query.)

  • Your permissions are read-only (Access security.)

  • The database is opened read-only, or the file attributes are read-only, or the database is on read-only media (e.g. CD-ROM, network drive without write privileges.)

  • The query calls a VBA function, but the database is not in a trusted location so the code cannot run.

  • The fields that the query outputs are Calculated fields.