** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - error 1004 en macro de access
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

error 1004 en macro de access

 Responder Responder
Autor
Mensaje
carlosd Ver desplegable
Habitual
Habitual


Unido: 18/Febrero/2023
Localización: cuba
Estado: Sin conexión
Puntos: 67
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita carlosd Cita  ResponderRespuesta Enlace directo a este mensaje Tema: error 1004 en macro de access
    Enviado: 23/Agosto/2024 a las 18:15
Saludos, tengo tengo una aplicación en access que d ela que cree un .mde para office de 32 y otro para 64 por las aquitecturas de los office que a veces son distintos, cuando ejecuto la de 64 no da error al ejecutar macros, cuando corro la de 32 me da este error

el error en el código está en esta línea

    .Workbooks.Open rutaPlantilla

les copio el código

Private Sub ExpProgEmitTI_Click()

    Dim rst As DAO.Recordset
    Dim XL As Object
    
    Dim miSql As String
    Dim dbs As DAO.Database

    Dim rutaPlantilla As String
    Dim nuevoExcel As String
    Dim vNombrePrograma As String
       
    Dim Ruta: Ruta = CurrentProject.Path: Ruta = Left(Ruta, InStrRev(Ruta, "\")) & "tmp_SGRADIO_CAPTAv1.0 EXPORTA\"

    vNombrePrograma = Nz(Me.NombrePrograma.Value, "")

    ' Crear una nueva instancia de Excel
    Set XL = CreateObject("Excel.Application")
    
    Set dbs = CurrentDb

    miSql = "SELECT [tmp_ProgramaEmitidoTI].* FROM [tmp_ProgramaEmitidoTI]"
    
    Set rst = dbs.OpenRecordset(miSql, dbOpenSnapshot)

    ' Asignar la ruta hasta la carpeta para el nuevo Excel
    nuevoExcel = Ruta
    
    ' Coger la ruta de la plantilla
    rutaPlantilla = Ruta & "\PLANTILLAS\PlantillaTI.xls"

    ' Abrir la plantilla de Excel
    'Call ShellExecute(Me.hwnd, "Open", rutaPlantilla, "", "", 1)

    With XL
    
    .DisplayAlerts = False
    .Workbooks.Open rutaPlantilla
    .Sheets("Hoja1").Select
    .Range("A2").Select
    .ActiveCell.CopyFromRecordset rst
    .ActiveSheet.Protect Password:="Carlos1906*2023", AllowFiltering:=True 'Proteger
    .ActiveWorkbook.SaveAs nuevoExcel & "Incidentalv1.0 " & vNombrePrograma & ".xls"
    .ActiveWorkbook.Close SaveChanges:=False
    .DisplayAlerts = True
    .Quit
    
    End With
    
    Set XL = Nothing
    rst.Close
    dbs.Close
    Set rst = Nothing
    Set dbs = Nothing
    
    DoCmd.Close acForm, "F_ExpTI"
    
    DoCmd.OpenForm "F_ProgramasEmitidosTI"
    
    MsgBox "La exportación se ha guadado en ...\SGRADIO_CAPTAv1.0\tmp_SGRADIO_CAPTAv1.0 EXPORTA", vbInformation + vbSystemModal, "Información"
End Sub

no he logrado encontrar la solución y necesito ayuda

gracias




Editado por lbauluz - 09/Septiembre/2024 a las 15:52
Arriba
happy Ver desplegable
Moderador
Moderador


Unido: 29/Enero/2005
Localización: España
Estado: Sin conexión
Puntos: 3200
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita happy Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 25/Agosto/2024 a las 21:27
Ese error suele darse por algo que no funciona bien en la aplicación externa (en este caso Excel). Veo que la primera instrucción que le pasas a Excel es DisplayAlerts = False. Esa instrucción impide que Excel muestre sus avisos propios, con lo que Access muestra un error de tipo genérico. Yo de tí haría visible la aplicación Excel (XL.Visible = True) y después ejecutar el código paso a paso. Cuando llegue a la línea que provoca el error seguramente Excel te mostrará una explicación más tratable que el error 1004. Si ves que eso te ayuda con el error, lo corriges y luego vuelves a poner todo como estaba

Espero que te sirva


Editado por happy - 25/Agosto/2024 a las 21:29
Saludos,

Juan M. Afan de Ribera
Arriba
lbauluz Ver desplegable
Administrador
Administrador
Avatar

Unido: 29/Marzo/2005
Localización: La Gloria
Estado: Sin conexión
Puntos: 3878
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita lbauluz Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 09/Septiembre/2024 a las 15:53
Buenas.

¿Has comprobado que "rutaplantilla" tenga un camino correcto?

Un saludo.

Luis
El Búho es un pajarraco
Arriba
carlosd Ver desplegable
Habitual
Habitual


Unido: 18/Febrero/2023
Localización: cuba
Estado: Sin conexión
Puntos: 67
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita carlosd Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 17:48
Saludos, buen día los dos y bendiciones, por razones ajenas ami voluntad tuve que detener el proyecto pero ahora lo continúo, como explico en el inicio del hilo, lo más extraño es que si corro la aplicaicón en office 64 bits todo funciona bien, solo cuando lo hago en office 32 es que me da ese problema y no he encontrado la solución. Gracias a los dos
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: en línea
Puntos: 14428
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Mihura Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 18:09
¿ Has probado lo que te dijo Happy ?
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
carlosd Ver desplegable
Habitual
Habitual


Unido: 18/Febrero/2023
Localización: cuba
Estado: Sin conexión
Puntos: 67
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita carlosd Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 18:22
Saludos cambié DisplayAlerts = False por DisplayAlerts = True pero no se resuelve
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: en línea
Puntos: 14428
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Mihura Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 18:28
Obviamente no se va a resolver, pero te dará más pistas de por dónde va a ir el error.
¿Estás ejecutándolo paso a paso?


Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
carlosd Ver desplegable
Habitual
Habitual


Unido: 18/Febrero/2023
Localización: cuba
Estado: Sin conexión
Puntos: 67
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita carlosd Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 18:39
Si, le doy ejecutar hasta el cursos y entonces con True no da error, pero si lo hago dedes formulario de el mismo error
Arriba
carlosd Ver desplegable
Habitual
Habitual


Unido: 18/Febrero/2023
Localización: cuba
Estado: Sin conexión
Puntos: 67
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita carlosd Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 18:42
Y me sigue extrañado que corriedolo en el mismo office a 64 no da ese error
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: en línea
Puntos: 14428
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Mihura Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 19:57
Publicado originalmente por carlosd carlosd escribió:

Si, le doy ejecutar hasta el cursos y entonces con True no da error, pero si lo hago dedes formulario de el mismo error

¿Lo ejecutas desde dos sitios distintos?
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
carlosd Ver desplegable
Habitual
Habitual


Unido: 18/Febrero/2023
Localización: cuba
Estado: Sin conexión
Puntos: 67
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita carlosd Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Octubre/2024 a las 20:06
Publicado originalmente por Mihura Mihura escribió:

Publicado originalmente por carlosd carlosd escribió:

Si, le doy ejecutar hasta el cursos y entonces con True no da error, pero si lo hago dedes formulario de el mismo error


¿Lo ejecutas desde dos sitios distintos?


No, preparé 2 .mde, uno para 64 y otro para 32 por las arquitecturas de las pc, ambas compilaciones usan la misma bd

Editado por carlosd - 04/Octubre/2024 a las 20:07
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable