Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1684to1688
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bedingte Formatierung dynamisch & automatisch VBA

Bedingte Formatierung dynamisch & automatisch VBA
11.04.2019 12:50:54
Mathilda
Liebe Forengemeinde,
in einer dynamischen Tabelle habe ich bedingte Formatierungen mit Formeln eingebaut. Es greifen mehrere Leute auf diese Datei zu. Es wird nicht konsequent mit „Werte einfügen“ gearbeitet, weshalb bei fortlaufender Dateneingabe durch Copy & Paste irgendwann die Bezüge der bedingten Formatierungen zerhackt und zerschossen sind und ich wieder „aufräumen“ muss. Dies würde ich gern vermeiden.
Ich habe keinerlei VBA-Kenntnisse, deshalb sei mir folgende Frage erlaubt. Ist es über VBA realisierbar, meine bedingten Formatierungen automatisch ausführen zu lassen, d. h. bei jeder Dateneingabe innerhalb der dynamischen Tabelle? Wäre dies auch dynamisch möglich, sodass sich die Formatierungen immer auf den gesamten Tabellenbereich beziehen (falls neue Zeilen eingefügt werden)?
Nachfolgende Formatierungen habe ich angelegt, eine Beispieldatei habe ich vorbereitet. Ich würde mich über Rückmeldungen sehr freuen.
Beste Grüße, Mathilda
https://www.herber.de/bbs/user/129084.xlsx
Userbild

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ja, aber
11.04.2019 13:01:51
Fennek
Hallo,
ja, man kann fB mit VBA setzen.
Im Beispiel gibt es 4 Regeln, die auf 4 verschiedene Bereich angewendet werden. Auch das ginge mit VBA, aber es ist einfacher 4 Regeln für EINEN großen Bereich zu definieren.
Einfach gesagt, das Problemist eher, sich in der Datei zurecht zu finden , als einen VBA - Code zu schreiben.
mfg
AW: Formeln
11.04.2019 13:56:13
Fennek
Hallo,
die Frage war, ob es für den gesamten Bereich EINEN Set von Bedingungen gibt.
Das Auslesen ist recht mühsam und ich möchte nicht einen Flickenteppisch analysieren.
Falls es nicht möglich ist, für ALLE Zeilen einen Satz von Bedingungen zu definieren, schicke ich dir meinen Mustercode.
mfg
Anzeige
AW: Copy-Paste
11.04.2019 14:31:11
Fennek
Hallo,
mit Copy/Paste, sowohl per Menü als auch VBA, kann man auch die bF übertragen.
Es gibt sogar einen versteckten Paste-Knopf, der nur die bF überträgt.
https://superuser.com/questions/419287/how-to-copy-paste-without-conditional-formatting
In xl2016 kann das per "Meüband anpassen", alle Befehle, eingefügt werden.
mfg
AW: Formeln
11.04.2019 14:32:47
Mathilda
Hallo Fennek,
ich muss gestehen, dass ich nicht ganz folgen kann. Der Gültigkeitsbereich der 4 Bedingungen soll sich in allen Fällen auf die dynamische Tabelle beschränken , jedoch ebenfalls dynamisch sein, wenn dort weitere Zeilen eingefügt werden. Die farbliche Hervorhebung muss aber auf die jeweiligen Spalten begrenzt sein (z. B. rot beim Überschreiten der Kapazität) oder eben für alle Zeilen gelten (blau), um den inhaltlichen Wechsel entsprechend der Ord-Nr. kenntlich zu machen.
Beste Grüße, Mathilda
Anzeige
AW: Erklärungsversuch ...
11.04.2019 15:15:01
Fennek
Hallo,
das Auslesen der bF ergab mehrere Formeln. Die jeweilige Zuordnung zu Ranges zu bestimmen ist mir zu mühsam.
Anbei meine Hilfsmakros:
Mit dem Pseudocode "Setzen" sollte man bF in einen Range schreiben können.

