Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Routing slip n'existe plus sous 2010

5 réponses
Avatar
Denys
Bonjour =E0 tous,

Depuis plus de 10 ans, j'utilise la macro qui suit pour envoyer des fichier=
s excel =E0 un destinataire pr=E9cis....

Sub envoi()
[j1].Value =3D "X"
RouteNow:
ActiveWorkbook.HasRoutingSlip =3D True
With ActiveWorkbook.RoutingSlip
.Recipients =3D "Departement REER"

.Subject =3D "Re=E7u de contribution"
.Message =3D ""
.Delivery =3D xlAllAtOnce
.ReturnWhenDone =3D False
.TrackStatus =3D False
Sheet1.CommandButton1.Visible =3D False
End With
ActiveWorkbook.Route
Sheet1.CommandButton1.Visible =3D True
[j1].Value =3D ""
End Sub


Seulement, avec 2010, il semblerait que je ne puisse plus utiliser "hasrout=
ingslip"....alors, sur le site de Rondebruin, j'ai adapt=E9 sa suggestion, =
mais excel ne veut pas....disant qu'Outlook n'est pas une r=E9f=E9rence val=
ide.....pourtant, j'ai ajout=E9 Outlook Reference Object Library 14.0 dans =
la biblioth=E8que.....

Sub envoi()
[j1].Value =3D "X"

Dim OutApp As Outlook.Application
Dim OutMail As Outlook.MailItem
Set OutApp =3D CreateObject("Outlook.Application")
Set OutMail =3D OutApp.CreateItem(olMailItem)


'On Error Resume Next
With OutMail
.To =3D "Departement REER"
.CC =3D ""
.BCC =3D ""
.Subject =3D "Re=E7u de contribution"
.Body =3D ""
.Attachments.Add ActiveWorkbook.FullName
.Send=20
End With
On Error GoTo 0

Set OutMail =3D Nothing
Set OutApp =3D Nothing

End Sub


Avez-vous une id=E9e de ce qui me manque ?

Merci pour votre temps

Denys

5 réponses

Avatar
MichD
Bonjour,

Sous Excel 2013 et Windows 8.1
Si tu déclares les 2 variables AS Object, tu n'as pas besoin
de cocher la référence "Microsoft Outlook....."

Pour RoutingSlip, l'aide d'Excel 2013 stipule :
'---------------------------------
Ce membre ou objet a été désapprouvé, mais elle reste partie du modèle objet
pour assurer une compatibilité descendante.Vous ne devez pas utiliser
dans nouvelles applications.
'---------------------------------

Ceci fonctionne très bien...
'-------------------------------------------------------
Sub envoi1()
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(olMailItem)

With OutMail
.To = ""
.CC = ""
.BCC = ""
.Subject = "Reçu de contribution"
.Body = ""
.Attachments.Add ActiveWorkbook.FullName
.Send
End With
On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing
End Sub
'-------------------------------------------------------
Avatar
Denys
Bonsoir Denis,

Merci beaucoup d'avoir pris le temps de me répondre un vendredi soir !!!!

Je vérifie cela demain matin

Bonne fin de semaine

Denys
Avatar
Denys
Bonjour,

Le message que je reçois est le suivant:

"Object reference not set to an instance of an object"

Et il semble venir de Outlook.....car Excel en rajoute par la suite....

"Microsoft Excel is waiting for another application to complete an OLE acti on"

Quelqu'un a une idée ????

Merci

Denys
Avatar
Denys
Bon... il semblerait que le problème se soit résolu par lui-même, bie n que je sache trop comment..... Le message n'apparait plus maintenant....

Denys
Avatar
Denys
Ca ne fonctionait pas lorsque mon Outlook était pouvert et que je m'envoy ais le message.....Si Outlook est fermé, ça fonctionne très bien...

Merci

Denys