Skip to main content

MS Project VBA - Read Lookup Table/Custom Field


After Project Online and heavy use of the PWA-Schedule features in Project Server 2010/2013 I rarely get use for my VBA skills anymore.

However today I needed to update a lot of resources in Resource Center with a value from a lookuptable. Therefore I needed a way to loop through all the lookuptable/custom field values and use the value.

After a little digging I found a way to read out all the lookuptable values through VBA. And of cause I need to share this.

VBA to read all lookuptable values from the RBS lookuptable 

 Sub ReadRBSLookuptable()  
 'Created by Christian Holse Fanning  
 Dim lookupTableName As String  
 lookupTableName = "RBS"  
 Dim rbsLT As LookupTable  
 Dim ltValue As LookupTableEntry  
   For i = 1 To Application.GlobalOutlineCodes.Count  
     If Application.GlobalOutlineCodes(i).Name = Trim(lookupTableName) Then  
       Set rbsLT = Application.GlobalOutlineCodes(i).LookupTable  
     End If  
   Next i  
   If Not IsNull(rbsLT) And Not (rbsLT Is Nothing) Then  
     For Each ltValue In rbsLT  
       Debug.Print ltValue.FullName  
     Next ltValue  
   End If  
 End Sub  


Hope someone can use this.

Comments

  1. To use this approach with Project Professional,
    replace Application.GlobalOutlineCodes
    with ActiveProject.OutlineCodes

    ReplyDelete

Post a Comment

Popular posts from this blog

Azure DevOps - Gantt Chart

It's been a while since my last post - in the past couple of weeks I have played around with some videos of topics I find interesting. One of these topics are a very cool way of displaying a Gantt Chart upon your Azure DevOps board's. Check it out here!

Sharepoint/Project Server App with javascript and Web Part

Getting Project Server code to run in a AppPart Today I tried to get project server CSOM/javascript code to run within an app part. This caused a lot of troubleshooting and guessing to get it to work. By simply adding the ps.js library to the app part page I kept getting an error. Library: <script type="text/javascript" src="/_layouts/15/ps.js"></script> Error: "executeordelayuntilscriptloaded is undefined" Then I tried to use ScriptLink to load the library but got the same error. <SharePoint:ScriptLink runat="server" Name="ps.js" Localizable="false" OnDemand="False" LoadAfterUI="True"></SharePoint:ScriptLink> The code I was trying to run was very simpel and worked fine if I added it to a normal aspx page.  $(document).ready(function () {     var projContext = PS.ProjectContext.get_current();       var projects = projContext.get_projects();     projContext.load(projects...

PowerShell results size unlimited/truncated - $FormatEnumerationLimit/Width

Ever experienced the problem where you run a Powershell command and you cannot see the whole result because the result is truncated. Problem: If you for example run the Test-SPsite command you might see something like the following: Site : SPSite Url=http://atlas/pwa Results : { SPSiteHealthResult Status=Passed RuleName="Conflicting Content Types" RuleId=befe203b-a8c0-48c2-b5f0-27c10f9e1622, SPSiteHealthResult Status=FailedWarning RuleName="Customized Files" RuleId=cd839b0d-9707-4950-8fac-f306cb920f6c, SPSiteHealthResult Status=Passed RuleName="Missing Galleries" RuleId=ee967197-ccbe-4c00-88e4-e6fab81145e1, SPSiteHealthResult Status=Passed RuleName="Missing Parent Content Types" RuleId=a9a6769f-7289-4b9f-ae7f-5db4b997d284, SPSiteHealthResult Status=FailedError RuleName="Missing Site Templates" RuleId=5258ccf5-e7d6-4df7-b8ae-12fcc0513ebd, ...