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

Forumthread: Nur ändern der Hintergrundfarbe zulassen

Nur ändern der Hintergrundfarbe zulassen
08.07.2020 07:48:20
Ralf
Hallo zusammen,
ich habe mal wieder eine Frage:
In einem geschützten Tabellenblatt habe ich einen Bereich freigegeben, den man trotz gesperrter Zellen formatieren darf (Worksheet_SelectionChange)
  If Target.Row > 14 And Target.Row 
Jetzt möchte ich aber nur das ändern der Hintergrundfarbe, der ausgewählten Zellen, erlauben.
Da man über das erlauben der Formatierung der Zelle auch die Schriftfarbe usw ändern darf, brauche ich eine Möglichkeit, das zu sperren. Kann man aus der Menüleiste nur das Symbol des Hintergrundfarbe aktiv lassen?
Wenn nicht, zweite Möglichkeit, die Textformatierung der ausgewählten Zellen irgendwie sichern und beim verlassen der Zellen wieder herstellen? Zu erwähnen wäre noch, dass die Zellen unterschiedliche Textfarben enthalten können, die vorgegeben sind.
Ich finde gerade keine Lösung dafür, vielleicht hat von Euch einer eine Idee.
Grüße Ralf
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Nur ändern der Hintergrundfarbe zulassen
08.07.2020 08:15:34
Martin
Hallo Ralf,
dein Wunsch erscheint mir selbst mit VBA eher umständlich lösbar, weil die Zellformatierung kein Event-Makro auslöst und die Zellen (z.B. durch ein Worksheet_SelectionChange-Ereignis) ständig neu formatiert werden müssten, was mir eher ineffektiv erscheint.
Aber vielleicht reicht dir die Bedingte Formatierung aus? Verwende einfach die Formel =A1"" (in diesem Beispiel für Zelle A1) und lege die Schriftfarbe fest:
Userbild
Die Schriftfarbe der Bedingten Formatierung dominiert gegenüber die manuellen Zellformatierung.
Viele Grüße
Martin
Anzeige
AW: Nur ändern der Hintergrundfarbe zulassen
08.07.2020 08:25:31
Ralf
Hallo Martin,
da die Textfarbe je nach Ereignis festgelegt wird, habe ich keine fixe Textfarbe.
Die Textfarbe in den Zellen ist manchmal rot, manchmal grün, ansonsten schwarz.
Das wird beim erstellen der Liste, über ein Makro, festgelegt.
Anschließend soll ein Benutzer nur noch die Hintergrundfarbe ändern können.
Wenn ich die bedingte Formatierung über VBA definieren kann, wäre das eine Möglichkeit, denn dann
kann ich beim erstellen dieser Excelliste diese bedingte Formatierung entsprechend festlegen.
Grüße Ralf
Anzeige
AW: Nur ändern der Hintergrundfarbe zulassen
08.07.2020 08:47:51
Martin
Hallo Ralf,
ja, du kannst die Bedingte Formatierung per VBA festlegen. Aber ist VBA überhaupt noch notwendig, wenn die verschiedenen Formatierungsregeln ohnehin über die Bedingte Formatierung festgelegt werden können?!
Viele Grüße
Martin
AW: Nur ändern der Hintergrundfarbe zulassen
08.07.2020 08:58:52
Ralf
Hallo Martin,
die Erstellung der Liste passiert komplett automatisch und wird über einen CMD-Befehl gestartet. Grundlage ist eine CSV.
Über ein Makro werden viele Sachen geprüft und in ein Vorlage, entsprechend formatiert, übertragen.
Zu diesem Zeitpunkt gibt es keine bedingte Formatierung. Da die Liste unterschiedlich lange Bereiche haben kann. Eine Spalte komplett mit einer bedingten Formatierung in der Vorlage schon zu definieren funktioniert leider nicht, da ich einen Kopfbereich und einen Fußbereich mit anderen Daten, als in der Mitte, habe.
Bei diesen Prüfungen kann ich dann die bedingte Formatierung mit festlegen, danke für den Tipp, daran habe ich nicht gedacht. Dann manche ich mich mal ans programmieren.
Grüße Ralf
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Nur das Ändern der Hintergrundfarbe in Excel zulassen


