Vorgehen zur nachhaltigen Einführung von Robotic Process Automation (RPA)

Seit einigen Jahren hält die Automatisierung Einzug in den administrativen Bereich. Insbesondere Routinetätigkeiten und wiederkehrende Arbeiten können mittels Robotic Process Automation (teil-)automatisiert werden. Dies führt dazu, dass sich Mitarbeiter auf wertgenerierende Tasks konzentrieren und ihre Zeit sinnvoller einsetzen können. Dabei kann auf der bestehenden IT-Systemlandschaft weitergearbeitet werden, ohne aufwändige Schnittstellen programmieren zu müssen. RPA verträgt sich auch mit Web-Applikationen, Legacy-Systemen und Citrix-Umgebungen. Um die Möglichkeiten mit diesen "Software-Robotern" langfristig zu erschliessen, stelle ich hier ein Vorgehen zur nachhaltigen Einführung von Robotic Process Automation vor.

RPA-Vorgehen_Visualisierung

Mögliches Vorgehen zur nachhaltigen Einführung von RPA

Ein RPA-Projekt lässt sich in die vier Bereiche "Proof-of-Concept (POC) / Pilot", "Implementierung & Skalierung", "Wartung & Support" sowie "Training & Kompetenzaufbau" unterteilen. Es handelt sich hierbei um einen kontinuierlichen Wandel und die Phasen sind nicht zwingend isoliert voneinander zu durchlaufen. Dem Aspekt des "Changes" ist zudem eine übergreifende Rolle zuzuschreiben, um eine Organisation optimal auf die RPA-Anwendungen einzustellen und langfristige Akzeptanz zu erlangen. Schaffe so früh als möglich "Awareness", um Ängste zu nehmen und die Vorteile und Möglichkeiten aufzuzeigen. Zudem ist in der Initialisierung eine RPA-Software auszuwählen; auf dem Markt gibt es derzeit diverse Anbieter. Wir sind Integrationspartner von UiPath und empfehlen diese etablierte Software.

Proof-of-Concept (POC) / Pilot

Als generelles Vorgehen erfolgt als erstes ein POC, bei dem zwischen 1 und 3 kleinere oder vereinfachte Prozesse umgesetzt werden. In dieser Pilot-Phase kann der Umgang mit der RPA-Software und die Integration in die bestehende IT-Architektur des Kunden getestet werden. Die Anbindung von diversen Datenquellen und die (teil-)automatisierte Aufbereitung zu Informationen kann in einer vereinfachten Testumgebung aufgezeigt werden. Die gemachten Erfahrungen erlauben weitere Kommunikation innerhalb der Organisation und dienen zur Ausarbeitung weiterer Anwendungsfälle.

POC-Vorgehen_Visualisierung_NoBorder

Implementierung & Skalierung

Die Erfahrungen aus der POC-Phase dienen wie erwähnt dazu, die Einsatzmöglichkeiten von RPA besser zu beurteilen und einen ausführlichen Business Case auszuarbeiten. Darin wird definiert, in welchen Schritten und mit welchen Mitteln welche Ziele (und Prozesse) zu erreichen sind. Die identifizierten Abläufe werden bewertet, priorisiert und umgesetzt. Wie in der herkömmlichen Software-Entwicklung wird auch hier empfohlen, die Software-Roboter jeweils in einer eigenen Umgebung zu testen, ehe sie produktiv in Betrieb genommen werden.

Wartung & Support / Training & Kompetenzaufbau

Da sich realisierte Projekte und die darin einbezogenen Anwendungen verändern können, fallen Wartungsarbeiten an den Prozessen an. Mittel- bis längerfristig sollte ein Unternehmen eigene Kompetenzen im Bereich RPA schaffen. Internes Know-How wird aufgebaut, um Projekte eigenständig durchzuführen sowie Wartungen an Live-Robotern vorzunehmen. RPA soll in der Organisation institutionalisiert werden, um nachhaltig relevantes Wissen im Unternehmen zu verankern.

