Estoy tratando de tomar los valores de una tabla mediante codigo, necesito
ir recorriendo la tabla y en cada recorset tomar el valor del campo y pasarlo
como string para ejecutar una funcion y tras ella avanzar al siguente record
hasta el final de la tabla.
He intentado de esta manera:
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("SELECT NombreDelCampo FROM
NombreDeLaTabla")
If rst.RecordCount > 0 Then
Do While Not rst.EOF
'LLAMADA A FUNCION PASANDOLE EL STRING
STRING_XX = rst(ruta)
FUNCION1(STRING_XX,INTEGER_XX)
rst.MoveNext
Loop
Else
MsgBox "No hay registros en la tabla"
End If
rst.Close
La quetion es que no se si estoy utilizando bien la definicion del recorset,
puesto que no veo los datos de la tabla.
¿Alguna idea?
Muchas gracias,
Saludos.
> If rst.RecordCount > 0 Then
Yo eliminaría esta comprobación ya que la siguiente también comprueba que
cuando sea final de fichero acabe el ciclo.
De todos modos la condición se cumple ya que RecordCount = 0, el primer
registro. Si quisieras conocer cuantos registros tiene una tabla con
RecordCount debererías colocar el puntero al último registro.
Suerte.
--
Los 3 últimos artículos publicados:
- Vincular una tabla o varias con igualdad del prefijo....
http://www.mcpegasus.es/mc.asp?id=0353
- Barra de progreso para un proceso que deja a Access paraliza...
http://www.mcpegasus.es/mc.asp?id=0031
- Sustituir una cadena por otra incluida....
http://www.mcpegasus.es/mc.asp?id=0352
El segundo artículo más visitado con 1.087 visitas:
- Trucos de Access 2007...
http://www.mcpegasus.es/mc.asp?id=0022
Rafael Andrada
www.goo.mcpegasus.es
www.mcpegasus.net
..:: Tu Access, Mi Pasión ::..
"chinso" <chi...@discussions.microsoft.com> escribió en el mensaje
news:85E4588D-ACA7-42D3...@microsoft.com...
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("SELECT NombreDelCampo FROM
NombreDeLaTabla")
mirs.movelast
mirs.movefirst' cargamos la colección completa, pasando el puntero al
último y primer registro
if rst.eof and rst.bof then
MsgBox "No hay registros en la tabla"
resume salida
end if
Do While Not rst.EOF
'LLAMADA A FUNCION PASANDOLE EL STRING
STRING_XX = rst.NombreDelCampo
FUNCION1("'" & STRING_XX & "'" , INTEGER_XX)
rst.MoveNext
Loop
Salida:
mirs.close 'limpiamos memoria
set mirs = nothing
End If
rst.Close
--
--
**
Salu2/Regards
Ju@nK [MVP Access] 2006/09
[DCE2003 ***] + VSTO [DCE2005 **]
http://juank.mvps.org http://www.juank.es
Correos personales o preguntas particulares en mi grupo
http://groups.google.es/group/juank?hl=es
www.juank.tk
¿Que es un MVP?, entérate en http://mvp.support.microsoft.com
**
"McPegasus" <mcpe...@XQuitarXmcpegasus.net> escribió en el mensaje
news:eXIsnSlg...@TK2MSFTNGP05.phx.gbl...