Schritt-für-Schritt-Anleitung

Um nur das Ändern der Hintergrundfarbe in einem geschützten Excel-Arbeitsblatt zu erlauben, befolge diese Schritte:

  1. Zellen freigeben: Markiere die Zellen, die bearbeitet werden dürfen. Klicke mit der rechten Maustaste und wähle „Zellen formatieren“. Unter dem Tab „Schutz“ deaktiviere die Option „Gesperrt“.

  2. Arbeitsblatt schützen: Gehe zu „Überprüfen“ und klicke auf „Blatt schützen“. Aktiviere die Option zum Formatieren von Zellen, aber deaktiviere alle anderen Optionen, wie das Ändern der Schriftfarbe.

  3. VBA verwenden: Um sicherzustellen, dass nur die Hintergrundfarbe geändert werden kann, kannst du ein VBA-Makro nutzen:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, Range("A1:A10")) Is Nothing Then
           Application.EnableEvents = False
           Target.Font.Color = RGB(0, 0, 0) ' Setzt die Schriftfarbe zurück auf Schwarz
           Application.EnableEvents = True
       End If
    End Sub

    Füge diesen Code in das entsprechende Arbeitsblattmodul ein.


Häufige Fehler und Lösungen

  • Die Hintergrundfarbe lässt sich nicht ändern: Stelle sicher, dass das Arbeitsblatt nicht schreibgeschützt ist und dass die Zellen nicht gesperrt sind.

  • Schriftfarbe ändert sich trotz VBA: Überprüfe, ob das VBA-Makro korrekt in das Arbeitsblattmodul eingefügt wurde und ob die Ereignisse aktiviert sind.

  • Bedingte Formatierung wird ignoriert: Wenn du die bedingte Formatierung für die Schriftfarbe verwendest, stelle sicher, dass diese die manuelle Formatierung dominiert.


Alternative Methoden

Eine weitere Möglichkeit, nur die Hintergrundfarbe zu ändern, ist die Verwendung der Bedingten Formatierung:

  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“ und gib eine Formel ein, z.B. =A1<>"".
  4. Setze die gewünschte Hintergrundfarbe und die Schriftfarbe auf transparent oder auf die gleiche Farbe wie der Hintergrund.

Praktische Beispiele

Angenommen, du hast ein Arbeitsblatt mit verschiedenen Zellen, deren Hintergrundfarbe du ändern möchtest, aber die Schriftfarbe soll fix bleiben. Mit den oben genannten Schritten kannst du sicherstellen, dass die Benutzer nur die Hintergrundfarbe der Zellen in einem definierten Bereich ändern können, ohne die Schriftfarbe zu beeinflussen.


Tipps für Profis

  • Nutze Shortcuts, um die Formatierung schneller durchzuführen. Zum Beispiel kannst du Alt + H, gefolgt von H drücken, um die Füllfarbe zu ändern.

  • Erstelle ein benutzerdefiniertes Farbschema, um die Auswahl der Farben zu erleichtern, wenn du häufig zwischen verschiedenen Hintergrundfarben wechselst.

  • Teste dein VBA-Skript gründlich, um sicherzustellen, dass es in verschiedenen Szenarien funktioniert, insbesondere wenn du mit CSV-Dateien arbeitest, die automatisiert in Excel importiert werden.


FAQ: Häufige Fragen

1. Wie kann ich die Hintergrundfarbe in Excel ändern, ohne die Schriftfarbe zu beeinflussen?
Verwende VBA oder die bedingte Formatierung, um die Schriftfarbe zurückzusetzen, nachdem die Hintergrundfarbe geändert wurde.

2. Warum lässt sich die Hintergrundfarbe in meinem Arbeitsblatt nicht ändern?
Überprüfe die Zellschutzoptionen und stelle sicher, dass die Zellen nicht gesperrt sind und das Arbeitsblatt nicht schreibgeschützt ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige