No es lo mismo 2007 que 2003 Ayuda por favor¡¡¡

05/04/2010 - 23:38 por Fresco | Informe spam
Buenas tardes he sufrido un poco y hasta me he decepcionado, he
parendido a programar en visual basic por necesidad, nisiquiera
estudie nociones de computacion y me costo mucho aprender para acces
2003, ahora que cambio a acces 2007, cosas tan sencillas ahora me he
quedado atorado con el recordset clone y ya llevo 2 semanas y de plano
ya no se que hacer he buscado referencias al error 7951 "ha
especificado una expresion que tiene una referencia no valida a la
propiedad recordsetclone" y no entiendo que estoy haciendo mal abajo
les pongo mi codigo espero alguien pueda ayudarme gracias



Dim rst As Recordset
Dim strSearchName As String

Set rst = Me.RecordsetClone
strSearchName = Str(Me!SupplierID)
rst.FindFirst "id_vendedor = " & strSearchName
If rst.NoMatch Then
MsgBox "Record not found"
Else
Me.Bookmark = rst.Bookmark
End If
rst.Close



espero alguien pueda ayudarme con esto de antemano muchas gracias

Preguntas similare

Leer las respuestas

#6 Ju
07/04/2010 - 16:12 | Informe spam
Tienes que activar esa referencia, si no no te funcionará, copia todos los
objetos (tablas, consultas, ...) en una base vacía e intenta referenciar DAO

**
Salu2/Regards
[MVP Access] 2006/10
[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
**
"Fresco" escribió en el mensaje
news:
On 6 abr, 06:35, "Patxi Sanz" <patxisanz[ARROBA]yahoo[PUNTO]es> wrote:
Revisa qué referencias tienes activadas:

Editor de VBA -> menú Herramientas -> Referencias

En Access 2007 no necesitas ninguna referencia a la antigua librería DAO
("Microsoft DAO x.y Object Library"). La librería "Microsoft Office 12.0
Access database engine object library" es el nuevo motor de datos para
esta
versión.

Y si continua el error, indica que la variable rst es un Recordset de DAO
(por si tienes referenciada alguna librería de ADO):

Dim rst As DAO.Recordset

Un saludo,

Patxi Sanz
Tudela (NA)http://www.pasa.es.tt/


Muchas gracias por las respuestas y pues solo para decir que este
codigo lo tengo en un cuadro combinado al realizar el evento "despues
de actualizar" y bueno he checado las referencias y y tengo las
siguientes:

1.- Visual basic for aplicattions.
2.- microsoft acces 12.0 object library
3.- Ole automation.
4.- Microsoft office 12.0 access database engine object.

Y ya referencie como me comentaste patxi "dao.recordset" pero
simplemente me da el mismo error, ahora, intente activar la referencia
de "Microsoft DAO 3.6 Object Library"pero me da el siguiente error "El
nombre entra en conflicto con un modulo, proyecto o biblioteca de
objetos existente"


De antemano agradezco su ayuda y espero haberme explicado de la mejor
manera.
Respuesta Responder a este mensaje
#7 Patxi Sanz
07/04/2010 - 16:49 | Informe spam
Una cosa:

Si la base de datos ha sido convertida a Access 2007 (accdb), el motor de
datos que usa es el ACE (Microsoft Office 12.0 Access database engine object
library), y no permite que se agregue ninguna referencia a DAO.

Si la base de datos no ha sido convertida, entonces sí se puede agregar la
referencia a DAO.

Un saludo,


Patxi Sanz
Tudela (NA)
http://www.pasa.es.tt/
Respuesta Responder a este mensaje
#8 Fresco
07/04/2010 - 21:37 | Informe spam
On 7 abr, 09:49, "Patxi Sanz" <patxisanz[ARROBA]yahoo[PUNTO]es> wrote:
Una cosa:

Si la base de datos ha sido convertida a Access 2007 (accdb), el motor de
datos que usa es el ACE (Microsoft Office 12.0 Access database engine object
library), y no permite que se agregue ninguna referencia a DAO.

Si la base de datos no ha sido convertida, entonces sí se puede agregar la
referencia a DAO.

Un saludo,

Patxi Sanz
Tudela (NA)http://www.pasa.es.tt/



Efectivamente patxi tiene razon no me permite referenciar a DAO ni en
una base de datos nueva, mmmm la verdad no se que hacer, pense que
seria mas sencillo con lo poco que aprendi de 2003 pero no puedo pasar
de esto ojala puedan seguir dandome ideas, gracias
Respuesta Responder a este mensaje
#9 Patxi Sanz
08/04/2010 - 16:44 | Informe spam
Una pregunta:

Cuando ejecutas el código, ¿qué línea se queda marcada cuando te avisa del
error?

Un saludo,


Patxi Sanz
Tudela (NA)
http://www.pasa.es.tt/
Respuesta Responder a este mensaje
#10 Fresco
10/04/2010 - 19:17 | Informe spam
On 8 abr, 09:44, "Patxi Sanz" <patxisanz[ARROBA]yahoo[PUNTO]es> wrote:
Una pregunta:

Cuando ejecutas el c digo, qu l nea se queda marcada cuando te avisa del
error?

Un saludo,

Patxi Sanz
Tudela (NA)http://www.pasa.es.tt/



Dim rst As Recordset
Dim strSearchName As String


<< Set rst = Me.RecordsetClone>> ->>>> en esta linea
strSearchName = Str(Me!SupplierID)
rst.FindFirst "id_vendedor = " & strSearchName
If rst.NoMatch Then
MsgBox "Record not found"
Else
Me.Bookmark = rst.Bookmark
End If
rst.Close


Muchas gracias por tu atencion.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida