diff --git a/sage_validation/file_validator/forms.py b/sage_validation/file_validator/forms.py
index 040aaf6eb0624373696d0eb8544c59dd07f5d9b2..5a1034ffd46797ba97f7a40c931d7da2693d4d8b 100644
--- a/sage_validation/file_validator/forms.py
+++ b/sage_validation/file_validator/forms.py
@@ -244,9 +244,11 @@ class CSVUploadForm(forms.Form):
                 dep = row.get(dep_field)
                 nominal_account_name = row.get(nominal_account_field)
 
+                if not cc and not dep and not nominal_account_name:
+                    errors.append(
+                        f"Row {index}: Missing values in '{cc_field}', '{dep_field}', and '{nominal_account_field}'.")
+                    continue
                 if not cc or not dep or not nominal_account_name:
-                    errors.append(f"Row {index}: Missing values in '{cc_field}', '{dep_field}', or "
-                                  f"'{nominal_account_field}'.")
                     continue
 
                 cc_type = cost_centre_map.get(cc)
diff --git a/test/test_file_validator/test_forms.py b/test/test_file_validator/test_forms.py
index 0360f71f7edfc4d83e7c969b0281fc485b0ed089..3a779cdac6eb0a0332b0451f61ccaf47fb2f90c7 100644
--- a/test/test_file_validator/test_forms.py
+++ b/test/test_file_validator/test_forms.py
@@ -101,13 +101,15 @@ def test_validate_nc_cc_dep_combination_against_meo_sage_account_blank_values(
         sample_input_file,
         {
             "NominalAnalysisNominalCostCentre/1": "",
+            "NominalAnalysisNominalDepartment/1": "",
+            "NominalAnalysisNominalAccountNumber/1": ""
         })
 
     form = CSVUploadForm(files={"file": modified_file})
     assert not form.is_valid()
     assert (
             "Row 1: Missing values in 'NominalAnalysisNominalCostCentre/1', 'NominalAnalysisNominalDepartment/1',"
-            " or 'NominalAnalysisNominalAccountNumber/1'."
+            " and 'NominalAnalysisNominalAccountNumber/1'."
             in str(form.errors["file"][0])
     )