2016-08-08 9 views
-1

Ich habe ein Arbeitsblatt bedingt formatiert, um die Farbe von Zellen zu ändern, wenn die Werte fehlerhaft sind. Dies dient der Datenüberprüfung, bei der der Benutzer große Datenmengen auf einmal in das Arbeitsblatt ausschneiden und einfügen kann.Zelle mit bedingter Formatierung suchen

Ich möchte ein Makro schreiben (das ich mit einer Schaltfläche verknüpfen werde), um zu finden und zur ersten Zelle mit bedingter Formatierung zu gehen, dann die nächste usw. Bisher kein Glück. Wenn dies letztendlich nicht möglich ist, kann ich die bedingte Formatierung einfach entfernen und eine Makrofarbe für die Zelle ändern, damit sie mit VBA leichter erkannt werden kann.

ich erkennen kann, wenn es mit

Wenn ActiveCell.DisplayFormat.Interior.Color <> 16777215

aber hat Probleme legt es in einen Fund Unter jeder bedingte Formatierung ist.

Um genauer zu sein, Spalten A - AF haben Werte und sind rot formatiert, wenn sie Bedingungen nicht erfüllen. Ich möchte ein Duplikat der Schaltfläche Suchen, aber für die bedingte Formatierung. Hat jemand irgendwelche Vorschläge. Ich habe ähnliche Fragen gesehen, aber sie scheinen nach Zählungen oder Summen zu fragen, und das ist nicht wirklich das, was ich brauche. Danke im Voraus.

+1

Verwenden Sie nicht das [Makros] -Tag für Excel/VBA-Makrofragen. Seine Tag-Info besagt ausdrücklich: '* Nicht für MS-OFFICE/VBA/Makro-Sprachen. Benutze stattdessen die entsprechenden Tags. * ' –

+1

Danke Alex, ich entschuldige mich und werde das in Zukunft nicht mehr als Tag verwenden. –

+0

@Matthew Ingle ... dumme Frage, aber können Sie sie nicht einfach finden, indem Sie auf das Blatt schauen, ist das nicht die bedingte Formatierung? Wenn Sie nun alle diese Zellen in ein Array einfügen möchten, benötigen Sie möglicherweise Hilfe. – dinotom

Antwort

0

Verwenden Sie die Funktion "Gehe zu Spezial" in Excel.

Klicken Sie auf der Multifunktionsleiste auf Suchen und auswählen> Gehe zu Spezial.

Wählen Sie dann die Option für bedingte Formate. Klicken Sie auf OK und alle Zellen mit bedingten Formaten werden ausgewählt.

1

Hier ist eine Funktion, die ein Array von Zellenadressen zurückgibt, die bedingt mit hellrotem Hintergrund formatiert wurden. Bearbeiten Sie, um Ihrem Zweck zu entsprechen.

Public Function FindConditionals() As Variant 
    Dim ws As Worksheet, cCell As Range, cntr As Integer 
    Dim formattedCells(100) As Variant ' I would used the number of cells in used range here 
    Set ws = ActiveSheet 
    cntr = 1 

    For Each cCell In ws.UsedRange 
     If cCell.DisplayFormat.Interior.Color = 13551615 Then ' put your own color in 
      formattedCells(cntr) = cCell.Address 
      cntr = cntr + 1 
     End If 
    Next cCell 
    FindConditionals = formattedCells 
End Function 
Verwandte Themen