Stuart McLachlan
stuart at lexacorp.com.pg
Tue May 27 00:10:00 CDT 2008
See coments in line.
On 27 May 2008 at 14:37, Darryl Collins wrote:
...
> Set rs1 = db.OpenRecordset(sSQL)
>
> iRSCount = rs1.RecordCount
> ' ----- CODE END --------
>
> However the rs1.RecordCount is returning 1, not 11, which doesn't seem correct to me(?). Also what I want to do is this:
As Darren points out, unless you populate the recordset with a .MoveLast, Access has no
way to tell how many records there are.
...
> Find out how many records are in the RS (there should always be 12, except for FY08 where there is 11 - don't ask).
> Loop Thru all the records and return the data in field "FYP" as a variable and then write the value to a label in a report.
>
> The bit I am stuck on is looping thru the recordset. or is there a better way altogether. There are so many ways to make Access do stuff, sometimes I think I choose one that is a fashion of the day for me and flog it, not realising there is a much better/easier way.
>
You don't need to find out how many records there are in advance for this Just use:
While No rs1.EOF
strText = rs1!FYP
..... 'Do what you want with the data in strText
rs1.MoveNext
Wend