aus Stackoverflow
Sub test()
Sheets("B").[B1].Copy: Sheets("A").[A1:A10].PasteSpecial xlPasteFormats
End Sub
-> Format-Painter
Sub Auslesen()
For i = 5 To 12
For j = 3 To 14
Cells(i, j).SpecialCells(xlCellTypeSameFormatConditions).Select
Debug.Print Cells(i, j).Address, Cells(i, j).FormatConditions.Count, Cells(i, j). _
FormatConditions.Item(1).Formula1
Next j
Next i
End Sub
sub Neu_setzen() 'Formeln aus der Datei, Farben nicht
With Range("C5:N12")
.FormatConditions.Add Type:=2, Formula1:="=REST(SUMMENPRODUKT(N($C$4:$C4$C$5:$C5));2)"
.FormatConditions(1).Font.ColorIndex = 3
.FormatConditions.Add Type:=2, Formula1:="=G5>=0"
.FormatConditions(1).Font.ColorIndex = 4
.FormatConditions.Add Type:=2, Formula1:="=WENN($H5="";;$J5>$H5)"
.FormatConditions(1).Font.ColorIndex = 5
.FormatConditions.Add Type:=2, Formula1:="=WENN($H5="";;$J5>$H5)"
.FormatConditions(1).Font.ColorIndex = 6
end with
end sub
mfg
Anzeige
AW: Erklärungsversuch ...
11.04.2019 15:37:31
Mathilda
Hallo Fennek,
vielen Dank für deine Mühe! Ich muss mich rantesten, da ich über keinerlei VBA-Kenntnisse verfüge. Ich geb wieder Rückmeldung.
Beste Grüße, Mathilda
Tausche e mit a in Deinem Name, sorry (owT)
11.04.2019 15:55:24
EtoPHG

AW: Bedingte Formatierung dynamisch & automatisch VBA
11.04.2019 15:59:26
Mathilda
Hallo Hansueli,
darf ich kurz nachfragen: Meinst du mit i-Tabelle die Funktion "als Tabelle formatieren" (in früheren Excelversionen "Liste")?
Beste Grüße, Mathilda
Genau das meine ich "Liste", Mahtilda. (owT)
11.04.2019 16:04:16
EtoPHG

AW: Genau das meine ich "Liste", Mahtilda. (owT)
11.04.2019 16:07:04
Mathilda
Hallo Hansueli,
dann ist das ja ggf. vielversprechend. Ich schau mir die Anleitungen an. Hab erstmal vielen Dank!
Beste Grüße, Mathilda
AW: Genau das meine ich "Liste", Mahtilda. (owT)
11.04.2019 17:11:14
Hajo_Zi
Halo Mathilda,
offen bedeutet es soll noch eine Antwort kommen.
Warum ist dein Beitrag Offen.
Du willst doch was machen. Soll jemand vorbei kommen?

AW: Genau das meine ich "Liste", Mahtilda. (owT)
11.04.2019 18:00:28
Mathilda
Hallo Hajo,
ich dachte, es wäre sinnvoll es offen zu lassen bis ich rückmelden kann, dass es geklappt hat. Leider ist das bisher nicht der Fall. Der Code, den mir Fennek freundlicherweise zur Verfügung stellte, funktioniert in der Form nicht. Soweit ich ihn aber verstanden habe, müsste dieser noch angepasst werden. Damit bin ich derzeit überfordert. Das Video von Hansueli ist eine Anleitung, um wie oben beschrieben "aufzuräumen", was ich mit VBA gehofft hatte vermeiden zu können. Weiter bin ich bisher nicht gekommen. Ich suche nebenbei weiter, aber bin noch nicht fündig geworden.
Beste Grüße, Mathilda
Anzeige
Defragmentation bedFormatierung in Liste...
11.04.2019 18:50:03
EtoPHG
Hallo Mathilda,
Für mich hatte es den Anschein, dass du die bedingte Formatierung in einer "Liste" hast.
Dafür hat es im verlinkten Artikel auch einen VBA-Code!
Gruess Hansueli
AW: Defragmentation bedFormatierung in Liste...
12.04.2019 12:35:38
Mathilda
Hallo Hansueli,
das stimmt, ich hab bisher auch nur das Video, das du geteilt hast, angeschaut. Darin wird nur beschrieben, wie die bedingte Formatierung bereinigt werden kann. Für deinen anderen Link brauche ich etwas mehr Zeit und auch Ruhe hier auf Arbeit, weil mein Englisch etwas eingerostet ist. *verlegenerSmiley* Ich werd mich dem aber ganz gewiss noch widmen!
Ich wünsche dir ein angenehmes Wochenende!
Beste Grüße, Mathilda
Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige