Others

How to Fix #Error in Microsoft Access Report Control Source

Olivia MillerOlivia Miller Oct 23, 2026 868 views

Question details

The user encounters an #Error message on an Access report because its control source references the .Text property of a text box on an open form.

How to Fix #Error in an Access Report Control Source
Product
Microsoft Access
Device & OS
not provided
Scenario
Pulling data from an active form into a report's control source using an expression.
Observed behavior
The report displays #Error instead of the expected value because the referenced text box does not have active focus.
Before you start

Ensure that the form you are referencing is currently open in Form View and that the control names in your expression exactly match those on the form.

Solution 1Recommended

Remove the .Text Property and Use the Default Value

Modify the control source expression to rely on the default .Value property, which does not require the control to have focus.

In Microsoft Access, the .Text property of a text box is only accessible while that specific control holds the active focus. When a report runs to pull data, the form's text box loses focus, which triggers the #Error message in the report.

By removing the .Text extension from your expression, Access automatically defaults to using the .Value property. The .Value property retains its data regardless of which control currently has focus, allowing the report to display the information successfully.

1
Open Report in Design View

Right-click your report in the Navigation Pane and select 'Design View'.

2
Locate the Control Source

Select the text box control that is displaying the #Error. Press F4 to open the Property Sheet, and navigate to the 'Data' tab to find the 'Control Source' property.

3
Edit the Expression

Remove the '.Text' property from the end of your formula. For example, change '=[Forms]![frmSubjectOverTimeChartInput]![txtTitle].Text' to '=[Forms]![frmSubjectOverTimeChartInput]![txtTitle]'.

4
Save and Test

Save the changes to your report and switch to 'Report View' or 'Print Preview' to verify that the #Error is gone and the correct value is displayed.

Remove the .Text Property and Use the Default Value
Property Formatting Options: Using bracketed syntax like =[Forms]![FormName]![ControlName] is the standard and safest way to reference properties, ensuring spaces and special characters in your form names are handled correctly.
Free Microsoft Office alternative

Switch to WPS Office for a Seamless and Free Productivity Experience

While database issues in Microsoft Access require specific syntax fixes, your everyday document, spreadsheet, and presentation tasks don't have to be complicated or expensive. WPS Office is a highly compatible, free, and lightweight alternative to the Microsoft Office suite.

  1. 1. Download the Installer: Visit the official WPS Office website and download the free installation package for your operating system.
  2. 2. Install WPS Office: Run the downloaded installer and follow the quick on-screen instructions to set up the suite on your computer.
  3. 3. Open Your Office Files: Launch WPS Office and directly open your existing Word, Excel, and PowerPoint files with perfect formatting compatibility.
Free, lightweight, and fast installation without heavy system requirementsFully compatible with Microsoft Word, Excel, and PowerPoint formats (.docx, .xlsx, .pptx)Familiar and intuitive user interface with a virtually zero learning curveBuilt-in PDF editing, tabbed viewing, and seamless file migration
microsoft office alternative - wps office

Frequently Asked Questions

Why does the .Text property cause an #Error in Access reports?

In Access, the .Text property holds the uncommitted text currently being typed into a control. This property is strictly available only when the control has active focus. When generating a report, focus leaves the form, making the .Text property temporarily unavailable and triggering an #Error.

Can I use the Expression Builder to properly reference a form's text box?

Yes. You can click the ellipsis (...) next to the Control Source property to open the Expression Builder. Navigate to Loaded Forms, select your open form, and double-click the desired text box. The builder will automatically insert the correct reference using the default .Value property.

Does the referenced form need to remain open for the report to work?

Yes. The form must remain open (either visible or hidden) while the report is being viewed or printed. If the form is completely closed, the report cannot retrieve the data, and it will either prompt you for a parameter value or display an error.