[Macro Outlook] probm migration 2003 > 2007
Résolu
Yoskopolite
Messages postés
83
Date d'inscription
Statut
Membre
Dernière intervention
-
Yoskopolite Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
Yoskopolite Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai un petit problème avec une macro que j'utilise au boulot, depuis que j'ai migré de outlook 2003 vers outlook 2007.
Pour résumer, la macro en question s'occuper de générer un dossier et un fichier word à partir du mail actuellement sélectionné dans outlook. Le passage qui me pose problème est celui qui parcours les dossiers déjà créés par la macro auparavant.
Extrait de code :
J'obtiens l'erreur suivante sur la ligne où on tente de faire "GetFolder" : "Erreur 13 : incompatibilité de type".
Je précise que la variable "ls_Repertoire" contient bien une adresse valide (testé en débug).
Auriez-vous une idée de l'origine du problème ? Comment pourrais-je reformuler le code pour qu'il fonctionne sous 2007 ?
J'ai un petit problème avec une macro que j'utilise au boulot, depuis que j'ai migré de outlook 2003 vers outlook 2007.
Pour résumer, la macro en question s'occuper de générer un dossier et un fichier word à partir du mail actuellement sélectionné dans outlook. Le passage qui me pose problème est celui qui parcours les dossiers déjà créés par la macro auparavant.
Extrait de code :
Dim lo_Fso As FileSystemObject
Dim lo_Rep_Application As Folder
Dim ls_Repertoire As String
...
' création de l'objet système
Set lo_Fso = New FileSystemObject
' positionnement sur le répertoire de l'application
Set lo_Rep_Application = lo_Fso.GetFolder(ls_Repertoire)
' pour chaque sous répertoire
For Each lo_Sous_Rep In lo_Rep_Application.SubFolders
...
J'obtiens l'erreur suivante sur la ligne où on tente de faire "GetFolder" : "Erreur 13 : incompatibilité de type".
Je précise que la variable "ls_Repertoire" contient bien une adresse valide (testé en débug).
Auriez-vous une idée de l'origine du problème ? Comment pourrais-je reformuler le code pour qu'il fonctionne sous 2007 ?
A voir également:
- [Macro Outlook] probm migration 2003 > 2007
- Save as pdf office 2007 - Télécharger - Bureautique
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Migration windows 7 vers windows 10 - Accueil - Mise à jour
- Office 2003 - Télécharger - Bureautique
- Synchroniser agenda google et outlook - Guide
1 réponse
Après divers essais, j'ai trouvé une solution de contournement (même si je ne sais toujours pas pourquoi ça plantais) :
Le type retourné par "getobject" semble bien être "Folder", ce qui n'explique pas le plantage d'origine, mais en déclarant mon objet de type folder avec un type plus général, le type object, cela fonctionne très bien.
PS : dommage qu'on ne puisse pas marquer le sujet comme résolu si on l'a résolu par soi-même :D
Dim lo_Fso As FileSystemObject
Dim lo_Rep_Application As Object
Dim ls_Repertoire As String
...
' création de l'objet système
Set lo_Fso = New FileSystemObject
' positionnement sur le répertoire de l'application
Set lo_Rep_Application = lo_Fso.GetFolder(ls_Repertoire)
Le type retourné par "getobject" semble bien être "Folder", ce qui n'explique pas le plantage d'origine, mais en déclarant mon objet de type folder avec un type plus général, le type object, cela fonctionne très bien.
PS : dommage qu'on ne puisse pas marquer le sujet comme résolu si on l'a résolu par soi-même :D