Project2007: Summe Einheiten der Arbeit – als Zusatzanzeige für Dauer des Sammelvorganges?

Anonym
2011-03-13T09:54:42+00:00

Hallo Allseits,

immer wieder mal kommt folgende Situation vor:

Der Sammelvorgang zeigt (richtig) 5 Tage Dauer an.

Die Teilvorgänge dauern in der Summe aber nur 3 Tage...und der Kunde schaut zuerst auf die Dauer des Sammelvorgangs...und stellt dann die Fragen…

Problematisch – und die Erklärungen immer länger - wird es,  je höher (z.Bsp. mehrere Wochen/Monate) der Sammelvorgangszeitraum ist.

Als Beispiel:

  • eine 'normale' 5-Tage-Arbeitswoche
  • Vorgang 1: am Montag = 1 Tag
  • Vorgang 2: am Montag und am Dienstag = 2 Tage
  • Vorgang 3: am Freitag = 1 Tag

-> dafür Dauer des Sammelvorgangs = 5 Tage

-> an 3 Tagen finden aber nur Vorgänge statt

-> am Montag, Dienstag und am Freitag

Kennt Ihr ähnliche Situationen aus Eurer MS-Project-Arbeit?

Habt Ihr dafür einen Lösungsansatz?

An der Idee einer  1:1-Einheitensteuerung (Summe der Arbeit – als Zusatzanzeige (im extra Feld) für Dauer des Sammelvorganges) bin ich  gescheitert, weil dies bei sich überlappenden Vorgängen nicht händelbar ist und bei Vorgangverschiebungen gänzlich aus dem Raster fällt.

Danke für Eure Tipps und Hilfe - Gruß Steffen

Microsoft 365 und Office | Projekt | Andere | Windows
Microsoft 365 und Office | Projekt | Andere | Windows

Microsoft-Projektmanagementsoftware, die zum Planen, Verwalten und Kommunizieren eines Projektzeitplans und anderer Informationen zwischen Arbeitsgruppenmitgliedern, Projektmanager*innen und anderen Projektbeteiligten verwendet wird.

Gesperrte Frage. Diese Frage wurde aus der Microsoft-Support-Community migriert. Sie können darüber abstimmen, ob sie hilfreich ist, aber Sie können keine Kommentare oder Antworten hinzufügen oder der Frage folgen.

0 Kommentare Keine Kommentare
Antwort, die vom Frageautor angenommen wurde
Anonym
2011-03-18T06:16:11+00:00

und wenn für die Einzelvorgänge in Dauer2 auch die Dauer stehen soll:

Sub Duration2()

Dim T, ST As Task

Dim vdursub As Boolean

Dim vdate As Date

For Each ST In ActiveProject.Tasks

    If Not ST Is Nothing Then

        If ST.Summary Then

                vdur = 0

                For vdate = ST.Start To ST.Finish

                    vdursub = False

                    For Each T In ST.OutlineChildren

                        If T.Start <= vdate And T.Finish >= vdate _

                        And ActiveProject.Calendar.Period(vdate, vdate).Working Then

                            vdursub = True

                        End If

                    Next T

                    If vdursub Then

                        vdur = vdur + 1

                    End If

                Next vdate

        ST.Duration2 = vdur * 480

        Else

            ST.Duration2 = ST.Duration

        End If

    End If

Next ST

End Sub

Gruß

Barbara

War diese Antwort hilfreich?

0 Kommentare Keine Kommentare
Antwort, die vom Frageautor angenommen wurde
Anonym
2011-03-17T10:10:51+00:00

Hallo Steffen,

da stehe ich vor einem Rätsel. Bei mir läuft es problemlos. Ein Voraussetzung muss allerdings erfüllt sein: es muss für einen Tag Arbeit geben, damit er zu dieser Dauer addiert wird. Ein Plan ohne Arbeit bzw. Zuordnungen liefert nichts, da hier nicht wirkllich die Dauer betrachtet wird, sondern die Arbeitstage - heisst, es muss für den Tag was da sein (Ansicht Vorgang Einsatz). Ist das der Fall?

Gruß

Barbara

War diese Antwort hilfreich?

0 Kommentare Keine Kommentare

36 zusätzliche Antworten

Sortieren nach: Am hilfreichsten
  1. Anonym
    2011-03-14T13:58:25+00:00

    Ein ganz schneller Schnellschuß, also eher häßlich ;-):

    Sub KalenderAendern()

    Dim pTSV As TimeScaleValues

    Dim c As Calendar

    For Each c In ActiveProject.BaseCalendars

        If c.Name = "<neuerKalendername>" Then 'Kalendernamen definieren

        c.Period(ActiveProject.ProjectStart, ActiveProject.ProjectFinish).Working = True

        vStart = ActiveProject.ProjectStart

        vEnde = ActiveProject.ProjectFinish

        For vdate = vStart To vEnde

            Set pTSV = ActiveProject.ProjectSummaryTask.TimeScaleData(vdate, vdate, _

                pjTaskTimescaledWork, pjTimescaleDays, 1)

                For i = 1 To pTSV.Count

                    If pTSV(i).Value = "" Then

                        c.Period(vdate, vdate).Working = False

                    End If

                Next i

        Next vdate

        End If

    Next c

    End Sub

    Vielleicht hilft's ja als Basis?

    Gruß

    Barbara

    War diese Antwort hilfreich?

    0 Kommentare Keine Kommentare
  2. Anonym
    2011-03-14T13:27:31+00:00

    Hmm, wie wär's mit einem Macro, dass die "leeren" Tage in den zusätzlichen Kalender einträgt?

    War diese Antwort hilfreich?

    0 Kommentare Keine Kommentare
  3. Anonym
    2011-03-14T10:49:53+00:00

    Hallo Barbara, nach Aktivierung 'Formel'-Sammelvorgang werden die Werte angezeigt. Die Sache ist trotzdem recht aufwendig, aber natürlich danke für Deine Hilfe.

    Gruß Steffen

    War diese Antwort hilfreich?

    0 Kommentare Keine Kommentare