MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 18.09.2018, 17:18   #1
christin84
Neuer Benutzer
Neuer Benutzer
Standard Excel2010 - Bedingte Formatierung

Hallo liebe User,
ich habe das Internet jetzt schon lange durchforstet, aber bisher nicht das richtige für mich gefunden. Ich habe folgende Situation.

Ich habe in einer Excel-Tabelle mehrere Zellen mit unterschiedlichen bedingten Formatierung versehen - grob gesagt, überprüfen diese Formatierungen, aber gleicher Inhalt in einer anderen Zelle steht und färben die Zelle dann ein. Somit will ich Doppelbelegungen sichtbar machen. Das funktioniert auch wunderbar. Problem ist folgendes:

Kopiere ich mir die bedingte Formatierung und füge diese für die restlichen Zellen ein, dann kann ich nicht nur die bedingte Formatierung einfügen, sondern füge immer die komplette Formatierung der Ausgangszelle ein. Die Zielzellen sind jedoch bereits anders formatiert und sollen es bleiben. Es soll also nur die bedingte Formatierung eingefügt werden. Es gibt bei Inhalte einfügen, ja z. B. auch nur Formeln einfügen etc. Aber anscheinend, kann ich immer nur das komplette Format einfügen. Oder weiß hier noch jemand einen Rat?

Gibt es alternativ eine Möglichkeit mit VBA die bedingte Formatierung zu erstellen? Diese müsste aber starr sein. Also ein Verschieben oder Ausschneiden der Zellen dürfte keine Auswirkungen haben. Die Anwendung der bedingten Formatierung betrifft immer dieselben Zellen.

Vielen Dank schon mal vorab für eure Hilfe!

Viele Grüße
Christin
christin84 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 18.09.2018, 17:39   #2
Hajo_Zi
MOF Guru
MOF Guru
Standard

Halo Christian,

ändere wird angewendet auf.

Im Forum kann der Beitrag als erledigt markiert werden. Also mache es unten links mit Klick auf den Schalter "als erledigt setzen", falls Problem gelöst.
Der Zustand des Beitrages wird dann in der Übersicht angezeigt und man braucht sich diese Beiträge nicht mehr ansehen.

GrußformelHomepage

__________________

Signatur in jedem Beitrag
m Forum kann der Beitrag als erledigt markiert werden. Also mache es unten links mit Klick auf den Schalter "als erledigt setzen", falls Problem gelöst.
Der Zustand des Beitrages wird dann in der Übersicht angezeigt und man braucht sich diese Beiträge nicht mehr ansehen.
Bitte Version angeben. Bei keiner Angabe gehe ich von meinen Angaben aus.
Betriebssystem: Windows 10 - 64 Bit, Office 2016 - 32 Bit.
Hajo_Zi ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 19.09.2018, 11:32   #3
christin84
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Hajo,

das bringt mich leider nicht weiter. Ich habe mich wahrscheinlich auch nicht gut genug ausgedrückt. Den Bereich "wird angewendet auf" hilft nicht, da die Formel ja auch angepasst werden müsste.

Ich versuche mal ein Beispiel:

Ich starte in Zelle B6 und will diese nach folgender Formel (diese ist stark abgespeckt, es werden wesentlich mehr Zellen überprüft) formatieren:
=UND(B6>0;ODER(B6=C6;B6=D6))

Diese bedingte Formatierung möchte ich im Abstand von 7 Zellen runterkopieren (also nächste Zelle betrifft B13, B20 ...bis B2596). Dementsprechend muss natürlich der Bezug zu den anderen Zellen auch mitwandern. Einfach herunterkopieren funktioniert nicht, weil die bestehende Formatierung der anderen Zellen überschrieben werden würde, da ich anscheinend nicht nur die bedingte Formatierung kopieren und einfügen kann.

Daher habe ich mir den Schritt mal mit einem Makro aufgezeichnet und angepasst. Ich habe jetzt diesen Befehl:

PHP-Code:

Sub BedForm()
    
Selection.FormatConditions.Add Type:=xlExpressionFormula1:= _
    
"=UND(B6>0;ODER(B6=C6;B6=D6))"
    
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection
.FormatConditions(1).Interior
        
.PatternColorIndex xlAutomatic
        
.ThemeColor xlThemeColorAccent2
        
.TintAndShade 0
    End With
    Selection
.FormatConditions(1).StopIfTrue False
   
End Sub 
Dieser funktioniert auch, wenn ich in der Zelle B6 bin. Nun müsste hier irgendwie eine Schleife eingebaut werden die dieses Makro für jede 7. Zelle ausführt bis zur Zelle B2596 - natürlich mit dem jeweils angepassten Bereich für die Formel.

