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

Forumthread: Bedingte Formatierung beim kopieren?

Bedingte Formatierung beim kopieren?
Micha
Hallo zusammen,
ich möchte gerne das beim kopieren/einfügen bedingte formatierungen nicht mit kopiert werden.
Gibt es eine VBA Lösung die das für die gesamte Arbeitsmappe ermöglicht?
Danke für einen Tip
Gruß
Micha
Anzeige
AW: Bedingte Formatierung beim kopieren?
10.11.2011 12:02:47
Dieter(Drummer)
Hi Micha,
Du könntest z.B. vor dem kopieren die BEDINGTE FORMATIERUNG aus der Mappe entfernen und dann vor dem schliessen der Mappe die Änderung (hier: BEDINGTE FORMATIERUNG entfernen) wieder rückgängig machen.
Gruß
Dieter(Drummer)
"Sheets(1).Cells.FormatConditions.Delete" oT.
10.11.2011 12:07:46
JOWE
AW: "Sheets(1).Cells.FormatConditions.Delete" oT.
10.11.2011 12:43:23
Micha
Hallo Jowe
Wo kopiere ich den Code hin, damit das funktioniert?
Gruß
Micha
Anzeige
AW: "Sheets(1).Cells.FormatConditions.Delete" oT.
10.11.2011 12:58:27
JOWE
Hallo Micha,
das folgende Makro kopierst Du in der VBA-Umgebung nach "Diese Arbeitsmappe".
Sub bedingte_Formatierung_gesamte_Mappe_löschen()
For Each sh In ActiveWorkbook.Sheets
sh.Cells.FormatConditions.Delete
Next
End Sub

Userbild
Gruß Jochen
Anzeige
AW: "Sheets(1).Cells.FormatConditions.Delete" oT.
10.11.2011 13:10:16
Micha
Hallo,
upps, da haben wir uns aber falsch verstanden.
Ich möchte nicht die bedingten Formatierungen der gesamten Arbeitsmappe löschen.
Ich möchte, das die vorhandenen bedingten Formatierungen der Ursprungszelle beim kopieren nicht mit kopiert werden. Also nur die Inhalte eingefügt werden.
Ich weiß, das geht ja über "Inhalte einfügen" aber die Datei wird von mehrern Personen benutzt, deshalb suche ich eine Möglichkeit das kopieren der bedingten Formatierungen per VBA zu unterbinden.
Hoffe auf weitere Hilfe
Gruß
Micha
Anzeige
AW: "Sheets(1).Cells.FormatConditions.Delete" oT.
10.11.2011 13:25:15
JOWE
Hmm, so war Deine Frage:
ich möchte gerne das beim kopieren/einfügen bedingte formatierungen nicht mit kopiert werden.
Gibt es eine VBA Lösung die das für die gesamte Arbeitsmappe ermöglicht?

Es gibt kein Ereignis "beim Kopieren/beim Einfügen".
Laß den Anwender den zu kopierenden Bereich markieren und zum Zielbereich kopieren.
Danach kann dieses Makro angestoßen werden.
Sub bedingte_Formatierung_für_markierten_Bereich_löschen()
Selection.FormatConditions.Delete
CutCopyMode = False
End Sub

jetzt werden bedingte Formatierungen nur von dem nach Einfügen noch markierten Bereich entfernt.
Anzeige
Hier liegt das eigentliche Problem
10.11.2011 13:38:54
Micha
Hallo.
Vieleicht habe ich mich auch unnötig darauf versteift das per VBA lösen zu wollen.
Ich erkläre einfach mal das Ursprungsproblem, vielleicht findet sich ja eine andere Lösung dafür?
So sieht die bedingte Formatierung der Ursprungszelle aus:
Userbild
Die Zielzelle hat eigentlich die gleiche bedingte Formatierung, aber nach dem Einfügen ist der verwendete Bereich in mehrere Bereiche aufgeteilt:
Userbild
Bei jedem weiteren kopieren vermehrt sich die Anzahl der Bereiche, und die Tabelle wird immer langsamer...
Das scheint nur mit Excel 2010 ein Problem zu sein, mit Excel 2003 werden die bedingten Formatierungen beim kopieren anscheind anders behandelt.
Kann mir bitte jemand helfen?
Danke
Micha
Anzeige
Sorry da muss ich passen
10.11.2011 13:42:41
JOWE
AW: Sorry da muss ich passen
10.11.2011 14:12:34
Micha
Trotzdem vielen Dank für die Hilfe!
Ich denke ich sollte einen neuen Thread mit genau diesem Problem eröffnen?
Besten Gruß
Micha
Ja, dann musst du nach dem Einfügen die ...
10.11.2011 14:46:43
Luc:-?
…BedingtFormate löschen und darauf dann eine Kopie der Zellformate speichern, Micha.
Das ist der Mist ab xl12 (2007), dass es jetzt Geltungsbereiche für die BedingtFormatierung gibt und die passen sich an. Wird dann auch bei der Methode passieren, ist aber nicht tragisch. Nur die Vermehrung der Bedingungsanzahl ist blöd, deshalb alte BedingtFormate vor dem Einkopieren löschen oder aber nachträglich wie beschrieben. Mit VBA könnte man auch die Geltungsbereiche dauerhaft ändern, aber das wird hier wohl nicht nötig sein.
Gruß Luc :-?
Anzeige
AW: "Sheets(1).Cells.FormatConditions.Delete" oT.
10.11.2011 13:27:13
Dieter(Drummer)
Hi Micha,
mit INHALTE EINFÜGEN wird die BEDINGTE FORMATIERUNG nicht mit kopiert!
Gruß
Dieter(Drummer)
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Bedingte Formatierung beim Kopieren in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne die VBA-Umgebung:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Einfügen eines neuen Moduls:

    • Klicke mit der rechten Maustaste auf "Diese Arbeitsmappe" im Projektfenster und wähle "Einfügen" > "Modul".
  3. Makro zur Löschung der bedingten Formatierungen einfügen:

    • Kopiere und füge den folgenden Code in das neue Modul ein:
      Sub bedingte_Formatierung_fuer_markierten_Bereich_loeschen()
      Selection.FormatConditions.Delete
      CutCopyMode = False
      End Sub
  4. Makro ausführen:

    • Markiere den Bereich, aus dem Du die bedingte Formatierung entfernen möchtest, und führe das Makro aus.

