Få metodikk for prosjektplaner ved å bruke VBA

Modne prosjektledelsesorganisasjoner, erfarne prosjektledere og PMOs vet verdien av å styre prosjekter med beregninger. Metrisk samling innebærer vanligvis å fullføre en mal basert på prosjektdata som inkluderer plandata.

Microsoft Project 2010 inneholder mye rå tidsplandata som kan brukes til meningsfulle prosjektmålinger. Utfordringen med denne tilnærmingen er å samle inn prosjektdata krever ofte å eksportere oppgavedataene til Excel, utvikle pivottabeller og skrive noen få formler. I denne Microsoft Project- og VBA-veiledningen skal jeg vise deg hvordan du bruker Visual Basic til å utvikle et raskt oversikt over metrics av ​​prosjektplanen din ( figur A ). Figur A

Prosjektstatistikk (Klikk på bildet for å forstørre.)

Raske prosjektmålinger

Når du vurderer prosjektstatus, er det flere viktige tidsplanmålinger du må ta i betraktning, inkludert total oppgavetelling, fullførte oppgavetelling, ufullstendige oppgaver med sen start, ufullstendige oppgaver med sent ferdig og gjenværende oppgaver som skal fullføres. Alle disse beregningene hjelper til med å kvantifisere prosjektets fremgang i stedet for bare å subjektivt forklare prosjektstatusen. Hvis organisasjonen din ikke har tatt i bruk opptjent verdistyring som en prosjektledelse-teknikk, er oppgavetelling et enkelt første skritt til metriskdrevet ledelse.

Microsoft Project har en innebygd statistikkfunksjon tilgjengelig ved å velge Project | Prosjektinformasjon | Statistikk. Den leverte statistikkfunksjonen gir beregninger på høyt nivå, selv om jeg foretrekker å vite mer detaljerte oppgavetellinger. Etter at du har fullført denne opplæringen, vil du kunne endre og forbedre koden slik at den inkluderer flere beregninger i din egen tilpassede beregning av beregninger.

Prosessen inkluderer følgende trinn:

  1. Gå gjennom hver oppgave i prosjektplanen og evaluer oppgavedata basert på prosjektstatusdatoen.
  2. Telle alle de utførte oppgavene.
  3. For ufullstendige oppgaver, må du bestemme om oppgavene er i fremtiden eller sent basert.
  4. For sent oppgaver teller økt start og sen finish.
  5. Formater dataene.
  6. Vis meldingsboksen.
Trinn 1: Legg til menypunktet i navigasjonslinjen

Henvis til min forrige veiledning for hvordan du legger til et nytt element i den tilpassede navigasjonslinjen. Dette er kodebiten for å legge til displayProjectMetrics subroutine til AddCustomNavigation subroutine.

 ribbonXml = ribbonXml + " 
 ribbonXml = ribbonXml + "imageMso =" "DiagramTargetInsertClassic" "onAction =" "displayProjectMetrics" "/>" 
Trinn 2: Bygg VBA-underrutinen

I Visual Basic-redigeringsprogrammet lager du en ny subroutine kalt displayProjectMetrics og limer inn følgende kode.

 Sub displayProjectMetrics () 
 Dim tsks som oppgaver 
 Dim t Som oppgave 
 Dimm lateFinishCt, lateStartCt, futureCt, completeCt som heltall 
 Dim myStats Som Variant 
 Dim statString As String 
 Angi tsks = ActiveProject.Tasks 
 lateFinishCt = 0 
 sentStartCt = 0 
 fremtidCt = 0 
 fullstendigCt = 0 
 For hver t In tsks 
 Hvis (Not t Is Nothing) Og (Not t.Summary) Da 
 Fullførte oppgaver 
 Hvis t.PercentComplete = 100 Da 
 completeCt = completeCt + 1 
 Ellers 
 telle fremtidige oppgaver 
 Hvis t.BaselineFinish> ActiveProject.StatusDate Og t.BaselineStart> ActiveProject.StatusDate Så 
 futureCt = futureCt + 1 
 Ellers 
 "Sent ferdig ufullstendige oppgaver 
 Hvis t.BaselineFinish <= ActiveProject.StatusDate deretter 
 lateFinishCt = lateFinishCt + 1 
 Slutt om 
 Hvis t.BaselineStart <= ActiveProject.StatusDate deretter 
 Late Start ufullstendige oppgaver 
 lateStartCt = lateStartCt + 1 
 Slutt om 
 Slutt om 
 Slutt om 
 Slutt om 
 Neste t 
 statString = "Fra og med prosjektstatusdato:" & ActiveProject.StatusDate & "prosjektoppgavetallet er:" & vbCrLf & vbCrLf 
 statString = statString & "Totalt antall oppgaver:" & vbTab & vbTab & tsks.Count & vbCrLf 
 statString = statString & "Fullførte oppgaver:" & vbTab & vbTab & completeCt & vbCrLf & vbCrLf 
 statString = statString & "Ufullstendig oppgavemåling:" & vbCrLf 
 statString = statString & "Sen startoppgaver:" & vbTab & vbTab & lateStartCt & vbCrLf 
 statString = statString & "Late Finish Tasks:" & vbTab & vbTab & lateFinishCt & vbCrLf 
 statString = statString & "Future Tasks:" & vbTab & vbTab & futureCt & vbCrLf 
 MsgBox statString 
 Slutt sub 
Trinn 3: Lagre filen din og test den Lagre filen, lukk Microsoft Project, og åpne den på nytt for å teste prosjektmetrikkfunksjonen. Klikk på Project Metrics-knappen i kategorien Verktøy, så vil statistikken vises ( figur B ). Figur B

Prosjektmålinger (Klikk på bildet for å forstørre.)

Ytterligere beregninger kan gjøres ved å endre statString-variabelen. I koden la jeg stadig nye beregninger til variabelen for å inkludere passende prosjektmålinger. MessageBox-funksjonen viser den endelige beregningen. Jeg brukte også variablene vbTab (Tab) og vbCrLf (Carriage Return Line Feed) for å formatere strengen og inkludere riktige linjeskift.

Konklusjon

Dette er bare ett eksempel på typen dataanalyse som er mulig med Visual Basic; et helt prosjektpanel kan opprettes med VBA for Microsoft Project. For en rask prosjektstatusvurdering bruker jeg denne kodesubroutinen som bruker objektive beregninger i tillegg til den subjektive prosjektvurderingen.

Jeg oppfordrer deg til å bygge videre på disse Visual Basic-eksemplene og utvide Microsoft Project med din egen VBA-drevne oppfinnsomhet. Last ned prøvekoden for denne opplæringen.

Les flere avdrag i VBA-serien

  • Kom i gang med Microsoft Project og Visual Basic-programmering
  • Bruk VBA til å fremheve manglende sluttdatoer for grunnlinjen i Microsoft Project 2010
  • Bruk VBA for å finne sene sluttdatoer i Microsoft Project 2010

© Copyright 2020 | mobilegn.com