Use-Case 9 (WS1) Projektplan aktualisieren

Dieser Use-Case ist auf dem PM-Forum 2024 im Workshop 1 entstanden und stellt das Handling von Projektplanaktualisierungen über mehrere Tools dar.

Dieser Use-Case kann entweder direkt in der Cloud, in einer Makro orientierten Variante oder einer kombinierten Variante gelöst werden

Ich habe hier die kombinierte Variante als Beispiel aufgeführt.

Prozessschritte und Lösungsansatz

Ein paar Fragen sind hier jedoch von der zeitlichen Abfolge noch offen, deshalb habe ich es als Diagramm dargestellt:

Grundsätzlich muss hier der Ablauf in mehrere Workflows aufgeteilt werden.

Workflow 1 – Bereitstellung Daten mit Makro

Nach der Bereitstellung der Daten muss der Owner einen Zeitraum haben, um die Daten zu bearbeiten.

Das entsprechende Makro kann mit ChatGPT erstellt werden, als Beispiel hier ein Prompt, der die Dateien als CSV importiert, als XLS speichert, eine Vergleichskopie anlegt und eine E-Mail an den Owner schickt. Nehmen wir an, dass die Information „Name“ für den Owner in der ersten Zelle und ersten Zeile des ersten Tabellenblattes steht (1A) und die E-Mailadresse daneben (1B).

Erstelle mir ein VBA Script für Excel und die entsprechende Anleitung für die Einbindung mit folgenden Ablauf:

1. Importiere die CSV Datei <Name.csv> aus dem Ordner <Ordner> 
2. Speichere die Datei im Format Heutiges Datum im Format yyyy-mm-dd_statuspruefung.xlsx im Ordner <Ordner> ab 
3. Kopiere diese Datei in den Ordner <Ordner>
4. Erstelle eine E-Mail mit dem Betreff "Aktuelle Statusaktualisierung notwendig | Monat " mit Angabe des Monats, im Body Text den Pfad des Dokumentes aus Schritt 2, die E-Mailadresse aus der Zelle 1B des Dokumentes aus Schritt 2
5. Bringe diese E-Mail in den Vordergrund

Das Ergebnis von ChatGPT wäre wie folgt:

Sub ImportAndSaveCSV()
    Dim ws As Worksheet
    Dim csvFilePath As String
    Dim saveFolderPath As String
    Dim todayDate As String
    Dim saveFilePath As String
    Dim outlookApp As Object
    Dim mailItem As Object
    Dim emailAddress As String
    Dim monthName As String
    
    ' Pfade und Dateinamen definieren
    csvFilePath = "<Ordner>\<Name.csv>" ' Pfad zur CSV-Datei
    saveFolderPath = "<Ordner>" ' Ordner, in dem die Datei gespeichert werden soll
    
    ' Heutiges Datum im Format yyyy-mm-dd
    todayDate = Format(Date, "yyyy-mm-dd")
    
    ' Pfad der zu speichernden Datei
    saveFilePath = saveFolderPath & "\" & todayDate & "_statuspruefung.xlsx"
    
    ' Monat Name für den E-Mail Betreff
    monthName = Format(Date, "mmmm")
    
    ' CSV importieren
    Set ws = ThisWorkbook.Sheets(1) ' Anpassen, falls ein anderes Blatt verwendet werden soll
    With ws.QueryTables.Add(Connection:="TEXT;" & csvFilePath, Destination:=ws.Range("A1"))
        .TextFileParseType = xlDelimited
        .TextFileCommaDelimiter = True
        .TextFileColumnDataTypes = Array(1, 1, 1) ' Anpassen entsprechend der Anzahl der Spalten
        .Refresh BackgroundQuery:=False
    End With
    
    ' Datei speichern
    ThisWorkbook.SaveAs Filename:=saveFilePath, FileFormat:=xlOpenXMLWorkbook
    
    ' E-Mail-Adresse aus Zelle B1 auslesen
    emailAddress = ws.Range("B1").Value
    
    ' Outlook E-Mail erstellen
    Set outlookApp = CreateObject("Outlook.Application")
    Set mailItem = outlookApp.CreateItem(0) ' olMailItem
    
    With mailItem
        .To = emailAddress
        .Subject = "Aktuelle Statusaktualisierung notwendig | " & monthName
        .Body = "Pfad zum Dokument: " & saveFilePath
        .Display ' E-Mail anzeigen
    End With
    
    ' E-Mail in den Vordergrund bringen
    AppActivate "Microsoft Outlook"
    
    ' Aufräumen
    Set ws = Nothing
    Set outlookApp = Nothing
    Set mailItem = Nothing
End Sub

Workflow 2 – Prüfung der Daten

Nehmen wir in diesem Falle an, dass die Owner max. 3 Tage Zeit haben. Das wäre dann der Trigger, mit dem Power-Automate in der Cloud die Prüfung der Dokumente durchführt.

Die Erstellung des Prompts für Copilot erfolgt analog den Verfahren wie beim Workflow 1.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert