The MS Access error 3021 - No current record indicates that MS Access fails to read the current record in the queries.

The error usually arises when using the Recordset objects (DAO) in the VBA code for modifying the records in the Access database.

Let’s understand why this error occurs and know the effective methods to fix this common Access VBA error.

What Causes the Error 3021 - No Current Record in Access?

When attempting to modify data using the Recordset method in Access, you can experience the error code 3021. It occurs when the Microsoft Access application fails to run the query.

The most common reason for this error is if the Recordset you try to edit is empty. This can happen due to reasons, like mapped drive issues, damaged records in database files, or incorrect syntaxes of the Recordsets in queries.

Sometimes, you get this error due to lack of permissions to modify the file records.

Methods to Resolve Access Error 3021 - No Current Record

Follow the below solutions to troubleshoot and resolve the error 3021 - No current record in MS Access.

Step 1: Check BOF/EOF Properties

It’s possible that the Recordset is empty, resulting in the ‘No current record” error. You can review the BOF/EOF property settings to check the records.

The BOF specifies the current record position before the first record in the Recordset object. On the other hand, EOF determines the current record position after the last record in a Recordset object.

If the property is set to True, it indicates no current record.

Steps to check BOF/EOF properties in VBA code:

  • First, open the VBA editor.
  • Then, go to Database Tools and click Visual Basic.
  • Click on the specified element in Project Explorer to view the code.
  • Now, check the BOF/EOF property in the queries. If the property is set to true, this means no current record.

Step 2: Check and Correct SysData Folder Path

If you have enough permissions to access the folder and still getting the error 3021 in MS Access, then there may be an issue with the path of the SysData folder.

You can face such a situation when you try to update the shared SysData folder location. Make sure you are accessing the folder using the right path.

Step 3: Check and Change Macro Settings

The MS Access error 3021 - No current record can sometimes occur due to disabled Macro Settings. It usually happens when the application fails to execute the queries associated with macros.

You can check and change the Macro Security Settings to troubleshoot this error:

  • Open your Microsoft Access application and go to File > Options.
  • In Access Options, click Trust Center and then Trust Center Settings.
  • In the Trust Center window, click Macros and then select “Enable all Macros”. Click OK.

Step 4: Repair the Damaged Database File

Corruption in the Access database file can also lead to the MS Access error 3021. You can repair and recover the corrupt database with the help of Microsoft’s built-in utility – Compact and Repair. This tool can fix standard corruption-related issues in the Access database.

Steps to use the Compact and Repair tool:

  • Before using the utility, ensure that there are no active users on the database file you’re going to repair.
  • Next, open your Access application, go to the Templates page, and double-click on the Blank Database.
  • Select the File option and then select Close.
  • Click on the Database Tools option and then select Compact and Repair Database.
  • The Database to Compact From dialog box is displayed. Click on the affected database.

The Access application saves the compacted and repaired database at the exact location where the original database file is saved.

In certain situations, the Compact and Repair tool fails to provide the intended results.

In such a scenario, you can use a specialized Access recovery tool, like Stellar Repair for Access. This tool can repair and recover severely corrupted Access databases (.ACCDB and .MDB) files.

Some key features of this tool are:

  • It repairs both .ACCDB and .MDB files without any data loss.
  • It repairs and recovers all the data from damaged database file, including queries, tables, etc.
  • It supports password-protected Access files.
  • It supports Windows 11, 10, and earlier editions.
  • It is compatible with MS Access 2019, 2016, 2013, and previous versions.

You can try the demo version of the tool to repair and recover the damaged Access database file and preview the recoverable data.

This post outlined the common reasons for MS Access error 3021 - No current record. Also, it mentioned different methods to resolve this error.

If corruption in the database file is the cause of error, then the best option is to use Stellar Repair for Access to repair the corrupted Access database file and recover all its objects.

It is enriched with advanced features. It allows you to preview the recoverable data for precise recovery.

You can check the tool’s functionality by downloading its demo version. It is compatible with Windows 7, 8, 10, and 11.

2 Spice ups