Häufige Fehler und Lösungen

  • „Bedingte Formatierung wird nicht entfernt“:

    • Stelle sicher, dass Du den richtigen Bereich markiert hast, bevor Du das Makro ausführst.
  • „Excel bedingte Formatierung kopieren funktioniert nicht“:

    • Achte darauf, dass Du die bedingte Formatierung nicht manuell wiederherstellst, bevor Du das Makro ausführst.
  • „Bedingte Formatierungen werden fortlaufend kopiert“:

    • Verwende die Funktion „Inhalte einfügen“, um nur die Werte zu kopieren und die Formatierungen zu vermeiden.

Alternative Methoden

  1. Inhalte einfügen:

    • Kopiere den gewünschten Bereich und klicke mit der rechten Maustaste auf die Zielzelle. Wähle „Inhalte einfügen“ und dann „Werte“. Dies entfernt alle bedingten Formatierungen.
  2. Bedingte Formatierung auf gesamte Arbeitsmappe anwenden:

    • Du kannst die bedingte Formatierung auf alle Zellen in der Arbeitsmappe anwenden, indem Du sie zuerst in dem gewünschten Bereich festlegst und dann die Regel kopierst.
  3. VBA-Lösung für ganze Arbeitsmappe:

    • Um die bedingte Formatierung für die gesamte Arbeitsmappe zu entfernen, kannst Du folgenden Code verwenden:
      Sub bedingte_Formatierung_gesamte_Mappe_loeschen()
      For Each sh In ActiveWorkbook.Sheets
         sh.Cells.FormatConditions.Delete
      Next
      End Sub

Praktische Beispiele

  • Beispiel 1: Wenn Du Daten aus einem Arbeitsblatt in ein anderes kopierst und dabei die bedingte Formatierung loswerden möchtest, benutze die Funktion „Inhalte einfügen“ und wähle „Werte“.

  • Beispiel 2: Wenn Du Excel 2010 verwendest und feststellst, dass die bedingte Formatierung beim Kopieren nicht korrekt funktioniert, könnte es helfen, vor dem Kopieren die bedingten Formatierungen zu löschen und danach erneut anzuwenden.


Tipps für Profis

  • Makros automatisieren: Speichere häufig verwendete Makros in einer persönlichen Makroarbeitsmappe, um sie schnell verfügbar zu machen.

  • Regelmäßige Überprüfung: Überprüfe regelmäßig die bedingte Formatierung Deiner Arbeitsmappe, um sicherzustellen, dass keine überflüssigen oder fehlerhaften Formate gespeichert sind.

  • VBA für mehr Kontrolle: Nutze VBA, um komplexe Anforderungen zu automatisieren, wie das Entfernen spezifischer bedingter Formatierungen oder das Anpassen von Geltungsbereichen.


FAQ: Häufige Fragen

1. Wie entferne ich die bedingte Formatierung in Excel?
Du kannst die bedingte Formatierung entfernen, indem Du den Bereich markierst, das Kontextmenü öffnest und „Bedingte Formatierung löschen“ wählst.

2. Warum wird die bedingte Formatierung beim Kopieren nicht mitkopiert?
Wenn Du „Inhalte einfügen“ wählst und „Werte“ auswählst, wird nur der Inhalt und nicht die Formatierung kopiert.

3. Kann ich die bedingte Formatierung auf die gesamte Arbeitsmappe anwenden?
Ja, Du kannst die bedingte Formatierung auf die gesamte Arbeitsmappe anwenden, indem Du die Regel in einem Blatt festlegst und dann auf andere Blätter überträgst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige