Excel VBA Fonction pour Renvoyer True ou False en fonction de la Cellule de Couleurs d'arrière-plan dans une Gamme

Je garde une feuille de calcul de mon temps à travailler et quand je l'ai rencontrer et de s'attendre à répondre à certaines étapes. Les données (dates) est stocké de gauche à droite et de chaque projet a sa propre ligne. Les jalons sont permantely ensemble, et occupent la Plage(O:AA). Mes données sont codés en couleurs, comme le Vert (Complet), Orange(date Limite), Bleu(Pas de travail), Rouge(Non applicable).

Ce que je voudrais faire est d'écrire une fonction qui permettrait de vérifier si une cellule contient une orange couleur d'arrière-plan(Couleur indice 6) et le retour d'un VRAI ou FAUX sur cette base. Fondamentalement, je veux rassembler toutes les échéances dans toutes les colonnes. Finalement, je voudrais intégrer une date de vérifier ainsi donc, je peux voir les échéances approchent.

Function ScanForColor(Dates As Range) as Boolean
    If ScanForColor.Interior.ColorIndex = 6 Then
        ScanForColor = True
    Else
        ScanForColor = False
End Function

Je voudrais appeler la fonction dans une cellule comme =ScanForColor(O3:AA3) et je vais avoir l'ScanForColor fonction dans la colonne AB pour contenir les valeurs pour le filtrage du document.

Ne serait-il pas plus facile d'entrer dans l'un des quatre codes dans chaque cellule à la place? De cette façon, vous pouvez utiliser les classeur formules pour faire de l'agrégation. Vous pouvez varier la couleur d'arrière-plan à l'aide de la mise en forme conditionnelle -- formats conditionnels pour les trois états, et la valeur par défaut de la cellule de la couleur pour le quatrième.

OriginalL'auteur Ryan B | 2010-07-28