Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Recorrer una tabla obteniendo sus valores como String

63 views
Skip to first unread message

chinso

unread,
Jan 29, 2009, 11:30:11 AM1/29/09
to
Buenas tardes,


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.


McPegasus

unread,
Jan 29, 2009, 4:00:38 PM1/29/09
to
Hola chinso,

> 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...

Ju@nK [MVP 2006/9]

unread,
Feb 1, 2009, 4:06:02 PM2/1/09
to
Si te da error en los string, prueba a añadirle las comillas

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...

0 new messages