Synchrones Scrollen / Synchroner Bildlauf

Wer kennt es nicht: Inhalte aus zwei verschiedenen Dateien müssen entweder miteinander verglichen oder in die jeweils andere Datei übertragen werden. Hilfreich dabei - sofern man keine zwei Bildschirme hat - ist die "Alle Anordnen"-Funktion unter dem Menüpunkt "Ansicht". Dies erlaubt es, die bereits geöffneten Dateien neben- oder übereinander anzeigen zu lassen (vertikal / horizontal). Somit sind die Informationen mehrerer Tabellen auf einen Blick ersichtlich, ohne dass man von Fenster zu Fenster springen muss. Unten aufgeführt sind zwei unterschiedliche Tabellen, vertikal angeordnet:

SynchronesScrollen

Dieser Beitrag trägt jedoch den Titel "Synchrones Scrollen / Synchroner Bildlauf" - was bedeutet das? Sind zwei Fenster neben- respektive übereinander angeordnet, muss man die jeweilige Datei aktivieren, um dort navigieren und scrollen zu können. Unter "Ansicht" → "Synchrones Scrollen" ("Synchroner Bildlauf" in älteren Excel-Versionen) lässt sich jedoch eine Funktion aktivieren, um direkt auf beiden Tabellen zu navigieren. Stelle sicher, dass auch der Button "Nebeneinander anzeigen" oberhalb aktiv ist!

NebeneinanderAnzeigen

Der synchrone Bildlauf funktioniert dann sowohl mit der Bildlaufleiste (scrollen), wie auch, wenn Du mit den Pfeiltasten innerhalb der Daten navigierst!

SynchronesScrollen2

Robotic Process Automation (RPA) und Test-Versionen

Auf unserem Blog wurden immer wieder Automatisierungsmöglichkeiten mithilfe von Excel und VBA vorgestellt und im Detail ausgeführt. Dabei haben wir uns stets innerhalb von Excel bewegt (respektive innerhalb der Microsoft Office-Umgebung). Seit Kurzem ist in Sachen Automatisierung von Arbeitsabläufen ein neuer Begriff im Umlauf - "Robotic Process Automation (RPA)". Mithilfe dieser Technologie stehen Unternehmen wie auch Privatpersonen virtuelle Mitarbeiter zur Verfügung, um Prozessabläufe über alle Anwendungen hinweg eigenständig auszuführen. Gegenüber Business Process Automation unterscheidet sich RPA insbesondere dadurch, dass nach der Inbetriebnahme keine menschliche Interaktion mehr notwendig ist. Outsourcing-Aktivitäten könnten mit der Technologie wieder ins eigene Unternehmen rückintegriert werden, da man die Prozesse im Detail bereits identifiziert und definiert hat. Generell sind die meist regelbasierten Abläufe mittels RPA-Software aufzuzeichnen, um den virtuellen Arbeiter in Betrieb zu nehmen. Dies ist also stark angelehnt an den bekannten Makro-Rekorder in VBA. Doch ist vor dem Hintergrund von RPA nicht nur von sogenannter Desktop Automation zu sprechen: Diverse Anbieter legen derzeit hohen Wert auf die Entwicklung von Machine Learning und Artificial Intelligence-Komponenten, um den Konfigurationsbedarf bei den Anwendungen weiter zu senken und "smart" auf Veränderungen reagieren zu können - das Spektrum an Möglichkeiten wird dadurch drastisch ausgeweitet.

