Private Sub الرتبة_Change()
Dim de As String
On Error Resume Next
de = MsgBox("حذف العلاوات القديمة ", vbYesNo + vbInformation, "تنبيه")
If de = vbYes Then
DoCmd.RunSQL " delete detal1.الرئيس , detal2.الرئيسي WHERE (((detal1.الرئيسي) Is Null)) OR (((detal2.الرئيسي) Is Null));"
DoCmd.Requery
End If

End Sub
جربت بدون اسم الفورم الفرعي  ومعه ايضا لم ينجح 

Private Sub الرتبة_Change()
Dim de As String
On Error Resume Next
de = MsgBox("حذف العلاوات القديمة ", vbYesNo + vbInformation, "تنبيه")
If de = vbYes Then
DoCmd.RunSQL " delete form al detal1.الرئيس , detal2.الرئيسي WHERE (((detal1.الرئيسي) Is Null)) OR (((detal2.الرئيسي) Is Null));"
DoCmd.Requery
End If

End Sub
al هو النموذج الفرعي 
detal1 هي الخانة المطلوبة افراغها عند تنفيذ الامر 