python操作ms-project做导出,pythonms-project,使用win32com,依


使用win32com,依赖window操作平台,跨平台的话需要使用到

import xmlrpclib

import pickle

还是需要window服务器做中转

简单的导出demo,装了win32com能直接运行,希望对你有帮助。导入网上的资料不少我就不贴了#!/usr/bin/env python     # -*- coding: utf-8 -*-     import os, sys, datetimeimport win32com.clientimport tracebackimport pythoncomfile = 'D:\\\\test.mpp'proj=''mpp = NoneResult = []pythoncom.CoInitialize() #防止出现重复打开异常mpp = win32com.client.Dispatch("MSProject.Application")mpp.Visible = Truempp.FileNew(None,None,None,False)#mpp.WBSCodeMaskEdit('',1,0) #导入顺序不一致添加#mpp.WBSCodeRenumber(All=True) proj = mpp.ActiveProjectTask = proj.Tasks.Add('任务1',1) #参数:任务名称、任务在第几行Task.ResourceNames= 'san.zhang'   #ownerTask.ActualStart= '2013-5-2'  #开始时间Task.ActualFinish = '2013-5-10'  #结束时间Task.OutlineLevel = 1; #几级节点Task.Predecessors = '' #前置任务id  注:前置任务id应该在导出完成后保存Task对象,重新循环添加前置任务。不然会出现任务3在第三行,而他的前置任务在第4行,那么会出现导出空的行Task.Milestone=False   #是否是milestoneTask.ConstraintType = 5  #任务限制类型:越早越好、不得早于等等.  5:设置为不得晚于...开始,不会出现ms-project自动修改时间Task.ConstraintDate = '2013-5-2'  #任务限制日期Task.PercentComplete = '0'      #完成百分比mpp.FileSaveAs(file);   mpp.Quit(); mpp = None#该片段来自于http://byrx.net

评论关闭