Wartung-Kompetenz_Visualisierung

Excelblog.ch & Routinuum GmbH - Ihr Integrationspartner?

Seit Kurzem gehört Excelblog.ch zur Routinuum GmbH. Unser Unternehmen ist spezialisiert in der Konzeption und Umsetzung von RPA-Projekten. Wir begleiten unsere Kunden in allen Projektphasen, um die Möglichkeiten dieser Technologie langfristig in der jeweiligen Organisation zu verankern. Haben wir Ihr Interesse geweckt? Kontaktieren Sie uns gerne unverbindlich, um mehr Informationen zum Thema zu erhalten oder die Einsatzmöglichkeiten in Ihrem Unternehmen zu besprechen.

If-Statement mit Platzhalter & Like-Operator (VBA)

Bei einer Suche - beispielsweise auf Google - kann mit Platzhaltern gearbeitet werden. Das Fragezeichen (?) ersetzt dabei ein einzelnes Zeichen, das Sternchen (*) ist ein Platzhalter/eine Wildcard für eine beliebige Zeichenfolge vor, innerhalb oder nach dem Suchbegriff. Verwendet man in VBA ein If-Statement, können ebenfalls solche Platzhalter zur Anwendung gebracht werden. Nehmen wir an, basierend auf einem User-Input im Format "Qx-JAHR" (bspw. Q2-2019) soll eine bestimmte Prozedur für eben dieses Quartal gesteuert werden. Normalerweise ist ein If-Statement oder besser gesagt ein If-Then-Else-Statement wie folgt aufgebaut:

If MeinBegriff = "Q2-2019" Then
Weiterer Code für diesen Fall

ElseIf Weitere Prüfungen
Weiterer Code

End If

Im obigen Fall wird Bei "MeinBegriff" handelt es sich um eine Variable, die vorhin in der Prozedur initialisiert wird. Sie kann das Resultat eines User-Inputs sein oder sich auf einen bestimmten Zellwert beziehen. Generell gilt jedoch: Da sich die Jahreszahl über die Dauer verändern wird, benötigen wir eine dynamische Variante mit Platzhaltern im Format "Q2-20*". Das Gleichheitszeichen (=) wird Operator genannt. Weitere Möglichkeiten sind "<>", ">" oder "<=" etc. Desweiteren gibt es den "Like"-Operator, den wir in diesem Fall verwenden.

Der Code für ein If-Statement mit "Like-Operator" lautet:

If MeinBegriff Like "Q1-20*" Then
Weiterer Code für diesen Fall

ElseIf MeinBegriff Like "Q2-20*" Then
Weiterer Code für diesen Fall

ElseIf MeinBegriff Like "Q3-20*" Then
Weiterer Code für diesen Fall

ElseIf MeinBegriff Like "Q4-20*" Then
Weiterer Code für diesen Fall

End If

Wenn der Wert der Variable "MeinBegriff" also ähnlich (like) ist, wird der entsprechende Fall ausgeübt.

Eigene Funktionen erstellen (Meter in Meilen & Celsius in Fahrenheit)

Eine Vielzahl an Funktionen und Formeln sind bereits standardmässig in Excel verfügbar. Dem Standarduser genügt dieses Angebot grundsätzlich, doch können auch da eigene Funktionen den Umgang mit Excel erleichtern. Dieser Blog zeigt auf, wie benutzerdefinierte Funktionen und Formeln angelegt werden können, die danach jederzeit verfügbar sind. Als Beispiel werden wir hier Meter in Meilen sowie Grad Celsius in Fahrenheit umwandeln.

Meter in Meilen

