Hier geht es weiter mit Schritt 3 unseres Anwendungsbeispiels in Excel:

Schritt 3: Projektübersichten erstellen & aktualisieren

Im letzten Schritt wollen wir dafür sorgen, dass die Projektübersichten über einen Klick automatisch erstellt werden können. Dazu nutzen wir die Entwicklertools (CommandButton) und VBA.

Hinweis: Um den VBA-Editor in Excel zu öffnen, einfach die Tastenkombination [Alt] + [F11] drücken. Alternativ kann auch über das Menü „Entwicklertools“ (muss ggf. erst über „Datei“ –> „Optionen“ –> „Menüband anpassen“ aktiviert werden) auf den Editor zugegriffen werden.

    • Registerblatt „Entwicklertools“ –>  „Einfügen“ –> ActiveX-Steuerelemente –> „Befehlsschältfläche“ zum Beispiel im Blatt Projektliste einfügen
    • Entwurfsmodus“ aktivieren –> Rechtsklick auf Button

    • Über „Eigenschaften“ lässt sich neben Größe, Schriftstil, Farben, etc. auch die Bennenung im Editor anpassen (ohne Leerzeichen!).
    • Über „Befehlschaltfläche-Objekt“ –> „Bearbeiten“ lässt sich die auf dem Button angezeigte Benennung anpassen.
    • Über „Code anzeigen“ öffnet der Editor direkt den passenden Sub, in den wir unseren Code einfügen können.

.

Beim Klick auf den Button werden die einzelnen Projekte nun erstellt und entsprechend ausgefüllt:

Um bei dem nächsten Abruf der Projektübersichten die aktuelle Version zu erhalten, müssen eventuelle neue Projekte und/ oder neue Mitarbeiter:innen in den Projekten mit eingebunden werden. Dies lässt sich unkompliziert lösen, indem zunächst alle Übersichten gelöscht und dann neu aufgebaut werden. Hierfür können wir eine einfache Prozedur nutzen.

Zunächst fügen wir im Editor ein neues Modul ein und hinterlegen dort den Code für den Sub ProjekteLöschen().

Danach ergänzen wir in unserem ursprünglichen Code den Aufruf Call ProjekteLöschen. Dies bewirkt, dass bei Start des Subs ProjekteErstellen zunächst der Sub ProjekteLöschen aufgerufen (d.h. gestartet) wird.

Kommt nun zum Beispiel das Projekt E mit dem Mitarbeiter Max Mustermann hinzu, werden bei Klick auf den Command Button zunächst die bestehenden Projektübersichten gelöscht und danach wieder neu erstellt, wodurch wir die aktuelle Version der Übersichten erhalten.

Dies ist ein einfaches Anwendungsbeispiel, dass sich auf andere Konzepte übertragen lässt. Wir nutzen dieses Vorgehen zum Beispiel bei den Vorbereitungen der Qualitätssicherungsmaßnahmen in einem unserer Projekte.

Hier noch die Codes (wobei die Screenshots reichen wahrscheinlich ausreichen):

  • Private Sub ProjekteErstellen_Click()

‘Einfache Prozedur –> Sub ProjekteLöschen wird nach Klick auf CommandButton gestartet

Call ProjekteLöschen

‘Variablen definieren

Dim Zelle As Range

Dim WS As Worksheet

Dim Bereich As Range

Set WS = ThisWorkbook.Sheets(“Projektliste”)

Set Bereich = Sheets(“Projektliste”).Range(“Projekte”)

‘Anzeigeänderungen abschalten (Optik)

Application.ScreenUpdating = False

‘Für jedes in der Projektliste hinterlegte Projekt wird das Blatt Template 1x kopiert und entsprechend dem Projektnamen umbenannt

For Each Zelle In Bereich

Sheets(“Template”).Copy after:=Sheets(Sheets.Count)

ActiveSheet.Name = Zelle

WS.Activate

Next Zelle

‘Anzeigeänderungen einschalten

Application.ScreenUpdating = True

‘Benachrichtigung nach Erstellen der Übersichten anzeigen

MsgBox “Alle Projektübersichten wurden erstellt.”

End Sub

.

  • Sub ProjekteLöschen()

‘Variable definieren

Dim i As Long

‘Anzeigeänderungen abschalten (Optik)

Application.DisplayAlerts = False

‘Alle Blätter bis auf Projektliste, Mitarbeiterliste, Template und eventuelle ausgeblendete Blätter werden gelöscht

For i = ActiveWorkbook.Worksheets.Count To 1 Step -1

If Sheets(i).Name <> “Projektliste” And Sheets(i).Name <> “Mitarbeiterliste” And Sheets(i).Name <> “Template” And Sheets(i).Visible = xlSheetVisible Then Sheets(i).Delete

Next i

‘Anzeigeänderungen einschalten

Application.DisplayAlerts = True

End Sub

Author: Roxana Trieb

ANY QUESTIONS? WE HAVE THE ANSWERS!

Write us. We are looking forward to your message!