Why am I getting a run time error 3464?
Data Type mismatch in criteria expression

I am running a test query on an access database with the following code:
Static pubidno As Integer
Static stateno As String

pubidno = 100
stateno = "NY"

Dim dbs As Database, rst As Recordset
Set dbs = OpenDatabase("c:\program files\devstudio\vb\db1.mdb")
Set rst = dbs.OpenRecordset("SELECT * FROM Publishers " _
& "WHERE PubID < '" & pubidno & "' " _
& "AND State = '" & stateno & "' " _
& "ORDER BY Name ")
Set rst = Data1.Recordset
rst.Close