Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Pilotage MsProject2007 via une macro VBA dans excel2010 : Résolu

charly_babite

XLDnaute Nouveau
Bonjour à toute la communauté.

J'ai un petit soucis suite au passage excel2007 à excel2010.
J'ai une macro dans excel qui me permettait de récupérer des infos sur les tâches dans mon fichier MsProject avec :

Dim pj As MSProject.Application
Dim ts As Tasks

Set pj = New MSProject.Application
pj.FileOpen Name:=(Chemin_fichier & FichierMsProject), openPool:=pjDoNotOpenPool
Set monMsProj = pj.ActiveProject
Set ts = monMsProj.Tasks

C'est sur cette dernière ligne que le bas blesse.
Avec excel2007, ça se passait bien, mais avec excel2010, il me sort l'erreur
"Erreur Automation - Bibliothèque non inscrite"

Je n'ai aucune référence de manquante et j'ai les bibliothèques suivantes cochées :
Visual Basic For applications
Microsoft Excel 14.0 Object library
OLE automation
Microsft office 14.0 Object library
Microsfot Forms 201 Object library
Microsoft Project 12.0 Object library
Microsoft office Project 12.0 Calendar control
Microsoft Project 14.0 Task Launch control

Je ne vois pas d'erreur sinon que "monMsProj" n'est pas déclaré, mais je n'ai aucune idée de quel type il doit être.
Mais pas du tout certain que cela vienne de cela.

aurais-je oublié une bibliothèque particuliére ?

Merci d'avance à qui me pourra répondre.

A bientôt.

Charles.
 
Dernière édition:

charly_babite

XLDnaute Nouveau
Re : Pilotage MsProject2007 via une macro VBA dans excel2010

Bonjour,
en fait, j'essaie de parcourir les taches par ma macro Excel et trouver celle que je cherche avec :

For Each t In pj.ActiveProject.Tasks
If trouve = False Then
i = i + 1
If t.Name = NomTache Then
trouve = True
numTacheProject = i
End If
End If
Next

Mais dès que j'utilise l'argument ".Tasks", ou autre dédié aux taches, j'ai l'erreur "Erreur Automation - Bibliothèque non inscrite".

Je ne m'en sors pas.
Comprenez-vous ce qu'il se passe ?

Si quelqu'un pouvait m'aider, merci d'avance.
 

charly_babite

XLDnaute Nouveau
Re : Pilotage MsProject2007 via une macro VBA dans excel2010

Bonjour,
j'ai réussi à contourner mon problème en utilisant le "Late binding" :
Sub CreateProject_Late()
Dim pjApp As Object
Set pjApp = CreateObject("MSProject.Application")
pjApp.Visible = True
pjApp.FileNew
pjApp.ActiveProject.Tasks.Add "Hang clocks"
pjApp.FileSaveAs "Clocks.mpp"
pjApp.FileClose
pjApp.Quit
End Sub


puis en accédant aux tâches de la manière suivante :
For i = 1 To pj.ActiveProject.Tasks.Count
If trouve = False Then
If pj.ActiveProject.Tasks(i).Name = NomTache Then
trouve = True
numTacheProject = i
i = pj.ActiveProject.Tasks.Count
End If
End If
Next i

Merci quand même et en espérant que cela puisse dépanner quelqu'un .

bonne journée !
 

charly_babite

XLDnaute Nouveau
Re : Pilotage MsProject2007 via une macro VBA dans excel2010

Bonjour,

et bien de rien.

Par contre, désolé pour a mise en forme, mais je suis allé assez vite, et je n'ai pas trouvé le moyen de mettre les indentations ..?

A bientôt.
 

david84

XLDnaute Barbatruc
Re : Pilotage MsProject2007 via une macro VBA dans excel2010

Bonjour,
certaines bibliothèques sont liées à la version 2010 (14.0) et d'autres à la version 2007 (12.0).
Peut-être que le problème vient de là.
A+
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…