Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Sprache in Zelle erkennen -> e=blau d=grau

Sprache in Zelle erkennen -> e=blau d=grau
20.09.2018 14:37:57
Pattis
Hallo,
ich habe ein größere Tabelle in welcher englischer und deutscher Text
in jeweiligen Zellen steht. Ich möchte gern die Farben über ein Makro anpassen.
Ziel ist es alle deutschen Texte = haben eine graue Farbe und alle anderen Texte bzw. englische Texte eine blaue Farbe.
Hat jemand eine Idee ob das zu realisieren ist?
Mein Ansatz wäre ein Makro welches entweder die Sprache erkennt bzw. erkennt das Worte die richtig geschrieben sind den Farbwert der Schriftart auf grau stellt.
Alle anderen Zellen dann blau markiert. Übrigens stehen in den jeweiligen Zellen mehrere Worte.
So nun bin ich gespannt ob diese Herausforderung zu meistern ist. :)
Vielen Dank, ich freue mich auf Feedback!
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: (zu) kompliziert
20.09.2018 15:06:47
Fennek
Hallo,
vielleicht ist dieser Ansatz möglich, aber einfacher wäre es jeweils eine Liste mit den Farbnamen zu erstellen und dann mit =sverweis() oder instr() zu prüfen.
mfg
AW: (zu) kompliziert
20.09.2018 15:12:22
Michael
Bei über 5000 Zellen ist es schwierig im Nachhinein das zu verändern.
Daher suche ich eine Automatisierung.
AW: 20 Farben?
20.09.2018 15:46:52
Fennek
Hallo,
meine Vermutung war, dass es nicht mehr als 10-20 Farben gibt, diese Namen in beliebig vielen Zeilen zu suchen, macht dann der VBA-Code.
mfg
Anzeige
AW: 20 Farben?
20.09.2018 17:49:48
Günther
... Ich habe das anders verstanden. Und zwar so:
In den Zellen steht ein beliebiger Text, mal in DE und mal in US. Und Excel soll jetzt "von alleine" erkennen, welche Sprache das ist und die Zelle/Zeile entsprechend formatieren.
Und da dürfte dann nur eine Art Konkordanzliste helfen, wo Schlüsselbegriffen eine Sprache zugeordnet wird.
Gruß
Günther
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Sprache in Zelle erkennen und anpassen


Schritt-für-Schritt-Anleitung

  1. Öffne die Excel-Datei mit deiner Tabelle, die den englischen und deutschen Text enthält.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu:

    • Klicke auf Einfügen > Modul.
  4. Kopiere und füge folgenden Code ein:

    Sub SpracheErkennenUndFärben()
        Dim Zelle As Range
        Dim Text As String
        Dim DeutscheWorte As Variant
    
        DeutscheWorte = Array("Hallo", "Welt", "Danke") ' Füge hier weitere deutsche Wörter hinzu
    
        For Each Zelle In Selection
            Text = Zelle.Value
            If Not IsEmpty(Text) Then
                If SpracheErkennen(Text, DeutscheWorte) Then
                    Zelle.Font.Color = RGB(128, 128, 128) ' Grau für deutsche Texte
                Else
                    Zelle.Font.Color = RGB(0, 0, 255) ' Blau für englische Texte
                End If
            End If
        Next Zelle
    End Sub
    
    Function SpracheErkennen(Text As String, DeutscheWorte As Variant) As Boolean
        Dim Wort As Variant
        For Each Wort In DeutscheWorte
            If InStr(1, Text, Wort, vbTextCompare) > 0 Then
                SpracheErkennen = True
                Exit Function
            End If
        Next Wort
        SpracheErkennen = False
    End Function
  5. Schließe den VBA-Editor und kehre zu deiner Excel-Datei zurück.

  6. Markiere die Zellen, die du anpassen möchtest.

  7. Führe das Makro aus:

    • Drücke ALT + F8, wähle SpracheErkennenUndFärben und klicke auf Ausführen.

Häufige Fehler und Lösungen

  • Error 1004: Anwendung oder Objekt definiert: Stelle sicher, dass du Zellen markiert hast, bevor du das Makro ausführst.
  • Farbe wird nicht geändert: Überprüfe, ob die Wörter in der DeutscheWorte-Liste korrekt sind und ob sie im Text vorhanden sind.
  • Makro lässt sich nicht ausführen: Stelle sicher, dass die Makros in deinen Excel-Einstellungen aktiviert sind.

Alternative Methoden

Anstelle eines Makros kannst du auch die Bedingte Formatierung verwenden. Hierzu kannst du folgende Schritte ausführen:

  1. Wähle die Zellen aus, die du formatieren möchtest.
  2. Gehe zu Start > Bedingte Formatierung > Neue Regel.
  3. Wähle Formel zur Ermittlung der zu formatierenden Zellen verwenden.
  4. Gib eine Formel ein, um die Sprache zu erkennen, z.B. =ISTFEHLER(SUCHEN("Hallo";A1)) für deutschen Text.
  5. Wähle die Formatierung (Farbe) aus und klicke auf OK.

Praktische Beispiele

  • Beispiel für deutsche Texte: Wenn in einer Zelle „Danke“ steht, wird diese automatisch grau gefärbt.
  • Beispiel für englische Texte: Wenn in einer Zelle „Thank you“ steht, wird diese blau gefärbt.

Du kannst die DeutscheWorte-Liste im Makro anpassen, um weitere deutsche Begriffe hinzuzufügen, die bei der Sprache erkennen helfen sollen.


Tipps für Profis

  • Nutze komplexere Wortlisten für genauere Ergebnisse, indem du die Liste der deutschen Wörter regelmäßig aktualisierst.
  • Experimentiere mit der Bedingten Formatierung, um verschiedene Formate für unterschiedliche Sprachen zu integrieren.
  • Überlege, wie du die Excel Formelsprache ändern kannst, um die Lesbarkeit deiner Formeln zu verbessern.

FAQ: Häufige Fragen

1. Kann ich das Makro für andere Sprachen anpassen?
Ja, du kannst die DeutscheWorte-Liste im Makro anpassen, um weitere Sprachen hinzuzufügen.

2. Funktioniert das auch in Excel Online?
Das Makro funktioniert nur in Desktop-Versionen von Excel, nicht in Excel Online.

3. Wie kann ich die Farben anpassen?
Ändere die RGB-Werte im Makro, um die gewünschten Farben für die Texte festzulegen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige