IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Probleme d'execution de vbscript


Sujet :

VBScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 48
    Points : 47
    Points
    47
    Par défaut Probleme d'execution de vbscript
    Bonjour,

    j'ai un vbscript qui permet de lancer deux macros vb developpez pour Outlook 2003. Le script appel deux fonctions de Outlook qui lancées depuis le module de dev marche tres bien.
    Par contre le script lui marche mais de des fois impossible que celui ci marche, je ne comprends absolument rien. Les deux fois que cela me le fait c'est quand je me delogue de mon poste... De plus j'ai réussi une fois a le refaire mais je ne sais même pas comment j'ai fait

    Voici le script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    '############## DEBUT ###############
    'Date : 07 juillet 2007
    'Lance une macro d'OUTLOOK quand celui ci est ouvert
       Dim theApp, theNameSpace, theMailItem
         Set theApp = WScript.CreateObject("Outlook.Application")
     On error resume next
     
    'ici on lance la macro d'exportation des contacts et du calendrier d'OUTLOOK
    Call theApp.ExportContacts
    Call theApp.ExportCalendar
     
      set theApp = Nothing
      Set theNameSpace= Nothing
      Set theMailItem= Nothing
    '############## FIN ##############################"
    Je tiens a préciser que pour qu'il puisse fonctionner Outlook doit bien evidemment être deja lancer.

    Lorsque je vais dans la ligne de commande dos je lance le script est rien ne se passe...

    S'il vous plait help me !!! Merci pour votre aide.

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Enlève la ligne :
    Relance ton script et dit nous si une erreur est généré, et tant qu'à faire donne nous la description de l'erreur.
    Cette ligne de code permet au script de continuer à s'exécuter même quand il y a une erreur, c pratique pour éviter que le script s'arrête en cas d'erreur mais c moyen pour débuguer.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 48
    Points : 47
    Points
    47
    Par défaut
    Merci pour ton aide

    En effet j'ai bien une erreur!

    la voici :

    Script : C\Temp\Export.vbs
    Ligne : 10
    Caract. : 1
    Erreur : Cet objet ne gère pas cette propriété ou cette méthode: 'ExportContacts'
    Code : ....
    SOurce : Erreur d'execution Microsoft VBscirpt


    C'est incroyable qu'il me dise qu'il ne reconnait pas ma fonction ExportContact car celle ci se nomme bien comme ça dans mon module de dev Outlook. Et le pire c'est que pourtant le script fonctionnai deja avant
    Je n'y comprend rien!!

  4. #4
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Je pense que cette ligne ne marche pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set theApp = WScript.CreateObject("Outlook.Application")
    Elle ne crée pas ton objet. essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set theApp = CreateObject("Outlook.Application")

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 48
    Points : 47
    Points
    47
    Par défaut
    Malheureusement ton idée ne fonctionne pas. j'ai la même erreur.

    Je ne sais pas trop quoi faire. Est ce dû a mon projet sous Outlook mal déclaré ou je ne sais quoi ?
    De plus peut etre est ce du au fait que pour créer le .vbs je créer un nouveau document texte que je renomme en .vbs et l'ouvre avec le bloc notes pour y mettre le code (insertion de caractere sans m'en rendre compte lors de l'enregistrement) ?

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    à priori ... on contraire d'excel le VBA d'outlook ne connaît pas la méthode Run qui pourrai te permettre le lancement d'une macro ....

    que contiennent tes 2 macros :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Call theApp.ExportContacts
    Call theApp.ExportCalendar
    ne peu-tu pas déplacer ce code dans le .VBS..?

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Bien que non expert en Outlook et ne pouvant affirmer ce qui suis, je pense que ExportContacts et ExportCalendar sont deux fonctions proposé par Outlook et non des macros.

    De plus peut etre est ce du au fait que pour créer le .vbs je créer un nouveau document texte que je renomme en .vbs et l'ouvre avec le bloc notes pour y mettre le code (insertion de caractere sans m'en rendre compte lors de l'enregistrement) ?
    J'ai toujours fait cela et je n'ai jamais eu de problème lié à cela.

    J'ai déjà eu ce type d'erreur lorsque l'objet n'est pas créé, peut rajouter ceci après le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set theApp = WScript.CreateObject("Outlook.Application")
    Code à rajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If (theApp is Nothing) Then
    msgbox "Objet non créé"
    End If

  8. #8
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par ced600
    Bien que non expert en Outlook et ne pouvant affirmer ce qui suis, je pense que ExportContacts et ExportCalendar sont deux fonctions proposé par Outlook et non des macros.....
    non je pense pas ... j'ai Outlook sur mon PC, j'ai fait ALT-F11, F2 rechercher

    "Éléments introuvables"

  9. #9
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Ok et puis j'avais oublié cette phrase :
    j'ai un vbscript qui permet de lancer deux macros vb developpez pour Outlook 2003

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 48
    Points : 47
    Points
    47
    Par défaut
    Citation Envoyé par bbil
    à priori ... on contraire d'excel le VBA d'outlook ne connaît pas la méthode Run qui pourrai te permettre le lancement d'une macro ....

    que contiennent tes 2 macros :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Call theApp.ExportContacts
    Call theApp.ExportCalendar
    ne peu-tu pas déplacer ce code dans le .VBS..?
    Merci encore pour vos réponses.

    N'étant pas expert en vb je me suis adapté au langage pour pouvoir faire mes fonctionnalités donc je n'ai aucune notion de comment faire pour mettre mon code Outlook dans le vbscript.

    voici mon code pour ExportContacts (cette fonction utilises également un module de classe ) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Public Sub ExportContacts()
       'This code allow to export in a file all contacts
       'Created by Yannick Labarre 2007-06-26
       Dim myLocation As String
       Dim contactIndex As Integer
       Dim myRacine As String
       Dim contContact As Outlook.ContactItem
     
       myRacine = "C:\Temp\"
       myLocation = myRacine & Environ("username") & "_contacts.xml"
       Dim cContact As New Contact
     
       'Let user select a folder to export
       Set nms = Application.GetNamespace("MAPI")
       Set fld = nms.GetDefaultFolder(olFolderContacts)
     
       lngCount = fld.Items.Count
     
       'Open the file
       Open myLocation For Output As #2
     
      'Iterate through contact items in Contacts folder, and export a few fields
      'from each item to a row in the Contacts object
        For contactIndex = 1 To lngCount
             Set contContact = fld.Items.Item(contactIndex)
     
             'Save data into the object
             cContact.title = contContact.title
             cContact.first_name = contContact.FirstName
             cContact.last_name = contContact.LastName
             cContact.job_title = contContact.JobTitle
             cContact.company_name = contContact.CompanyName
             cContact.business_telephone_number = contContact.BusinessTelephoneNumber
             cContact.business_fax_number = contContact.BusinessFaxNumber
             cContact.mobile_telephone_number = contContact.MobileTelephoneNumber
             cContact.business_address_city = contContact.BusinessAddressCity
             cContact.business_address_country = contContact.BusinessAddressCountry
             cContact.business_address_postal_code = contContact.BusinessAddressPostalCode
             cContact.business_address_street = contContact.BusinessAddressStreet
             cContact.email_address = contContact.Email1Address
     
             cContact.service = contContact.Department
     
             'Write the row of the contact into the output file
             cContact.EcrireXML
       Next
       Close #2
    End Sub
    Le module de classe pour ExportContacts :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Option Explicit
     
    Public title As String
    Public first_name As String
    Public last_name As String
    Public job_title As String
    Public company_name As String
    Public business_telephone_number As String
    Public business_fax_number As String
    Public mobile_telephone_number As String
    Public email_address As String
    Public service As String
    Public business_address_city As String
    Public business_address_country As String
    Public business_address_postal_code As String
    Public business_address_street As String
     
    Public Sub EcrireXML()
        Print #2, "<titre>" & title & "</titre><prenom>" & first_name & "</prenom><nom>" & last_name & "</nom><fonction>" & job_title & "</fonction><compte>" & company_name & "</compte><telephone>" & business_telephone_number & "</telephone><telephonefax>" & business_fax_number & "</telephonefax><telephonemobile>" & mobile_telephone_number & "</telephonemobile><email>" & email_address & "</email><service>" & service & "</service><ville>" & business_address_city & "</ville><pays>" & business_address_country & "</pays><codepostal>" & business_address_postal_code & "</codepostal><rue>" & business_address_street & "</rue>";
        Print #2,
    End Sub
    Comment devrais s'écrire le fichier .vbs dans ce cas ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 48
    Points : 47
    Points
    47
    Par défaut
    Je crois avoir trouvé la réponse.
    En effet le code complet des fonction ExportContacts et ExportCalendar se trouvant dans le fichier thisOutlookSession je n'avais pas mit de fonctionnalités du genre Application_startup etc... dés que j'ai mis une des fonctions dedans le script se lance sans soucis, je ne comprends absolument rien.
    N'y a t'il pas une autre solution plus propre par exemple mettre mon code dans un module Outlook et l'appeler sans pb ?

    Quoi qu'il en soit maintenant cela semble plus du coté du forum VB Outlook que du script vbs.

    Merci encore pour votre aide. A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Tomcat][EasyStruts] Problème d'exécution
    Par mmed dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 29/12/2004, 11h55
  2. Probleme d'execution d'une requete avec un Count
    Par PrinceMaster77 dans le forum ASP
    Réponses: 4
    Dernier message: 23/06/2004, 10h33
  3. [Process] Probleme d'execution d'un prog c dans un prog java
    Par Elmilouse dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 08/06/2004, 14h26
  4. Problème d'exécution
    Par Smaugg dans le forum Linux
    Réponses: 22
    Dernier message: 26/04/2004, 09h34
  5. [Kylix] Probleme d'execution de programmes...
    Par yopziggy dans le forum EDI
    Réponses: 19
    Dernier message: 03/05/2002, 14h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo