I'm assuming you want to use the NOTIFY query to use as your email base. Are you physically typing in an attachment in the form you have created? or is there a default set of text you can send depending on how many errors and the state specified?
The simplest way to cycle through records is this (using your notify query as a base)
Code:
Dim db As database
Dim rst As Recordset
Dim sEmployeeName As String
Dim sEmailAddress As String
Dim iErrorCount As Integer
Dim sState As String
Set db = CurrentDb
Set rst = db.openrecordset("Notify")
rst.MoveFirst
Do While rst.EOF <> True
sEmployeeName = rst.Fields("EmployeeName")
sEmailAddress = rst.Fields("E-Mail Address")
iErrorCount = rst.Fields("number of outstanding errors")
sState = rst.Fields("state")
[INSERT YOUR EMAIL ROUTINE HERE WITH THE VARIBLES FROM YOUR NOTIFY QUERY]
rst.MoveNext
Loop
You may have to add some references to get this working but it should cycle through your records and if you have a pre determined item you want to send as an attachment you'd just have to have the path of the item in your query and read that as well, then in your email (I don't know the method you're using very well) you should be able to substitute in your variable for the attachment.