mi sonos caricatro il pannello per collegarmi con access sul pannello di aruba per fare le modiche sul db on linea, ma quando vado a modificare un dato mi da questo errore
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

/pannello.asp, line 262
ho controllato il tutti i campi del db sono testo oltre il contatore

codice:
<%
'************************************
'Linkbruttocane per vademecum
'il database va messo in mdb-database
'************************************
strFile = "pannello.asp"							'il nome di questo file
strTable = "T_news"											'nome tabella
strKey = "id"													'chiave primaria, contatore
bgHeaderColor = "Orange"					
fontHeaderColor = "black"			
bgColor1 = "Silver"						
fontColor1 = "Black"					
bgColor2 = "White"						
fontColor2 = "Black"					



Set MyConn=Server.CreateObject("ADODB.Connection")
MyConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/mdb-database/db_pietrapinta.mdb")



'**************************************
'azioni da eseguire
'**************************************
Select Case Request("mode")
	Case "AddItem"
		AddItem
	Case "AddItemAction"
		AddItemAction
	Case "EditItem"
		EditItem
	Case "EditItemAction"
		EditItemAction
	Case "DelItem"
		delItem
	Case Else
		ShowAll
End Select




'**************************************
'mostrare tutti i record
'FORTEMENTE SCONSIGLIATO PER I DATABASE DI GRANDE DIMENSIONE
'**************************************
Sub ShowAll()

	MySQL="Select * from " & strTable
	Set MyRs=MyConn.Execute(MySQL)
	
	Response.write ("<h2> Tabella " & strTable & " : il contenuto</h2>")
	Response.write ("

<font size=""2"">AGGIUNGI NUOVO</font></p>")
	Response.write ("<table border=""1"" cellpadding=""4"" cellspacing=""1"">")
	Response.write ("<tr>")
	
	numerocampi=MyRs.fields.count -1
			
	Response.write ("<td bgcolor=""" & bgHeaderColor & """ align=""Center"" nowrap><font color=""" & fontHeaderColor & """ size=""2"">X</font></td>")
	Response.write ("<td bgcolor=""" & bgHeaderColor & """ align=""Center"" nowrap><font color=""" & fontHeaderColor & """ size=""2"">E</font></td>")
	
	for i=0 to numerocampi 
		if Not MyRs(i).name = "ID" then
			Response.write ("<td bgcolor=""" & bgHeaderColor & """ align=""Center"" nowrap><font color=""" & fontHeaderColor & """ size=""2"">" & MyRs(i).name & "</font></td>")
		end if
	next 
	
	Response.write ("</tr>")
	
	do while not MyRs.eof 
	
	if bgColor = bgColor2 then
		bgColor = bgColor1
		fontColor = fontColor1
	else
		bgColor = bgColor2 
		fontColor = fontColor2
	end if
	
	Response.write ("<tr>")
	Response.write ("<td align=""Center"" valign=""Top"" bgcolor=""" & bgColor & """>")
	Response.write ("<font color=""" & fontColor & """>Elimina</font></td>")
	Response.write ("<td align=""Center"" valign=""Top"" bgcolor=""" & bgColor & """>")
	Response.write ("<font color=""" & fontColor & """>Modifica</font></td>")
	
	for i = 0 to numerocampi
		if Not MyRs(i).name = "ID" then
			if MyRs(i).name = "PRICE" then
				ThisRecord = FormatCurrency(MyRs(i))
				strAlign = "right"
			else
				ThisRecord = MyRs(i)
				strAlign = ""
			end if
			If IsNull(ThisRecord) or ThisRecord = "" Then
				ThisRecord = ""
			end if 
			ThisRecord  = Replace(ThisRecord,vbCrLf,"
")
			Response.write ("<td align=""" & strAlign & """ valign=top bgcolor=""" & bgColor & """><font color=""" & fontColor & """>" & Thisrecord & "</font></td>")
		end if
	next 
	
	Response.write ("</tr>")
	
	MyRs.movenext
	loop
	
	Response.write ("</table>")
	
	MyRs.close
	Set MyRs= Nothing
	
end sub



'**************************************
'aggiungi
'**************************************
Sub AddItem()

	MySQL="Select * from " & strTable
	Set MyRs=MyConn.Execute(MySQL)

	Response.write ("<h2>Aggiungi nuovo Record a " & strTable & "</h2>")
	
	Response.write ("<form action=""" & strFile & "?mode=AddItemAction"" method=""post"" id=form1 name=form1>")
	Response.write ("<table>")
	
	numerocampi=MyRs.fields.count -1
	
	for i=0 to numerocampi
	
	if Not MyRs(i).name = "ID" then
		ThisRecord = MyRs(i)
		ThisRecordName = MyRs(i).name
		If IsNull(ThisRecord) or ThisRecord = "" Then
			ThisRecord = ""
		end if 
	Response.write ("<tr>")
	Response.write ("<td align=""right"">" & ThisRecordName & ": </td>")
	Response.write ("<td> <input name=""" & ThisRecordName & """ type=""text""></td>")
	Response.write ("</tr>")
	end if
	next
	
	Response.write ("<tr>")
	Response.write ("<td align=""right""><input name=""Submit"" type=submit value=""Submit""></td>")
	Response.write ("<td><input name=""reset"" type=reset value=""Reset""></td>")
	Response.write ("</tr>")
	Response.write ("</table>")
	Response.write ("</form>")
	Response.write ("Back to list")
	
End Sub




Sub AddItemAction()

	MySQL="Select * from " & strTable
	Set MyRs=MyConn.Execute(MySQL)

	numerocampi=MyRs.fields.count -1

	for i=0 to numerocampi
		if Not MyRs(i).name = "ID" then
			str = MyRs(i).name 
			if not i = numerocampi then
				str1 = str1 & "[" & str & "], "
			else
				str1 = str1 & "[" & str & "]"
			end if
						
			strNames = Request(str)
			if not i = numerocampi then
				sqlNames1 = sqlNames1 & "'" & strNames & "', "
			else
				sqlNames1 = sqlNames1 & "'" &  strNames & "'"
			end if
		end if
	next

	MySQL1="Insert INTO " & strTable & " (" & str1 & ") VALUES (" & sqlNames1 & ")"
	Set MyRs1=MyConn.Execute(MySQL1)
	
	MyConn.Close
	set MyConn=nothing 
	
	Response.Redirect strFile

End Sub




'**************************************
'modificare
'**************************************
Sub EditItem()

	Response.write ("<h2>Modifica record nella tabella " & strTable & "</h2>")
	
	which=request("which")
	
	if isNumeric(which) then
		MySQL="SELECT * FROM " & strTable & " Where " & strKey & " = " & which
	else
		MySQL="SELECT * FROM " & strTable & " Where " & strKey & " = '" & which & "'"
	end if
	Set MyRs=MyConn.Execute(MySQL)

	Response.write ("<FORM ACTION=""" & strFile & "?mode=EditItemAction"" METHOD=POST>")
	Response.write ("<input name=""ID"" type=""hidden"" value=""" & MyRs(strKey) & """>")
	Response.write ("<table>")

	numerocampi=MyRs.fields.count -1
	
	for i=0 to numerocampi
	
	if Not MyRs(i).name = "id" then
		ThisRecord = MyRs(i)
		ThisRecordName = MyRs(i).name
		If IsNull(ThisRecord) or ThisRecord = "" Then
			ThisRecord = ""
		end if 
	Response.write ("<tr>")
	Response.write ("<td align=""right"">" & ThisRecordName & ": </td>")
	Response.write ("<td> <input name=""" & ThisRecordName & """ type=""text"" value=""" & MyRs(i) & """></td>")
	Response.write ("</tr>")
	end if
	next

	Response.write ("<tr>")
	Response.write ("<td align=""right""><INPUT NAME=""Submit"" TYPE=Submit Value=""Update""></td>")
	Response.write ("<td><INPUT NAME=""Reset"" TYPE=Reset Value=""Reset""></td>")
	Response.write ("</tr>")
	Response.write ("</table>")
	Response.write ("</FORM>")

	Response.write ("Torna alla lista dei record")
		
	MyRs.close
	Set MyRs= Nothing

End Sub


Sub EditItemAction()

	which = Request(strKey)
	
	if isNumeric(which) then
		MySQL="SELECT * FROM " & strTable & " Where " & strKey & " = " & which
	else
		MySQL="SELECT * FROM " & strTable & " Where " & strKey & " = '" & which & "'"
	end if

	'MySQL="Select * from " & strTable
	Set MyRs=MyConn.Execute(MySQL)

	numerocampi=MyRs.fields.count -1

	for i=0 to numerocampi
		if Not MyRs(i).name = "ID" then	
			str = MyRs(i).name 
			strNames = Request(str)
			if not i = numerocampi then
				str1 = str1 & "[" & str & "] = '" & strNames & "', "
			else
				str1 = str1 & "[" & str & "] = '" & strNames & "'"
			end if
		end if
	next

	if isNumeric(which) then
		MySQL1="UPDATE " & strTable & " SET " & str1 & " Where " & strKey & " = " & which
	else
		MySQL1="UPDATE " & strTable & " SET " & str1 & " Where " & strKey & " = '" & which & "'"
	end if

	'MySQL1="UPDATE " & strTable & " SET " & str1 & " Where ID=" & which

	Set MyRs1=MyConn.Execute(MySQL1)
	
	MyConn.Close
	set MyConn=nothing
	
	Response.Redirect strFile

End Sub




'**************************************
'elimina record
'**************************************
Sub DelItem()

	which=request("which")
	if isNumeric(which) then
		MySQL="delete * from " & strTable & " Where " & strKey & " = " & which
	else
		MySQL="delete * from " & strTable & " Where " & strKey & " = '" & which & "'"
	end if
	
	Set MyRs=MyConn.Execute(MySQL)
	
	MyConn.Close
	set MyConn=nothing
	
	Response.Redirect strFile

End Sub

%>