Error 3021, no current record has been found, Query data from Access to Excel -


i'm writing function in excel vba called extract data access database, i'm using ado connection. function get_g_gtop has parameters defined bellow. now, try use command object value recordset, however, got error message 3021 : either bof or eof true, or current record has been deleted. requested operations requires current record. debug points line : get_g_gtop = rst.fields(0).value.

is there wrong sql statement query in access? advice highly appreciate!

bing

function get_g_gtop(byval vehtype string, byval speed single) variant

dim dbfilepath string  dbfilepath = "c:\users\sevenice\desktop\em database.accdb"  set cnn = new adodb.connection  cnn.open "provider= microsoft.ace.oledb.12.0;" & " data source=" & dbfilepath & ";" & "persist security info =false;"  'set rst = new adodb.recordset  set cmd = new adodb.command cmd.activeconnection = cnn  'dim querystr string dim s single  if strcomp(vehtype, "ldv") * strcomp(vehtype, "ldt") * strcomp(vehtype, "lhd<=14k") * strcomp(vehtype, "lhd<=19.5k") = 0    s = 35.6    'querystr = "select [g/gtop] [em database].[n (t) data] [vehicle category]= "" & vehtype & "" , s = 35.6 " & " , [speed lower] <= " & speed & " , [speed upper] >= " & speed & ";"     cmd.commandtext = "select [g/gtop] [em database].[n (t) data] [vehicle category]= "" &  vehtype & "" , s = 35.6 " & " , [speed lower] <= " & speed & " , [speed upper] >= " & speed & ";"    'rst.open querystr, cnn     set rst = cmd.execute     get_g_gtop = rst.fields(0).value  elseif strcomp(vehtype, "mhd") * strcomp(vehtype, "hhd") * strcomp(vehtype, "urban bus") = 0    s = 26.7    querystr = "select [g/gtop] [em database].[n (t) data] [vehicle category]=" & vehtype & " , s = 26.7 " & " , [speed lower] <= " & speed & " , [speed upper] >=" & speed & ";"    rst.open querystr, cnn    get_g_gtop = rst.fields(0).value  end if 

end function

after open recordset (set rst = cmd.execute) have check whether contains data, before try access data, example:

if not rst.eof 'do stuff data end if 

reference on w3schools.com

the error receiving indicates not geting records select-statement. check suggested hansup.


Comments

Popular posts from this blog

objective c - Change font of selected text in UITextView -

php - Accessing POST data in Facebook cavas app -

c# - Getting control value when switching a view as part of a multiview -