Find attached VI.
As ADO help states, "The cursor type of the Recordset object affects whether the number of records can be determined. The RecordCount property will return -1 for a forward-only cursor, the actual count for a static or keyset cursor, and either -1 or the actual count, depending on the data source, for a dynamic cursor."
Thus, you have to change the cursor type (when your Recordset is closed, otherwise it produces an error).
Hope this helps.
p.s.: use one "Move First" before that loop in order to avoid the case structure inside.