2016-08-01 6 views
0

Ich habe versucht, das selbst für einige Zeit zu lösen und es funktioniert einfach nicht für mich. Es ist ein etwas spezifisches Ziel, das ich habe, also hatte ich nicht viel Erfolg, Beispiele online zu finden, also hoffe ich auf eine Richtung, wie man das am besten angeht. Ich hoffe, eine Lösung zu finden, die VBA verwendet. Ich bin ziemlich neu in VBA, also bitte mit mir!Formatieren, so dass Zelle anders gefärbt wird, wenn es einen Wert in Spalte A oder Spalte B oder beides entspricht?

Ich beschäftige mich mit bedingter Hintergrundfarbe basierend auf übereinstimmenden Zellenwerten. Ich habe drei Spalten variabler Länge: A, B und D. Spalten A und B sind zufällig ausgewählte Teilmengen der Werte, die in Spalte D sind - also, die Werte in den verschiedenen Spalten können übereinstimmen, aber sie werden wahrscheinlich nicht eingeschaltet sein die gleiche Reihe.

Wenn der Wert einer Zelle in Spalte D mit dem einer Zelle in Spalte A übereinstimmt, möchte ich, dass die Zeile dieser Zelle von Spalte D zu Spalte K blau gefärbt wird. Wenn der Wert der Zelle in Spalte D mit einem Wert in Spalte B übereinstimmt, möchte ich ebenfalls, dass sie rot gefärbt ist. Wenn eine Zelle in Spalte D mit einer Zelle in Spalte A und B übereinstimmt, möchte ich, dass sie violett gefärbt ist.

Macht das Sinn? Wie würdest du vorschlagen, dass ich mich dem annähere?

Lassen Sie mich wissen, wenn ich weiter klären muss. Ich würde jede Hilfe sehr schätzen!

Mit Excel 2013

+0

Teilen eine Probe Ihrer Excel-Tabelle mit Daten und eine weitere von dem gewünschten Ergebnis –

+0

wie Duplikate zu behandeln? Was ist die Bedingungshierarchie? zeige Beispiele – user3598756

+0

Ich habe das fragliche Arbeitsblatt hier hochgeladen: http://www.filehosting.org/file/details/590480/Book2.xlsx Spalte D ist die Quellspalte, Spalten A und B sind die zufälligen Teilmengen . Soweit spezielle Bedingungen wie Duplikate ... gelten, sollte es niemals Duplikate geben, es sei denn, ein Transect-Name wird falsch eingegeben. In solch einem Szenario ... würde ein Nachrichtenfeld sagen, dass es ein Duplikat gibt, und das Beenden des Subs würde funktionieren, obwohl ich diesen Teil wahrscheinlich selbst herausfinden kann. –

Antwort

0

Ich habe nicht wirklich die Dateien zu sehen, da ich bei der Arbeit bin, aber ich denke, Ihre Tabelle sieht wie folgt aus:

| A | B | C | D | 
| 1 | 3 |  | 1 | 
| 3 | 5 |  | 2 | 
| 2 | 4 |  | 3 | 
|  |  |  | 4 | 
|  |  |  | 5 | 

Ich mag eher einfache Formel basierte Ansätze für das, aber ich könnte dir auch ein VBA-Beispiel geben.

Mit diesem Setup wird vorgeschlagen, SVERWEIS zu verwenden. Sie überprüfen im Grunde, ob der Wert Teil von A ist, Teil von B und dann können Sie den Rest mit Ihrer bedingten Formatierung erledigen.

Also, wenn zusätzliche Spalten kein Problem sind, sondern nur die Lookup verwenden, um eine echte oder falsche Antwort zu erzeugen (für Formel I Fehler entschuldigen, da ich Deutsch Excel-Version verwenden):

=NOT(ISERROR(VLOOKUP(D1,A:A,1,False))) 

Dies wird Ihnen sagen, TRUE, wenn in ALL der Spalte A ein Wert vorhanden ist, der gleich D1 ist. Wenn Sie diese Formel auch für Spalte B verwenden, können Sie Ihre Farbcodierung für Blau und Rot auf diesen beiden basieren.

Für die lila Farbe brauchen Sie nur noch einmal die beiden anderen Ergebnisse zu vergleichen mit einem einfachen AND

Hoffnung, dass klar genug ist und ich habe Ihre Frage richtig gelesen.

Kaz

+0

Vielen Dank für Ihre Antwort Kaschuri!Es gibt ein Detail, das ich in der ursprünglichen Frage nicht gut erklären konnte. Ich hoffe eigentlich, die Formatierung nicht nur auf die Zellen selbst in Spalte D, die übereinstimmen, zu ändern, sondern auch in einer Reihe von Spalten neben Spalte D, die Teil derselben Tabelle sind. –

+0

Ich habe versucht, eine Tabelle ähnlich Ihrem Beispiel hinzugefügt, um Ihnen zu zeigen, was ich meine, aber ich bin mir nicht sicher, ob ich das in Antworten auf Antworten tun kann. Im Grunde, um es wieder zu zerlegen .... Spalte A und B sind beide verschiedene Teilmengen von Spalte D, die ich denke, dass Ihnen klar ist. Spalte C ist leer. Spalte D bis Spalte K ist eine Tabelle mit verschiedenen Eigenschaften, also möchte ich eigentlich, dass die gesamte Zeile von D-K hervorgehoben wird, wenn und wenn etwas in Spalte D mit etwas in Spalte A oder B übereinstimmt. Hoffe, das macht Sinn. Wie würde ich Ihre Formel verwenden, um das zu erreichen? –

+0

Bear mit mir hier ... Ich bin weit mehr vertraut mit Dinge auf die komplizierte Art und Weise, mit VBA, als ich mache ihnen die richtige Art und Weise mit Formeln, so dass ich dies herausfinden ... Ich war in der Lage, Ihre verwenden Formel, um Zelle D bedingt zu formatieren, aber nicht herausgefunden, wie die gleiche Formatierung für den Rest der Tabelle gelten soll, so dass alle Spalten D - K übereinstimmen (auch wenn Spalten NK unterschiedliche Arten von Werten enthalten, so dass sie nicht passen mit Spalten A oder B) –

Verwandte Themen