Kann mir hier jemand behilflich sein. Das wäre glaube ich die beste Lösung für mein Problem.

Ich habe dann noch weitere fast 60 bedingte Formatierungen, die ich mir dann davon ableiten würde. Super wäre, wenn man diese mit einem Klick auf einmal ausführen könnte.

Vielen Dank und viele Grüße
Christin
christin84 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 19.09.2018, 11:42   #4
WS-53
MOF Koryphäe
MOF Koryphäe
Standard

Hallo,

das sollte doch möglich sein, wqenn du bei deinen Bedingungen noch abfragst, ob der Rest aus Zeile()/7 = 6 ist.

__________________

VG, WS-53


>>> Ein Spezialist kann nicht viel, dies aber gut. Die Steigerung ist, noch weniger noch besser zu können. Die Krönung ist, nichts zu können, aber darin perfekt zu sein! Es gibt aber auch Naturtalente, die überspringen die Ersten beiden Stufen. <<<

Übrigens, Feedback, egal welcher Art, ist immer hilfreich. Und erledigte Beiträge sollten auch den Status "erledigt" erhalten.
WS-53 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 20.09.2018, 18:21   #5
gklumpp
MOF User
MOF User
Standard

Hi Christin,

versuche es bitte mal damit.


Code:

Option Explicit

Sub BedForm()
'B2596
Dim lngZeile As Long

    lngZeile = 6
    Do
        With Cells(lngZeile, 2)
            DoEvents
            .FormatConditions.Add Type:=xlExpression, Formula1:= _
            "=UND(B" & lngZeile & ">0;ODER(B" & lngZeile & "=B" & lngZeile & ";B" & lngZeile & "=B" & lngZeile & "))"
            
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
            With .FormatConditions(1).Interior
                .PatternColorIndex = xlAutomatic
                .ThemeColor = xlThemeColorAccent2
                .TintAndShade = 0
            End With
            .FormatConditions(1).StopIfTrue = False
        End With
        
        lngZeile = lngZeile + 7
    Loop Until lngZeile > 2596
End Sub
Das Ausführen kann dann ein Button übernehmen der den Code startet

__________________

Gruß Gerhard

WIN 10, Office 2010

Geändert von gklumpp (20.09.2018 um 18:30 Uhr).
gklumpp ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 25.09.2018, 10:14   #6
christin84
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Gerhard,

vielen Dank. Das ist genau das, was ich gesucht habe!
Ich musste nur die Spalten hier noch anpassen (in C und D).

"=UND(B" & lngZeile & ">0;ODER(B" & lngZeile & "=B" & lngZeile & ";B" & lngZeile & "=B" & lngZeile & "))"

Dann werde ich das mal auf alle anderen Bedingungen anpassen.

Noch mal vielen Dank!

Viele Grüße
Christin
christin84 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 25.09.2018, 11:01   #7
christin84
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Gerhard,

ich habe doch noch eine kurze Rückfrage.

Ich benötige nicht nur die Zeile 6 sondern auch die Zeile 9. Ich habe den Befehl dementsprechend angepasst und er funktioniert auch. Nur diesen Part "With Cells(lngZeile, 2)" habe ich nicht zusätzlich angelegt (habe es nicht ohne Fehler hinbekommen). Es funktioniert trotzdem. Was besagt das überhaupt aus? Hier mein derzeitiger Befehl:

Code:

Sub BedForm()
'B2596
Dim vormZeile As Long
Dim nachmZeile As Long

    vormZeile = 6
    nachmZeile = 9
    Do
        With Cells(vormZeile, 2)
            .FormatConditions.Add Type:=xlExpression, Formula1:= _
            "=UND(B" & vormZeile & ">0;ODER(B" & vormZeile & "=C" & vormZeile & ";B" & vormZeile & "=D" & vormZeile & ";B" & vormZeile & "=E" & vormZeile & ";B" & vormZeile & "=F" & nachmZeile & "))"
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
            With .FormatConditions(1).Interior
                .PatternColorIndex = xlAutomatic
                .ThemeColor = xlThemeColorAccent2
                .TintAndShade = 0
            End With
            .FormatConditions(1).StopIfTrue = False
        End With
        
        vormZeile = vormZeile + 7
        nachmZeile = nachmZeile + 7
    Loop Until vormZeile > 2596
End Sub
Viele Grüße
Christin
christin84 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 25.09.2018, 14:30   #8
christin84
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Gerhard,
hat sich erledigt. Es ist die Spaltennummer. Ist mir gerade aufgefallen, als ich für die anderen Spalten das Makro angestoßen habe und diese aber immer in der Zelle B6 ausgeführt wurden.
Viele Grüße
Christin
christin84 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:25 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.