** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Automatización, Error 438 en tiempo de ejecución
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoAutomatización, Error 438 en tiempo de ejecución

 Responder Responder
Autor
Mensaje
Aljira Ver desplegable
Colaborador
Colaborador


Unido: 18/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 973
Enlace directo a este mensaje Tema: Automatización, Error 438 en tiempo de ejecución
    Enviado: 18/Junio/2019 a las 08:52
Buenos días, tenía este código que siempre a funcionado hasta que he instalado MS 2016 32 bits. ¿Me podéis ayudar a solucionar el problema?
Public Function AbrirCalendarioMSO(fieldName As String, opcion As Variant)

' Automation code example.
Dim myvol As Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim olItem As Outlook.AppointmentItem
Set myol = CreateObject("Outlook.Application")
Set myNameSpace = myol.GetNamespace("MAPI")
Set myFolder = myNameSpace.GetDefaultFolder(olFolderCalendar)
If opcion = vacio Then opcion = ""
For Each opcion In myFolder.Items
    If opcion = fieldName Then 'esta es la linea donde se interrumpe el proceso.
        If opcion = "Display" Then
        opcion.Display
    ElseIf opcion <> "Delete" Then
        opcion.Delete
        MsgBox "Elemento borrado"
        End If
    End If
    Next opcion

End Function

Muchas gracias,
Todo un año por delante
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 11144
Enlace directo a este mensaje Enviado: 18/Junio/2019 a las 09:37
¿Y qué es fieldname? ... no es un valor (constante) de Outlook (por lo menos en 2.010) ... ¿una variable?


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

Access Aplicaciones
Tecsys.es
Arriba
Aljira Ver desplegable
Colaborador
Colaborador


Unido: 18/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 973
Enlace directo a este mensaje Enviado: 18/Junio/2019 a las 12:08
Buenos días, efectivamente, coge el nombre de un contacto de access y debería recorrer en outlook el calendario, para poder eliminar la cita antigua y poder crear una nueva.
Todo un año por delante
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 11144
Enlace directo a este mensaje Enviado: 18/Junio/2019 a las 13:24
No me queda 'claro' ese código, por un lado:

For Each opcion In myFolder.Items

Es decir opcion es un item de outlook, pero no has declarado la variable (que veamos), ... y la comparas con otra no declarada (que veamos).

¿No será opcion.name? ... o algo así

y por cierto convierte a string fieldName que a veces da sorpresas:

If OPcion = Cstr(FiedName)
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
Aljira Ver desplegable
Colaborador
Colaborador


Unido: 18/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 973
Enlace directo a este mensaje Enviado: 18/Junio/2019 a las 14:52
Está declarado al principio:
<span style="display: inline !imant; : none; : rgb251, 251, 253; color: rgb0, 0, 0; font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 12px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-trans: none; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px;">Public Function AbrirCalendarioMSO(fieldName As String, opcion As Variant)</span>
le estoy dando vueltas a las referencias, pero parece estar todo correcto. Seguiré esta tarde.


En off 2010 funciona, en 2016 no. Las referencias están bien, probaré a ver si es la ubicación y/o tipo de archivo de datos de Outlook.

Editado por Aljira - 18/Junio/2019 a las 19:42
Todo un año por delante
Arriba
Aljira Ver desplegable
Colaborador
Colaborador


Unido: 18/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 973
Enlace directo a este mensaje Enviado: 20/Junio/2019 a las 09:07
He sido incapaz de solucionarlo, me vuelvo al 2010 que es menos exquisito.
Muchas gracias, se puede cerrar el hilo.
Todo un año por delante
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable