Zellen mit Hyperlinks erkennen und hervorheben

Excel wird für alle erdenklichen Auswertungen und Datenabgleiche verwendet. In diesem Beitrag stelle ich Dir zwei Möglichkeiten vor, um einen Zelleninhalt auf Hyperlinks zu prüfen.

In vorherigen Veröffentlichungen haben wir mit Formeln wie =ZELLE() oder über Wege mit =ZELLE.ZUORDNEN() Inhalte von Zellen interpretiert. Etwas ähnliches wurde mit bedingten Formatierungen aufgezeigt (z.B. zur Einfärbung einer Zeile, basierend auf deren Inhalte).

Ein Hyperlink kann auf zwei Arten in einer Excel-Tabelle hinterlegt werden: Via der Formel =HYPERLINK() oder durch Eingabe einer Websiten-URL. Den ersten Fall könnte mit der Formel "=ISTFORMEL()" überprüft werden und würde "WAHR" retournieren. Das könnte je nach Datengrundlage für den Auswertungszweck bereits ausreichen. Falls es sich jedoch um einen einfachen Eintrag handelt oder die Datei andere Formeln und Angaben beinhaltet, reicht dieser Ansatz nicht aus. Zur Orientierung habe ich hier eine kleine Beispieltabelle mit unterschiedlichen Fällen:

ZellenMitHyperlinks

Die Spalte A beinhaltet diverse Varianten:

  • Reguläre Texte (Titel), Zellen A2, A5 und A8;
  • Links auf Websiten (ohne Formel "HYPERLINK"!), Zellen A3, A6 und A9;
  • Mittels Formel "=HYPERLINK()" hinterlegter Link, Zelle A4;
  • fälschlicherweise als Link formatierter Text, Zelle A7.

Auslesen von Hyperlinks via Makro (VBA)

Um die eingetragenen Hyperlinks zu identifizieren, benötigen wir Makrounterstützung. In einer For-Each-Schleife gehen wir durch jede Zelle durch; ohne die Tabelle dynamisch (d.h. bei mehr oder weniger Zeileninhalten direkt zu reagieren), setzen wir:

For i = 2 To 9
[Weiterer Code folgt sogleich...]
Next

Damit durchläuft unsere Prozedur die Zeilen 2 bis 9. Innerhalb der For-Each-Schleife prüfen wir, ob (und wie viele) Hyperlinks die aktuelle Zelle der Spalte A (Spalten-Nummer 1) beinhaltet. Dazu verwenden wir:

For i = 2 To 9

If Cells(i, 1).Hyperlinks.Count = 1 Then
Cells(i, 3) = "LINK!"
End If

Next

Sollte also ein Hyperlink in der entsprechenden Zelle eingetragen worden sein, trägt das Makro in Spalte C den Hinweis "LINK!" ein. Der "Count" müsste im Falle eines Links immer 1 ergeben, weshalb die If-Prüfung das gewünschte Resultat liefert. Ich kann mir keinen Fall vorstellen, bei dem mehrere Hyperlinks in der Zelle enthalten sein sollten; ansonsten wäre die Prüfung "[...].Hyperlinks.Count >= 1 Then" sicherer.

Format einer Zelle auslesen und Zeile einfärben

Ein vielbesuchter Beitrag hier auf Excelblog.ch illustriert, wie sich eine ganze Zeile mit bedingten Formatierungen einfärben lässt (siehe Ganze Zeile einfärben (bedingte Formatierung)). Darin wird dargestellt, wie aufgrund einer Zellen-Angabe eine gesamte Zeile farbig hervorgehoben werden kann. Dabei wird meist nach einem bestimmten Text gesucht. In diesem Beitrag stelle ich Dir eine weitere Möglichkeit dar, um auf das Format einer Zelle einzugehen und eine entsprechende Einfärbung zu bewirken.

Für das Einlesen des aktuellen Zellenformats verwenden wir die Formel "ZELLE". In einem anderen Post wurde diese Formel bereits verwendet, um den aktuellen Tabellenblatt-Namen auszulesen (Mittels Formel den Tabellenblatt-Name ausgeben). Gehen wir zuerst auf die Formel im Einzelnen ein, anhand eines Beispiels:

Füge in der Zelle "A1" einen beliebigen Wert ein, zum Beispiel ein Datum wie 17.05.2022. Füge dann die untenstehende Formel in eine beliebige Zelle ein (z.B. "A2"), um das Format der Zelle "A1" auszulesen:

=ZELLE("format";A1)

Falls in "A1" tatsächlich ein Datum steht, erhältst Du "D1" als Formel-Resultat. Ändere nun das Format der Zelle "A1", beispielsweise zu Standard. Beachte: Das Formel-Resultat verändert sich nicht umgehend (eine technische Anmerkung: Obschon unter Formeln die Berechnungsoptionen auf "Automatisch" eingestellt sind). Aktualisiere die "ZELLE"-Formel erneut (gehe dafür in den "Bearbeitungsmodus" und bestätige die Formel mit der Enter-Taste erneut. Nun wird Dir für die "Standard-Formatierung" ein "S" ausgegeben.

Weitere Format-Optionen und Formel-Resultate

Schauen wir uns einige weitere Optionen an, teste gerne auch eigene Fälle und aktualisiere jeweils die "ZELLE"-Formel, um das Resultat zu sehen:

Formel ZELLE format

Beachte ein Muster bei Zahlen oder Prozentwerten und deren Dezimalstellen: Der Zähler erhöht sich jeweils, wobei "P" für Prozent (percentage) steht; "F" repräsentatiert "figure" (Engl.: Zahl).

Anwendung zur Einfärbung einer Zelle oder gesamten Zeile

Mit diesen Vorkenntnissen können wir nun eine bedingte Formatierung bei der Zelle selbst hinterlegen, in unserem Beispiel die Zelle "A1". Gehe dazu via "Start" → "Bedingte Formatierung" auf "Neue Regel...". Wähle dort die unterste Option "Formel zur Ermittlung der zu formatierenden Zelle verwenden" und füge die nachfolgende Formel ein:

=ZELLE("format";A1)="D1"

Wir wissen ja, dass wir im Falle eines Datums (17.05.2022) "D1" als Formel-Resultat zurückerhalten. Wir prüfen demnach, ob die Zelle A1 entsprechend formatiert ist und färben die Zelle daraufhin grün ein:

Formatierungsregel ZELLE Format

Um eine gesamte Zeile einzufärben, basierend auf der Angabe in Spalte "A", müsstest Du die Formel leicht anpassen, mit einem Dollarzeichen vor "A1":

=ZELLE("format";$A1)="D1"

Wir fixieren damit nur die Spalte, nicht die Zeile (da wir wahrscheinlich die bedingte Formatierung auf einen grösseren Bereich anwenden möchten; zum Beispiel von A1 bis F100. Setze dadurch in den bedingten Formatierungen unter "Regeln verwalten" den Bereich "=$A$1:$F$100" bei "Wird angewendet auf":

Formatierungsregel angewendet auf

Du kannst unter "Regel bearbeiten" Deine Formel jederzeit anpassen (z.B. auf "P2" für den gesuchten Prozentwert im Format "85.00%") sowie die Formatierung (Farbe, Schriftart, etc.) setzen.

Beachte: Wir haben oben erwähnt, dass die Formel bei einer Änderung der Formatierung erneut eingegeben werden muss. Das ist bei der bedingten Formatierung nicht der Fall. Solltest Du also einen Wert und dessen Formatierung anpassen (z.B. von einem Datum in einen Prozentwert umwandeln), wird umgehend die (bedingte) Formatierung zur Anwendung kommen.

Interactive RPA - 24/7 Bot-Livestream

In den vergangenen Monaten hat unser ganzes Team an einem revolutionären Ansatz gearbeitet, um Euch Robotic Process Automation (RPA) und "Software-Roboter" näher zu bringen. Software-Demos stellen immer eine Herausforderung dar; und will man von "Vorführ-Effekten" hergerührte Risiken vermeiden, geht dies zu Lasten der Glaubhaftigkeit. Wer kennt das nicht: Eine Demo vorzuführen benötigt vorgängiges Testing und bei der effektiven Präsentation bangt man dennoch, dass tatsächlich alle zu verwendenden Dokumente und Pfade unter den aktuellen Umständen funktionieren. Auf Zuruf ein weiteres Dokument oder eine Prozessausgestaltung zu demonstrieren, ist ebenfalls kritisch. Wenn alles gelingt, hat man einen tollen Effekt erzielt - man ist auf die Empfänger-Anforderungen eingegangen und konnte so massgeblich zum Verständnis des Gezeigten beitragen. Schlägt die Demo hingegen auf, versucht man mit Unbehagen die Abweichungen zu rechtfertigen. Aus diesem Grund sieht man immer wieder "Demos", bei denen ein voraufgezeichnetes Video abgespielt wird oder dies in einer sorgfältig vorbereiteten und getesteten Umgebung präsentiert wird.

Ein interaktiver Livestream als Lösung

Mit Interactive RPA lösen wir obige Problemstellungen und geben Dir die Möglichkeit, individuell zu interagieren und Erfahrungen mit unserem Software-Roboter zu machen. Verfolge dabei, wie Deine (fiktiven) Angaben umgehend im Livestream verarbeitet werden. Selektiere hierzu unter Interactive RPA einen Prozess und fülle das entsprechende Input-Formular aus. Verfolge daraufhin im Livestream die Verarbeitung des Anwendungsfalles und sehe zu, wie Deine eingegebenen Daten prozessiert werden. Es widerspiegelt exakt, wie ein "Unattended Robot" mit Input-Daten umgeht und diese in Zielsystemen weiterverarbeitet. Um Euch am Ende eines Prozesses ein Resultat zurückzuspielen, siehst Du jeweils einen QR-Code eingeblendet. Scanne den Code bei Bedarf mit Deinem Smartphone / QR-Code Scanner. Über diesen Weg können wir Dir ohne aufwändigere Hürden wie "Account-Registrierung" oder "E-Mail-Verifikation" ein End-Resultat zurückspielen. Wir empfehlen Dir, keine realen Daten anzugeben, da weitere Personen den Livestream mitverfolgen können. Die von Euch bereitgestellten Daten werden nur temporär für die eine Verarbeitungsvorführung genutzt.

Banner_InteractiveRPA_QR-Code

Die verfügbaren Prozesse

Zum "Release" von Interactive RPA findest Du zwei Prozesse vor, die Du beliebig ausprobieren kannst: Eine Mitarbeitererfassung und eine Unternehmenssuche. Der erste Prozess illustriert, wie Angaben zu einem neuen Mitarbeiter (z.B. aus einem Anmeldeformular) im ERP-Tool erfasst werden. Es wird zudem eine Art "Anstellungsvertrag" als PDF generiert, das Du dann via QR-Code abrufen kannst. Du wählst zwar eine Abteilung aus, aber die effektive Stelle (Position im Unternehmen) wird Dir mittels eines Los-Verfahrens generiert. Hast Du Glück, wird Dir eine leitende Rolle in der Organisation zugeteilt (z.B. CEO oder CFO). Der zweite Prozess behandelt eine Suche im Online-Register für Schweizer Unternehmen (Zefix). Je nach Ergebnis wird Dir eine Detailauswertung zur Organisation oder eine Liste mit den gefundenen Einträgen in Form einer Excel-Datei zurückgespielt. Dieser Use Case illustriert die Möglichkeit, Eure Kunden- oder Lieferanten-Stammdaten (z.B. Unternehmens-Identifikationsnummer UID) aktuell zu halten; denn es könnten selbstverständlich einerseits beliebig viele Abfragen im Register getätigt und die Resultate andererseits direkt in Dein ERP-Tool eingetragen werden. Diese Möglichkeiten zeichnen Robotic Process Automation aus. Ein Software-Roboter freut sich über repetitive Arbeit - führe also gerne die verfügbaren Prozesse in beliebigen Varianten neu aus und interagiere mit unserem Bot, um die Technologie live mitzuerleben!

Mehr über uns erfahren

Excelblog.ch ist eine Marke der Routinuum GmbH - Dein optimaler Ansprechpartner für Prozessoptimierung und -automatisierung sowie für Fragen rund um die Digitalisierung. Wir unterstützen unsere Kunden von der Strategie bis hin zur effektiven Umsetzung ihrer (IT-)Projekte. Mit unserer Expertise auf dem Gebiet RPA (und selbstverständlich Excel/VBA) suchen wir stets nach Potenzial, um die Ressourcen bei unseren Kunden effektiv und effizient einzusetzen. Nutze Deine Zeit für wertgenerierende Tätigkeiten und automatisiere wiederkehrende Routinearbeiten - getreu unserem Motto "Challenge Routine.".