Я написал макрос, чтобы открыть пул ресурсов, извлечь данные о ресурсах и импортировать их в книгу Excel, затем открыть вторую книгу с фактическим списком сотрудников, сравнить и смешать оба списка и ввести полный обновленный список в пул ресурсов MSP.
Все работает, но я получаю раздражающее окно MSP «Сохранить как» в конце процесса.
Я пробовал все ProjApp.DisplayAlerts = False
, ProjApp.FileCloseEx
, ProjApp.FileCloseEx pjSave
, ProjApp.FileExit
, ProjApp.FileExit pjSave
или ProjApp.ActiveProject.SavesAs ProjApp.ActiveProject.Name
, но у меня всегда есть это окно подсказки, от которого я хотел бы избавиться. Есть ли способ сделать это, как для книг Excel?
Изменить. Похоже, проблема связана с методом FileOpenEx. Я установил ProjApp.FileOpenEx(file, False, , , , , , , , , , 2)
, но когда дело доходит до FileCloseEx, я получаю сообщение о том, что файл доступен только для чтения, а не для чтения/записи, как это должно быть.
Dim ProjApp As MSProject.Application
Dim Proj As MSProject.Project
Set ProjApp = GetX("MSProject.Application")
ProjApp.Visible = True
ProjApp.DisplayAlerts = False
If ProjApp.FileOpenEx(files.MSPResourcePool, False, , , , , , , , , , 2) Then
Set Proj = ProjApp.ActiveProject
Else
MsgBox "Fichier non trouvé : " & vbCrLf & files.MSPRessPool
Exit Sub
End If
ProjApp.ViewApplyEx Name:="Resource Sheet", ApplyTo:=0
...
ProjApp.FileCloseEx
Set Proj = Nothing
Set ProjApp = Nothing
ProjApp.DisplayAlerts = True