Farbschema: Hell
Sie befinden sich hier: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Forms Object Library » Datenansichten » WklGantt » Projektplan erstellen

Projektplan erstellen

In diesem Tutorial legen Sie eine Tabelle mit Vorgängen und eine Tabelle mit Abhängigkeiten an, platzieren ein WklGantt auf einem Formular und binden es. Anschließend ändern Sie den Plan in der Formularansicht mit der Maus; der abhängige Vorgang folgt automatisch. Das dauert etwa fünfzehn Minuten.

Voraussetzungen

  • Microsoft 365 Access oder Access Runtime, in 32 oder 64 Bit, mit der WKL Forms Object Library 1.23 oder höher, installiert und für den aktuellen Windows-Benutzer registriert (Freigegebenes Paket installieren).
  • Eine neue Datenbank an einem vertrauenswürdigen Speicherort.
  • Jedes WKL-Steuerelement öffnet seinen Designer auf dieselbe Weise: in der Entwurfsansicht im Eigenschaftenblatt (F4), Registerkarte Andere, Zeile Benutzerdefiniert, [...] (Designer eines Steuerelements öffnen).

Schritte

1. Beispieltabellen anlegen

Führen Sie diese Zeilen nacheinander im Direktbereich (Strg+G) aus:

CurrentDb.Execute "CREATE TABLE tblTasks (TaskID COUNTER PRIMARY KEY, ParentID LONG, TaskName TEXT(50), StartDate DATETIME, FinishDate DATETIME, Done DOUBLE, Resources TEXT(100))"
CurrentDb.Execute "CREATE TABLE tblLinks (LinkID COUNTER PRIMARY KEY, FromID LONG, ToID LONG, LinkType LONG, Lag DOUBLE)"
CurrentDb.Execute "INSERT INTO tblTasks (ParentID, TaskName, StartDate, FinishDate, Done) VALUES (0, 'Projekt', #10/5/2026#, #10/12/2026#, 0)"
CurrentDb.Execute "INSERT INTO tblTasks (ParentID, TaskName, StartDate, FinishDate, Done) VALUES (1, 'Planung', #10/5/2026#, #10/6/2026#, 100)"
CurrentDb.Execute "INSERT INTO tblTasks (ParentID, TaskName, StartDate, FinishDate, Done, Resources) VALUES (1, 'Bau', #10/7/2026#, #10/9/2026#, 40, 'Müller')"
CurrentDb.Execute "INSERT INTO tblTasks (ParentID, TaskName, StartDate, FinishDate, Done) VALUES (1, 'Abnahme', #10/12/2026#, #10/12/2026#, 0)"
CurrentDb.Execute "INSERT INTO tblLinks (FromID, ToID, LinkType, Lag) VALUES (2, 3, 0, 0)"
CurrentDb.Execute "INSERT INTO tblLinks (FromID, ToID, LinkType, Lag) VALUES (3, 4, 0, 0)"

LinkType 0 steht für Ende-Anfang. Das Ende ist der letzte Arbeitstag eines Vorgangs, ohne Uhrzeit.

2. Steuerelement einfügen

Erstellen Sie ein leeres Formular, speichern Sie es als frmPlan und bleiben Sie in der Entwurfsansicht. Wählen Sie Formularentwurf › Steuerelemente › ActiveX-Steuerelemente, markieren Sie WKL Gantt und klicken Sie auf OK. Ziehen Sie das Steuerelement über die ganze Breite des Formulars auf und nennen Sie es Gantt1. Speichern Sie das Formular.

3. Diagramm binden

Lassen Sie das Formular in der Entwurfsansicht geöffnet. Fügen Sie ein Standardmodul mit dieser Prozedur ein, setzen Sie den Cursor hinein und drücken Sie F5:

Public Sub DefinePlan()
With Forms!frmPlan!Gantt1.Object
    .RecordSource = "tblTasks"
    .KeyField = "TaskID": .ParentField = "ParentID": .TextField = "TaskName"
    .ExpandLevel = 9
    .StartField = "StartDate": .FinishField = "FinishDate": .ProgressField = "Done"
    .ResourcesField = "Resources"
    .DependencySource = "tblLinks"
    .PredecessorField = "FromID": .SuccessorField = "ToID"
    .LinkTypeField = "LinkType": .LagField = "Lag"
    .ScheduleMode = wgsAutomatic
    .ShowCriticalPath = True
    .Columns.Add("TaskName", "Vorgang").Width = 2200
    .Columns.Add("StartDate", "Anfang").Format = "Short Date"
    .Columns.Add("FinishDate", "Ende").Format = "Short Date"
    .TreeColumn = "TaskName"
End With
DoCmd.Close acForm, "frmPlan", acSaveYes
End Sub

Dieselben Einstellungen gelingen auch ohne Code: im Eigenschaftenblatt über die Zeile Benutzerdefiniert [...] und die Designer-Seiten Datenherkunft, Spalten, Vorgänge, Abhängigkeiten und Kalender und Planung.

4. Vorgang verschieben

Öffnen Sie frmPlan in der Formularansicht. Zeigen Sie auf die Mitte des Balkens Bau, drücken Sie die linke Maustaste, ziehen Sie den Balken um einen Tag nach rechts und lassen Sie ihn los.

Erwartetes Ergebnis

  • Vor Schritt 4: Projekt reicht als Sammelbalken vom 05.10. bis zum 12.10.2026; Planung ist erledigt (dunkler Balken), Bau zu 40 % erledigt, rechts daneben „Müller“, Abnahme am 12.10. Die Pfeile verlaufen Planung › Bau › Abnahme; alle drei Vorgänge sind kritisch (rot).
  • Während des Ziehens zeigen ein gestrichelter Balken und eine QuickInfo die neuen Termine.
  • Nach Schritt 4: Bau läuft vom 08.10. bis zum 12.10. (über das Wochenende); Abnahme hat sich auf den 13.10. verschoben, weil der Plan automatisch ist; Projekt endet am 13.10. tblTasks enthält die neuen Termine. Ein von Hand verschobener Vorgang erhält wie in Microsoft Project die Einschränkung „Anfang nicht früher als“. Gespeichert wird sie nur, wenn ConstraintTypeField und ConstraintDateField zugeordnet sind; ohne sie verschiebt das

nächste Projekt neu planen Bau wieder direkt hinter Planung.

Nächste Schritte

de/wiki/msaccess/comctl/data-views/gantt/tutorial.txt · Zuletzt geändert: von Wolfgang van der Stille