Ich habe in Excel alle Spiele der Fussball-Bundesliga seit 1963 erfasst (jede Saison ein Blatt). Ich habe jedem Verein einen Namen zugewiesen (z.B =FCB für FC Bayern München). Das funtioniert auch sehr gut. Des Weiteren habe ich über das Menü "Bedingte Formatierung" jedem Verein die gewünschte Formatierung zugewiesen, jedoch von ich das sehr aufwendig. Deshalb wollte ich eine äquivatente Formel erstellen, der ich den Namen des Vereins (z.B. =FCB), die Anwendungsbereiche, und die jeweiligen RGB-Werte für Vorder- und Hintergrund übergebe. Da die Gesamtdatei etwas mehr als 7 MB umfasst, kann ich sie nicht hochladen.
also, wenn Du eine Beispieldatei statt mit 59 Blättern für 59 Jahre nur mit einem hoch lädst, ist das sicher deutlich weniger als 7 MB. Die Helfer wären sicher nicht begeistert, wenn da zuviel drin steht. Wenn es bis jetzt und sicher auch zukünftig mit einer bedingten Formatierung funktioniert, sollte man daran eventuell nur dann was ändern, wenn man dabei was hinsichtlich der Programmierung lernen will, sodass man später auch Anpassungen selbst durchführen kann. Da kann und sollte man durchaus mit kleinen Schritten und mal unabhängig von der Liste anfangen. Kannst Du z.B. ein Makro schreiben um mit dem Farbcode 223;33;39 irgendeine beliebige Zelle einzufärben? ...
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
28.02.2023, 16:29 (Dieser Beitrag wurde zuletzt bearbeitet: 28.02.2023, 16:30 von HKindler.)
Hi,
komplett ohne bed.Form., dafür mit einem Blatt "Vereine", auf dem die Kürzel und Farben in der intelligenten Tabelle "Vereine" festgelegt sind.
Im Blatt Tabelle1 ist folgender Code hinterlegt:
Code:
Private Sub Worksheet_Change(ByVal Target As Range) Dim Zelle As Range Dim Nr As Variant For Each Zelle In Target.Cells Nr = Application.XMatch(Zelle, Tabelle2.Range("Vereine[Kürzel]"), 0, 2) If IsError(Nr) Then Zelle.Interior.ColorIndex = xlNone Zelle.Font.ColorIndex = xlAutomatic Else With Tabelle2.Range("Vereine[Kürzel]").Cells(Nr) Application.EnableEvents = False Zelle = .Offset(, 1) Application.EnableEvents = True Zelle.Interior.Color = .Interior.Color Zelle.Font.Color = .Font.Color End With End If Next Zelle End Sub
Der sorgt dafür, dass bei einer Eingabe in einer beliebigen Zelle geprüft wird, ob die Eingabe in der Spalte Kürzel in der alphabetisch sortierten intelligenten Tabelle gefunden wird. Falls ja, wird das Kürzel durch den langen Namen ersetzt und die Farben entsprechend eingestellt. Falls nein, werden die Standard-Farben (schwarze Schrift, kein Hintergrund) gesetzt und der Eintrag selbst nicht verändert.
auch das kann ich in meiner Datei nicht nachvollziehen. Wenn ich irgendwo "BVB" oder "bvb" eingebe, kommt "BORUSSIA DORTMUND" und die Zelle wird Orange hinterlegt.
Wie schaffst du es hier einen Fehler zu provozieren? Kann es sein, dass dein Excel kein Application.XMatch bzw. =XVERGLEICH() kennt?