Excel Data Update Automation

Excel ist immernoch das Werkzeug wenn es um Tabellen und Berechnungen geht.

Aber nicht nur dass, Excel ist auch ein etabliertes Werkzeug zur Datenanalyse und Visualisierung.

Sehr viele Anwender sind mit Excel vertraut, deutlich weniger beherrschen komplexe Funktionen wie Pivotierung. Zudem geht die Visualisierung heute über die Darstellung von Balkendiagrammen weit hinaus.

In diesem Zusammenhang stellt sich für viele Mitarbeiter und Unternehmen die Frage, wie die Daten in Excel hineinkommen. Neben dem allseits bekannten, manuellen Eintippen gibt es auch die Möglichkeit, Daten aus externen Datenquellen, wie Datenbanken, anderen Excel-Dateien usw., sozusagen „anzusaugen“.

 

Wie hält man die Daten aktuell ? Und wo sind die Excel-Dateien am besten aufgehoben?

 

Zum Aktualisieren der Daten hat Excel eine entsprechende Funktion „Daten aktualisieren“.

Um diese nutzen zu können, muss die betreffende Excel-Datei geöffnet sein und man kann nun interaktiv oder über Makros die Aktualisierung anstoßen.

 

Als Speicherplatz kommen häufig Filesystem, SharePoint oder andere Content- und Dokumentenmanagementsysteme zum Einsatz. Sowohl SharePoint als auch DMS haben Funktionen für die automatische Versionierung und die kontrollierte Verwendung mittels Check-In/Check-Out.

In diesem Zusammenhang tut sich ein weiterer Problemkreis auf, der aus der Anwendung der Informationen resultiert. So sollen viele Anwender beispielsweise nicht auf alle Daten der Excel-Datei zugreifen können, sondern nur auf die visualisierten Daten, also Diagramme u.ä.  Aber wenn diese Anwender auf die Visualisierung schauen dann wollen sie aktuelle Informationen sehen. Auf der anderen Seite ist der Benutzerkreis für den notwendigen Vollzugriff zur Aktualisierung der Daten üblicherweise aus Sicherheitsüberlegungen eingeschränkt.

 

Was also tun, um:

  • Die Visualisierung der Informationen auch über ein Intranet mit SharePoint vielen Anwendern zugänglich zu machen oder über Power-BI zu ermöglichen
  • Die Daten in der Excel-Datei immer aktuell zu halten

 

Die Visualisierung in SharePoint kann mittels Seiten und eingebetteten Excel-Views erfolgen.

Mit den Views kann man sehr genau festlegen, welche Ausschnitte der Excel-Datei wie durch eine Art unsichtbaren Rahmen angezeigt werden sollen. So kann man ganz bestimmte Diagramme erstellen und nur diese anzeigen lassen.

Bleibt noch die Herausforderung die Daten in der Excel-Datei jederzeit aktuell zu halten und das auch im Falle von Versionierung sowie Check-Out/Check-In. Die manuelle Variante hat einige entscheidende Nachteile:

  • Regelmäßigkeit, insbesondere in kurzen Zyklen kann nicht sichergestellt werden
  • Abwesenheit, Krankheit und andere Zwischenfälle bedürfen einer Vertretungslösung
  • Alle Aktualisierungs-Anwender benötigen volle Zugriffsrechte
  • Je nach Situation ist die Nachvollziehbarkeit nicht durchgängig gegeben (z.B. bei Ablage im Filesystem)
  • Es ist eine langweilige, letztlich nervige Routinetätigkeit

Es bietet sich also an, eine automatisierte Aktualisierung einzusetzen. Aber wie kann das funktionieren ? 

 

Das Prinzip ist recht einfach und kann schnell umgesetzt werden.

Excel bzw. Office bietet Automationsfunktionen mit PowerShell an. PowerShell bietet weiterhin alle Funktionen, um auf eine Datei im Filesystem, in SharePoint und anderen Systemen kontrolliert zuzugreifen, die Aktualisierung anzustoßen und die Datei zu speichern. PowerShell bietet also all das, was man von einer Automatisierungssprache erwartet.

Wie geht man also zweckmäßig vor? Zuerst einmal wäre für den Vorgang der Aktualisierung ein Script zu schreiben und zu testen. Das ist Aufgabe von Administratoren und DevOps.

Ist das erledigt und funktioniert, dann stellen sich folgende Fragen:

  • Wer soll das Script regelmäßig ausführen ?
  • Wie sicher ist das Ganze ?
  • Wie kann nachvollzogen werden, was, wann, wo  passiert ist ?

 

Was bräuchte man dazu ?

 

  • Einen Automaten, der in einem frei einstellbaren Zyklus das Aktualisierungsscript ausführt
  • Einen sicheren Automaten, der bspw. als einziger die Rechte hat, das Aktualisierungsscript auszuführen, der keine Rechte anderer Benutzer benötigt oder kennt und der über die vollständige Trennung der Rechte zum Starten und der Rechte zum Durchführen der Aktualisierung verfügt
  • Einen sicheren und transparenten Automaten, der den Aktualisierungsvorgang vollständig protokolliert und wenn nötig, auch eine Auditierung erlaubt
  • Einen Automaten, der neben der Automatik auch eine zwischenzeitliche manuelle Anwendung des Vorganges ermöglicht

Mit ScriptRunner, der Instant Automation und Collaboration Plattform für PowerShell, kann dieser Anwendungsfall einfach, schnell und sicher umgesetzt werden. Das entsprechende Script und eine Anleitung zur Umsetzung wird gratis mitgeliefert. Mit ScriptRunner kann unter Nutzung von PowerShell die Aktualisierung von Excel-Dateien vollständig automatisiert werden.

Die Vorteile liegen auf der Hand:

  • die Daten sind immer aktuell
  • nervige Routinetätigkeit entfällt
  • es ist ein dauerhaft reproduzierbarer Vorgang
  • Es gibt eine vollständige Trennung von Rechten zur automatisierten und manuellen Ausführung
  • es gibt hohe Transparenz und Nachvollziehbarkeit durch die Reportingfunktionen
  • Mit den Delegationsfunkltionen von ScriptRunner kann der Vorgang bspw. im HelpDesk bei Bedarf auch manuell  angestoßen werden
  • Es ist egal, wo die Excel-Datei gespeichert wird: in SharePoint,  auf dem FileServer, in der Cloud.

 

Die Excel Automation ist ein Beispiel für den Einsatz von ScriptRunner zur Automatisierung von IT gestützten Geschäftsprozessen. Einmal mit ScriptRunner umgesetzt, kann er für alle derartige Excel-Anwendungen im Unternehmen verwendet werden.

 

Mehr zur Automatisierung mit PowerShell und ScriptRunner, insbesondere mit Bezug auf den kommenden Winows Server 2016, erfahren Sie in unserer Webinaraufzeichnung.

Schreibe einen Kommentar

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