Prova eventualmente così:
Dim oText As Field
Set adoPrimaryRS = New Recordset
'Con questa select stai leggendo tutti i record presenti nella tabella archivio:
adoPrimaryRS.CursorLocation = adUseClient
adoPrimaryRS.Open "select ID,Data,BA1,BA2,BA3,BA4,BA5,CA1,CA2,CA3,
CA4,CA5,FI1,FI2,FI3,FI4,FI5,GE1,GE2,GE3,
GE4,GE5,MI1,MI2,MI3,MI4,MI5,NA1,NA2,NA3,
NA4,NA5,PA1,PA2,PA3,PA4,PA5,RO1,RO2,RO3,
RO4,RO5,TO1,TO2,TO3,TO4,TO5,VE1,VE2,VE3,
VE4,VE5 from archivio", db, adOpenStatic, adLockOptimistic

'qui devi testare se adoPrimaryRS.eof altrimenti errore se eof

If Not(adoPrimaryRS.eof) then

' qui devi associare il primo record della tabella alle caselle di testo.
i= 0
For Each oText In adoPrimaryRS.Fields
TxtFields(i) = adoPrimaryRS(i)
i = i + 1
Next
end if