brjames32
August 15th, 2008, 05:50 AM
Hi all
I need to be able to loop through all the records in an Access table and replace certain values. I would like to be able to do this in a macro. I have got the following code in a module:
Option Compare Database
Sub ChangeLecturerIds()
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='JLD' Where [lecturerid]= 'CMR' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='RLM' Where [lecturerid]= 'CS' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='VJH' Where [lecturerid]= 'DF' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='AL' Where [lecturerid]= 'DMJ' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='LN' Where [lecturerid]= 'HOB' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='DKO' Where [lecturerid]= 'MA2ND' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='EJH' Where [lecturerid]= 'MANQT' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='GRJ' Where [lecturerid]= 'NCY' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='SJM' Where [lecturerid]= 'SJD' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='SJR' Where [lecturerid]= 'SJE' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='DMR' Where [lecturerid]= 'TIT' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='LKM' Where [lecturerid]= 'TOB' ; "
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='LKM' Where [lecturerid]= 'TOB' ;"
End Sub
But it will oly do the first line i.e:
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='JLD' Where [lecturerid]= 'CMR' ;"
And doesn't get to the next line down. I obviously need to get it to loop through all the values. Anyone know how to do this?
Thanks
I need to be able to loop through all the records in an Access table and replace certain values. I would like to be able to do this in a macro. I have got the following code in a module:
Option Compare Database
Sub ChangeLecturerIds()
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='JLD' Where [lecturerid]= 'CMR' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='RLM' Where [lecturerid]= 'CS' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='VJH' Where [lecturerid]= 'DF' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='AL' Where [lecturerid]= 'DMJ' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='LN' Where [lecturerid]= 'HOB' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='DKO' Where [lecturerid]= 'MA2ND' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='EJH' Where [lecturerid]= 'MANQT' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='GRJ' Where [lecturerid]= 'NCY' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='SJM' Where [lecturerid]= 'SJD' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='SJR' Where [lecturerid]= 'SJE' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='DMR' Where [lecturerid]= 'TIT' ;"
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='LKM' Where [lecturerid]= 'TOB' ; "
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='LKM' Where [lecturerid]= 'TOB' ;"
End Sub
But it will oly do the first line i.e:
DoCmd.RunSQL "UPDATE Groups SET [lecturerid]='JLD' Where [lecturerid]= 'CMR' ;"
And doesn't get to the next line down. I obviously need to get it to loop through all the values. Anyone know how to do this?
Thanks