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.
tblTasksenthä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, wennConstraintTypeFieldundConstraintDateFieldzugeordnet sind; ohne sie verschiebt das
nächste Projekt neu planen Bau wieder direkt hinter Planung.
Nächste Schritte
- Vorgänge mit Abhängigkeiten planen: manueller Modus, der Vorgängertext, der Kalender, die Befehle des Kontextmenüs.
- Diagramm exportieren nach Excel, als Bild oder als PDF.
- Überblick über die Konzepte.