I fixed my own problem, and made the code much simpler in the process. Double win!

For anyone experiencing a similar problem, here is my solution:
Code:
    With r
        Do
            ' If both criteria are met, send the e-mail.
            If MailType = "3" And Location = "Levelland" Then
                ' The next line sends the e-mail.
                Call SendMail(r, d)
            End If
        ' Moves to the next record.
        .MoveNext
        ' Loop through this process until there are no more records.
        Loop Until .EOF
    End With
How it works:
The "Do" initiates the loop, which will continue until .EOF (end of file). The program reads the first line in the recordset, and if both criteria are met, it calls the function that sends the e-mail message and then moves to the next record in the recordset. If either one of the criteria do not match, it kicks out of the "If" statement and moves to the next record. It continues this process until there are no more records in the recordset (.EOF). I set up the "If" statement within the loop so that each record is compared to the criteria.