Controllare se outlook è attivo

Anonimo
2012-06-28T09:16:39+00:00

Saluti a tutti!

Domanda: in relazione ad una particolare situazione nel Foglio1, devo inviare una mail ad un particolare indirizzo (Destinatario, Oggetto, Testo).

Siccome non so a priori se outlook è attivo sul pc dell'utente che userà il mio file excel, come posso operare i controlli utili ad evitare un errore generato dal tentativo di aprire una sessione mail?

Grazie

Sergiovery

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2012-06-28T09:50:46+00:00

Grazie Mauro!

Con il codice che suggerisci controllo se Outlook è installato...

Come controllo se sia stato lanciato (e nel caso come posso lanciarlo in atuomatico)?

Saluti

Sergiovery

Ah, capito.

Vedi questo post di Giorgio relativo ad Access ma facilmente modificabile per Excel:

http://microsoft.public.it.office.access.narkive.com/pSv31oJi/sapere-da-access-se-outlook-e-aperto

Se(se) utilizzi pc 32 e 64 bit, vedi qui come gestire il declare:

#If Win64 Then

    Public Declare PtrSafe Function FindWindow Lib "user32" _

        Alias "FindWindowA" (ByVal lpClassName As String, _

        ByVal lpWindowName As LongLong) As LongLong

#Else

    Declare Function FindWindow Lib "user32" _

        Alias "FindWindowA" (ByVal lpClassName As String, _

        ByVal lpWindowName As Long) As Long

#End If

La risposta è stata utile?

0 commenti Nessun commento

2 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2012-06-28T09:34:26+00:00

    Grazie Mauro!

    Con il codice che suggerisci controllo se Outlook è installato...

    Come controllo se sia stato lanciato (e nel caso come posso lanciarlo in atuomatico)?

    Saluti

    Sergiovery

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2012-06-28T09:27:57+00:00

    Saluti a tutti!

    Domanda: in relazione ad una particolare situazione nel Foglio1, devo inviare una mail ad un particolare indirizzo (Destinatario, Oggetto, Testo).

    Siccome non so a priori se outlook è attivo sul pc dell'utente che userà il mio file excel, come posso operare i controlli utili ad evitare un errore generato dal tentativo di aprire una sessione mail?

    Grazie

    Sergiovery

    Un modo:

    Public Sub m()

        Dim objOutlook As Object

        On Error Resume Next

        Set objOutlook = CreateObject("Outlook.Application")

        If Err.Number <> 0 Then

            MsgBox "Outlook non presente"

            Err.Number = 0

        Else

            MsgBox "Outlook presente."

        End If

    End Sub

    La risposta è stata utile?

    0 commenti Nessun commento