Robotic Process Automation wird bereits vielerorts eingesetzt. Wie Maschinen im Landwirtschafts- und Industriesektor Einzug gehalten haben, kommen nun vermehrt Roboter im administrativen Bereich und für wissensbasierte Prozesse zur Anwendung. Vorläufig handelt es sich noch um ein Consulting getriebenes Geschäft, die Wissenschaft an sich hat sich noch nicht ausgiebig mit dem Thema beschäftigt. McKinsey, Gartner Group und Studien von der Oxford Universität beispielsweise stufen cirka 30 - 50 % der momentan vorhandenen Berufstätigkeiten als gefährdet ein (siehe Fersht - Don't panic, roboters are not job snatchers oder auch die bekannte Studie von Frey & Osborne - The Future of Employment: How Susceptible Are Jobs To Computerisation? aus dem Jahr 2013). Disruptive Technologien haben in der Vergangenheit stets gezeigt, dass sie zwar Jobs und bestehende Firmen und Strukturen gegenstandslos zu machen vermögen, doch haben sie im selben Atemzug neue Anforderungsprofile und Möglichkeiten mit sich gebracht. So sollte es sich auch mit RPA verhalten - die Technologie ermöglicht es, bestehende Tätigkeiten vollständig zu automatisieren und lässt uns dadurch den Fokus auf andere Themen zu legen.

Wie bereits erwähnt ist Robotic Process Automation zunächst ein Thema, das die Beratungsfirmen vorantreiben. Die zwei bekanntesten Anbieter einer RPA-Software sind Automation Anywhere und Blue Prism, welche übrigens auch an der Börse kotiert ist (siehe PRSM.L auf finance.yahoo.com). Neben diesen zwei grossen Anbietern wächst zudem WorkFusion heran, bei welchen man kostenfrei eine im Umfang reduzierte Version (RPA Express) anfordern kann. Ebenfalls eine Gratisversion bietet UiPath an - die Community Edition. Von Kofax Kapow kann man ebenfalls eine Testversion anfordern. Es gibt dazu diverse Anleitungen und Tutorials, um selbst Prozesse aufzuzeichnen und daraufhin automatisch abspielen zu lassen - analog dem Makro-Rekorder. Es lohnt sich auf jeden Fall, diese Technologie und die dadurch erschlossenen Möglichkeiten zu betrachten und für eigene, spezifische Anwendungsfälle in Betracht zu ziehen!

Live-Suche in der Excel-Suchmaschine

Wie Du in Excel eine simple Suchmaschine programmieren und einrichten kannst, wurde in einem älteren Beitrag (siehe Suchmaschine programmieren) illustriert. Hier wird nun ergänzt, wie Du eine Live-Suche etablierst, damit direkt nach Eingabe eines Suchkriteriums die Liste auf die entsprechenden Einträge gefiltert wird.

Nehmen wir nach wie vor an, dass in der Zelle "B1" das Suchkriterium steht. Falls sich also diese Zelle ändert, hat die Suchmaschine direkt zu reagieren. Das Makro aus dem Beitrag "Suchmaschine programmieren" ist hierzu nicht in einem Modul abzulegen, sondern direkt im entsprechenden Tabellenblatt (=Tabelle1 (Suchmaschine))!

vbaprojekttabelle

Zudem ist der Code leicht anzupassen, respektive  um nachfolgende zusätzliche Angaben zu ergänzen. Der vollständige Code wird dann weiter unten aufgeführt.

Anstelle von "Sub Suchmaschine()" zu Beginn hat die erste Codezeile zu lauten:

Private Sub worksheet_change(ByVal target As Range)

Zudem ist eine Wenn-Dann-Kondition einzubauen, die auf die Zelle "B1" verweist - und eben beim Anpassen dieser Zelle das Makro automatisch auslöst.

If target.Row = 1 And target.Column = 2 Then

Darauf folgt der gesamte Code der Suchmaschine, abgeschlossen (vor "End Sub") mit dem Befehl:

End If

Der vollständige Code ...

... (nicht in Modul1 sondern im Tabellenblatt direkt, wie oben erwähnt) lautet demnach:

Private Sub worksheet_change(ByVal target As Range)

If target.Row = 1 And target.Column = 2 Then

Range("D2").Select
Selection.AutoFilter
ActiveSheet.Range("$A$2:$D$8").AutoFilter Field:=4, Criteria1:="<>0"

AnzahlTreffer = Application.WorksheetFunction.Subtotal(3, Range("A:A")) - 2

MsgBox ("Insgesamt " & AnzahlTreffer & " Treffer gefunden.")

End If

End Sub

Die Eingabe des Platzhalters/Sternchens (*) erübrigen

Beim Programmieren der Suchmaschine habe ich Dir aufgezeigt, dass das Suchkriterium jeweils mit einem Sternchen vor- und nachher versehen werden sollte - beispielsweise "*Pop*". Um diesem vorzubeugen (es ist also nur noch der Begriff einzugeben, ohne Platzhalter-Symbol), ist die WVERWEIS-Formel minim anzupassen. Wir kombinieren jeweils den Text "*" mit dem Zellbezug auf das Suchkriterium in "B1". Für die Zeile 3 lautet die Formel wie folgt (und kann auf sämtliche weiteren Zeilen herunterkopiert werden):

=WENNFEHLER(WVERWEIS("*"&$B$1&"*";A3:C3;1;FALSCH);0)