Project Client Programming
Published: May 2010
The Microsoft Project 2010 desktop client applications—Project Standard 2010 and Project Professional 2010—can be customized and extended by using Visual Basic for Applications (VBA) to write macros. You can use Microsoft Office development tools in Microsoft Visual Studio 2010 to customize the ribbon and create more complex add-ins.
Moving to Visual Studio VBA is useful for recording macros and developing relatively simple automation solutions. For add-ins and more complex, secure, scalable, and easily deployed solutions, we recommend that you use Visual Studio 2010. The Professional and Ultimate versions of Visual Studio 2010 include Microsoft Office development tools and Tools for SharePoint. The Microsoft .NET Framework 3.5 and the Project 2010 primary interop assembly provide many advantages for developing and deploying solutions that automate the Project 2010 desktop clients.
The MSProject object model for VBA in Project 2010 is essentially the same as the Microsoft.Office.Interop.MSProject object model for managed code solutions. Visual Studio 2010 includes templates for developing application-level add-ins for Office Project 2007 and for Project 2010 (either the Project Standard or Project Professional versions). Office development tools in Visual Studio 2010 and Tools for SharePoint simplify developing, testing, and deploying advanced integration solutions that can use the Project desktop client and other Microsoft Office applications, and integrate with SharePoint sites, lists, and workflows.
VBA Object Model Changes VBA supports new features in Project 2010.
How to: Use VBA to Add a Custom Command to the Ribbon Learn how to add a custom tab and a command that calls a macro to the Project ribbon.
How to: Use Managed Code to Add a Custom Command to the Ribbon The ManualTaskColor add-in does the same job that the VBA macro does in the previous article. The article provides an introduction to using Office development tools in Visual Studio 2010.
Walkthrough: Building a Managed Code Add-in to Check PWA Compatibility Some project and task properties that are usable in Project Professional 2010 make the project uneditable in Project Web App. The add-in uses a ProjectBeforeSave2 event to check the project for those properties before saving.