Die erste Funktion, die angelegt werden soll, ist die Umwandlung von Meter in Meilen (eine englische Meile beträgt 1'609.344 Meter). Öffne hierzu eine neue Arbeitsmappe und gehe in die VBA-Umgebung (Alt + F11 oder Rechtsklick auf ein Tabellenblatt → "Code anzeigen"). Auf der linken Seite befindet sich die Projekt-Übersicht - dort sind alle geöffneten Excel-Dateien zu sehen. Mittels Rechtsklick auf die neue Arbeitsmappe lässt sich ein Modul einfügen, wo die Funktion eingepflegt werden kann:

NeuesModulEinfuegen

Im angelegten Modul1 wird nun die Funktion eingetragen. Für die Umrechnung von Meter in Meilen gilt folgender Code:

Public Function MeterInMeilen(ByVal X As Double)

MeterInMeilen = X / 1609.344

End Function

Die Formel nennen wir "MeterInMeilen". Achte bei der Vergabe der Namen darauf, dass diese nicht bereits vorhanden sind. In unserer Excel-Datei kann alsdann mit der Umwandlung begonnen werden. Die Funktion findet sich unter sämtlichen anderen - gebe in Excel einfach "=M" ein und die Vorschläge erscheinen in einer Auswahlliste, dort ist auch "MeterInMeilen" aufgeführt:

EigeneFunktionenAuswahl

Um die Umwandlung der Massangaben zu veranschaulichen, habe ich eine kleine Tabelle angelegt:

MeterInMeilen

In Zelle "B3" sind 1000 Meter eingetragen, dieser Wert kann selbst gewählt werden. In Zelle "C3" kommt unsere benutzerdefinierte Funktion zum Einsatz. Füge da nun die folgende Formel ein:

=MeterInMeilen(B3)

Ein simpler Bezug auf die Zelle "B3" reicht bereits aus, um die Meterangabe in Meilen zu konvertieren. Uns interessiert zudem, wie wir die Rückkonvertierung vornehmen können. Dazu wird folgender Programmcode eingetragen, um die Funktion "MeilenInMeter" anzulegen:

Public Function MeilenInMeter(ByVal X As Double)

MeilenInMeter = X * 1609.344

End Function

Diese Zeilen können direkt unterhalb von "End Function" der ersten Funktion in Modul1 eingetragen werden. In der Excel-Beispieltabelle kann für die Meter-Rückkonvertierung die neue Formel eingegeben werden:

=MeilenInMeter(C3)

Das Resultat davon ist wiederum exakt 1'000 Meter.

Celsius in Fahrenheit

Analog der Konvertierung oben soll nun zudem Grad Celsius in Fahrenheit umgewandelt werden können. Folgender Code erfüllt diese Anforderung:

Public Function CelsiusInFahrenheit(ByVal X As Double)

CelsiusInFahrenheit= X * 9 / 5 + 32

End Function

Wiederum als Beispieltabelle in Excel wird in Spalte C die Berechnung von diversen Temperaturangaben vorgenommen.

CelsiusInFahrenheit

Die angegebenen Werte sind korrekt, man könnte zudem die Dezimalstellen einblenden (beispielsweise 22 Grad Celsius entsprechen 71.6 Grad Fahrenheit). Die angelegte Funktion kann damit ebenfalls umgehen, da der Variablentyp "Double" gewählt wurde.

Auf die Rückkonvertierung wird hier nicht eingegangen, wir lassen dies als mögliche "Übungsaufgabe" offen. Bei Fragen kann stets die Kommentar-Sektion verwendet werden.

Zuletzt ist anzumerken, dass neben komplett neuen Funktionen wie den oben gezeigten Umwandlungs-Formeln auch bestehende Standard-Formeln individuell optimiert werden könnten. Ein Beispiel ist der SVERWEIS, bei dem Benutzer je nach dem immer wieder Probleme bekunden - bei dem Verweis gibt es diverse Fehlerursachen. Mit einer eigenen Funktion (z.B. analog der INDEX-VERGLEICH-Kombination) kann der SVERWEIS benutzerfreundlicher gestaltet werden und zugleich auch Daten links von dem Suchkriterium ausgeben.