如何使用pywin32从MSProject的任务使用中提取数据?

2024-06-28 20:15:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用pywin32python库将MSProject.mpp文件中的数据提取到一个excel文件中,我希望我的员工在其中注册他们的工作时间。你知道吗

我可以从我想要的任何字段中提取数据,除了任务使用情况表(Task Usage Table),该表显示每天一项任务(一个人X一项任务)必须完成(工作)和已经完成(实际工作)的小时数,并允许用户填写小时数。你知道吗

Image of the Task Usage Table

如果案例是VBA编程,那么它似乎有一个对象,称为TimeScaleValue object (Project) | Microsoft Docs

而在pywin32的Task object下似乎没有类似的属性。 有什么建议吗?谢谢!你知道吗

import win32com
...
Tasks_collection=ActiveProject.Tasks
for t in Tasks_collection:
   for r in t.Assignments:
        TSV_collection = r.TimeScaleValue('06/01/2019','08/01/2019')
...

命令行给了我一个消息:AttributeError:win32通用电气公司.Microsoft项目。对象图书馆.作业实例对象没有“TimeScaleValue”属性

有什么建议吗?谢谢。你知道吗


Tags: 文件数据对象fortask属性objecttable
1条回答
网友
1楼 · 发布于 2024-06-28 20:15:02

我是这样处理的。对于每个需要解决方案的人。你知道吗

Tasks_collection=ActiveProject.Tasks
for t in Tasks_collection:
  for r in t.Assignments:
    #get a TimeScaleValues Collection
    TSV_collection=r.TimeScaleData('06/01/2019','08/01/2019',\
          pjAssignmentTimescaledWork,pjTimescaleDays)
    for tsv in TSV_collection:
      print(tsv.Value)

Assignment.TimeScaleData method (Project) | Microsoft Docs

TimeScaleValues object (Project) | Microsoft Docs

TimeScaleValue object (Project) | Microsoft Docs

相关问题 更多 >