Ich arbeite an einer Tabelle, die in einer früheren Version von Excel (2003, glaube ich) erstellt wurde, und sie machtumfangreichVerwendung von Farbcodierung zur Organisation. Leider wurde es mit dem Farbschema der älteren Version erstellt und im Grunde stimmt keine der Farben mit denen des Designs von 2010 überein (außer reinem Weiß und reinem Schwarz). Jedes Mal, wenn ich also etwas an das zuvor vorhandene Farbschema anpassen möchte, muss ich entweder eine benutzerdefinierte Farbe auswählen und sie von Hand auswählen oder die Formatierung aus einer vorhandenen Zelle kopieren und in die Zielzelle einfügen (was ärgerlich ist, weil dabei auch Dinge wie Ränder usw. kopiert werden).
Ich habe die Einstellung „Seitenlayout/Designs/Farben“ gefunden, aber anscheinend kann ich dort nur die auswählbaren Farben in eine ihrer Voreinstellungen ändern oder eine völlig neue Palette erstellen – und ich kann nur einige Farben in dieser Palette auswählen, nicht den gesamten Satz. Der Rest wird erstellt, indem hellere oder dunklere Versionen der von Ihnen ausgewählten Farben erstellt werden. Außerdem werden durch diese Aktionen die bereits in der Tabelle verwendeten Farben geändert, wenn und nur wenn sie genau mit den Farben übereinstimmen, die im vorherigen Schema verwendet wurden. Dies bedeutet, dass Dinge, die früher in ähnlichen Tönen gefärbt waren, um ihre Beziehung anzuzeigen, jetzt anders gefärbt sind, wobei einige im alten Schema verbleiben und andere automatisch in das neue geändert werden. Es zerstört im Grunde das gesamte System.
Ich möchte einfach die spezifischen Farben hinzufügen können, die ich aus dem alten Dokument verwende, sodass sie im Farbwähler angezeigt werden und ich nicht danach suchen muss. Ältere Versionen von Excel hatten diese Funktion – es gab eine Reihe anpassbarer Quadrate, die man in jeder gewünschten Farbe gestalten konnte und die mit dem Design gespeichert wurden. Ich glaube, man könnte sogar noch mehr Quadrate hinzufügen, ich habe es vergessen. (Ich habe die alte Version nicht mehr installiert.) Haben sie diese Funktion zugunsten ihrer „Designs“ entfernt? Oder ist sie irgendwo versteckt? Diese Farbschema-Funktion interessiert mich überhaupt nicht. Ich möchte einfach die Farben verwenden, die ich verwenden möchte (insbesondere die, die zu diesem Dokument passen), ohne mir Gedanken darüber machen zu müssen, ob sie zu einer beliebigen voreingestellten Palette passen oder nicht. Ich möchte dieses ganze Blatt wirklich nicht mit den neuen Schema-Einstellungen neu einfärben müssen, nur damit ich hier ein gewisses Maß an Konsistenz aufrechterhalten kann.
Antwort1
Hmm, ich fürchte, Sie haben Pech.
In Excel 2003 gab es eine Farbpalette mit 40 anpassbaren Farben für die Verwendung in Arbeitsblättern und 16 zusätzlichen Farben für die Verwendung in Diagrammen. Die Standardpaletteneinstellungen konnten mit der Datei angepasst und geändert werden, Diagrammfarben konnten in Arbeitsblattzellen verwendet werden und umgekehrt.
Ab Office 2007 wurde dieses Prinzip durch die „Designfarbe“ ersetzt, die aus zwei Text- und sechs Akzentfarben besteht und deren Intensitäten zur Auswahl stehen. Designs sind in allen Office-Anwendungen einheitlich. Es ist ganz einfach, zwischen Designs zu wechseln, und Elemente, die mit Designfarben formatiert wurden, ändern sich beim Wechseln des Designs.
Es ist auch ganz einfach, mit Ihren bevorzugten Farbauswahlen ein neues Thema zu erstellen, sofern diese die 6 Akzentfarben nicht überschreiten.
Es besteht immer die Möglichkeit, von den Designfarben abzuweichen und eine benutzerdefinierte Farbe aus der Palette mit 127 Standardfarben und mehreren Grautönen auszuwählen oder benutzerdefinierte Farben mit RGB- oder HSL-Werten zu definieren. Leider gibt es keine einfache Möglichkeit, eine solche benutzerdefinierte Auswahl zur Standardpalette hinzuzufügen.
Was istäußerstSchwierig ist es allerdings, Ihre benutzerdefinierte Farbpalette mit mehr als den zwei Text- und sechs Akzentfarben zu definieren, also mit etwas Ähnlichem wie den 56 Farben, die Excel vor der Version 2007 angeboten hat.
Ist Ihnen bewusst, dass Excel genau wie Word über Stile verfügt? Excel-Stile können Schriftart, Schriftgröße, Zahlenformatierung, Textfarbe und Füllfarbe umfassen. Sie können die Excel-Stilfunktion nutzen und verschiedene Stile mit genau der gewünschten Farbgebung und anderen Formatierungen für eine Zelle erstellen.
Eine andere Möglichkeit (obwohl nicht einfach und mit etwas Arbeit verbunden) besteht darin, ein neues Blatt zu erstellen, zwei Raster mit 8 Spalten und 7 Zeilen zu verwenden und die Farbe jeder Zelle manuell auf die RGB-Werte einzustellen, die in der ursprünglichen Excel 2003-Datei vorhanden sind. Verwenden Sie eines der Raster für die Füllfarbe und eines für die Textfarbe. Anschließend können Sie eine Zelle mit der gewünschten Farbe auswählen, sie kopieren und ihre Formatierung in die Zielzelle einfügen.
Oder kopieren Sie die einzelnen Zellenformatierungen, fügen Sie sie in eine Art Styleguide-Tabelle auf einem neuen Blatt ein und verwenden Sie diese nur zum Kopieren und Einfügen von Formaten.
Letztendlich sollten Sie sich jedoch auf das Designprinzip konzentrieren. Seit Office 2007 sind die 56 Einzelfarben aus der Benutzeroberfläche verschwunden. Stattdessen liegen Ton-in-Ton-Farbschemata mit Schattierungen von sechs Akzentfarben im Trend.
Wenn Sie bei der Gestaltung neuer Tabellenkalkulationen diese Grundsätze beachten, wird Ihnen das Leben auf lange Sicht leichter fallen.
Antwort2
Sie könnten versuchen, dies zu verwenden (oder anzupassen)Kalkulationstabelle veröffentlicht von John WalkenbachMit dieser Technik wird auf dem Menüband eine Schaltfläche erstellt, die Ihnen eine Palette mit Excel 2003-Farben bietet.
- Herunterladen der BeispielarbeitsmappeFarbauswahl.xls
Probieren Sie den Button mit der AufschriftKlicken Sie hier, um die Hintergrundfarbe der ausgewählten Zellen zu ändern
- Speichern Sie die Datei irgendwo.
- Klicken Sie mit der rechten Maustaste auf eine beliebige Stelle im Menüband und wählen SieAnpassen des Menübands.
Von demWählen Sie Befehle ausDropdown-Auswahl
Macros
, dann unten auswählen...GetAColor2
(im Screenshot gelb hervorgehoben).Klicken Sie im rechten Bereich aufHeimdannNeue GruppeKlicken Sie mit der rechten Maustaste aufNeue Gruppe (Benutzerdefiniert)Wählen Sie die angezeigte Option aus, benennen Sie sie um
2003 Colours
und wählen Sie das Füllsymbol aus.Klicken Sie abschließend auf dasHinzufügen >>Schaltfläche in der Mitte. Benennen Sie die neue Option um
2003 Colours
und wählen Sie erneut das Füllsymbol aus. Sie sollten es jetzt in der Multifunktionsleiste sehen können.Möglicherweise möchten Sie den VBA aus dieser Datei in Ihre persönliche Arbeitsmappe verschieben, damit Sie beim Klicken auf die Schaltfläche keine externe Datei öffnen. Oder Sie verwenden eine Tastenkombination anstelle einer Menübandschaltfläche. Als schnelle Möglichkeit, die Arbeit aufzunehmen, funktioniert dies jedoch gut.
Notiz -Weitere Informationen zur Anpassung des Arbeitsbuchs von J-Walk finden Sie hier.
Antwort3
Diese Lösung hat bei mir in Excel 2013 funktioniert, deshalb poste ich sie hier für alle, die in Zukunft über diese Frage stolpern und die Antwort „Das geht nicht“ nicht mögen.
Wenn Sie neue Dateien erstellen:
Erstellen Sie eine neue Vorlage, die Excel beim Erstellen neuer Dateien verwendet.
- Öffnen einer leeren Arbeitsmappe
- Passen Sie es nach Wunsch an (alle zukünftigen neuen Arbeitsmappen werden eine Kopie dieser sein, also nehmen Sie sich Zeit, um die gewünschten Schriftarteinstellungen, Spaltenbreiten usw. festzulegen).
- Legen Sie für jede benutzerdefinierte Farbe, die Sie speichern möchten, eine Zelle auf diese benutzerdefinierte Farbe fest. (Ich habe sie einfach
A1
immer wieder verwendet.) - Setzen Sie alle Zellen auf „Keine Füllung“ zurück.
- Nachdem Sie nun die Farben haben, die in Ihren letzten Farben angezeigt werden sollen, können Sie die Vorlage speichern.
- Speichern Sie die Datei als "Book.xltx" im Startordner von Excel. Für mich war das
C:\users\{username}\AppData\Roaming\Microsoft\Excel\XLSTART\
- Schließen Sie die Datei, da Sie keine neue Datei basierend auf der Vorlage öffnen können, während die Vorlage noch geöffnet ist.
- Öffnen Sie eine neue Datei, um zu sehen, ob es funktioniert hat
Als ich bei Schritt 8 ankam, hatte meine neue Datei die unten gezeigten Farboptionen:
Wenn Sie alte Dateien bearbeiten:
Automatisieren Sie Schritt 3 oben mit VBA.
- Speichern Sie das untenstehende VBA in IhremPersönliche Makro-Arbeitsmappe
- Bearbeiten Sie die
ColorList
Variable so, dass sie eine Liste der benötigten RGB-Werte enthält - Bearbeiten Sie die Ruhezeiten, falls dies für Ihre spezielle Konfiguration erforderlich ist
- Fügen Sie das Makro zu Ihrem Menüband hinzu
(Wenn diese Links nicht funktionieren, sind die Probleme so häufig, dass Sie über Ihre bevorzugte Websuchmaschine jede Menge Hilfe finden sollten.)
'Declare Sleep() API
#If VBA7 Then ' Excel 2010 or later
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal Milliseconds As LongPtr)
#Else ' Excel 2007 or earlier
Public Declare Sub Sleep Lib "kernel32" (ByVal Milliseconds As Long)
#End If
Sub LoadRecentColors()
'PURPOSE: Use A List Of RGB Codes To Load Colors Into Recent Colors Section of Color Palette
'SOURCE: www.TheSpreadsheetGuru.com/the-code-vault
Dim ColorList As Variant
Dim CurrentFill As Variant
'Array List of RGB Color Codes to Add To Recent Colors Section (Max 10)
ColorList = Array("066,174,093", "184,055,038", "046,062,081", "056,160,133")
'Store ActiveCell's Fill Color (if applicable)
If ActiveCell.Interior.ColorIndex <> xlNone Then CurrentFill = ActiveCell.Interior.Color
'Optimize Code
Application.ScreenUpdating = False
'Loop Through List Of RGB Codes And Add To Recent Colors
For x = LBound(ColorList) To UBound(ColorList)
ActiveCell.Interior.Color = RGB(Left(ColorList(x), 3), Mid(ColorList(x), 5, 3), Right(ColorList(x), 3))
DoEvents
SendKeys "%h"
Sleep 500 'Pause half-second (units in milliseconds)
SendKeys "h"
Sleep 500 'Pause half-second (units in milliseconds)
SendKeys "m"
Sleep 500 'Pause half-second (units in milliseconds)
SendKeys "~"
Sleep 500 'Pause half-second (units in milliseconds)
DoEvents
Next x
'Return ActiveCell Original Fill Color
If CurrentFill = Empty Then
ActiveCell.Interior.ColorIndex = xlNone
Else
ActiveCell.Interior.Color = currentColor
End If
End Sub