Comment obtenir des couleurs fait par une échelle de couleurs de la mise en forme conditionnelle d'Excel 2012 par code VBA

J'ai besoin de savoir: comment obtenir des couleurs fait par une échelle de couleurs de la mise en forme conditionnelle d'Excel 2010 au travers du code VBA. Ces couleurs seront ensuite attribués par VBA comme arrière-plan du graphique selon l'image suivante:

www.lnkm.cz/Slozka/Example.jpg http://www.lnkm.cz/Slozka/Example.jpg

J'ai fait une recherche sur divers sites web et:

  1. La plupart des gens conseils sur la façon de lire la couleur de la mise en forme conditionnelle par la méthode
    <Cell>.FormatConditions(index that is active).Interior.ColorIndex
    mais dans mon cas, ce n'est pas la cause de l'erreur “cet Objet ne gère pas cette propriété ou cette méthode”
  2. Certaines personnes des conseils pour écrire calcul de couleurs (basé sur les cellules de la valeur). J'ai trouvé différentes façons de le faire, mais aucun d'eux ne peut calculer les mêmes couleurs que a été calculé précédemment par excel (même les couleurs comme sur la photo précédente).

Donc je pose la question:

  1. Est directement prêt couleurs à partir de cellules? (ou ces couleurs ne sont pas accessibles pour l'API)
  2. Savez-vous comment calculer les mêmes couleurs que excel de calcul?
  3. Connaissez-vous une autre façon de comment résoudre mon problème?

Je crois qu'elle a à travailler en quelque sorte.

  • Avez-vous un code spécifique de l'échantillon que vous essayez de travailler à travers? Pas tout à fait claire sur ce que vous essayez de faire. Il est facile de lire les couleurs directement à partir de cellules comme oSheet.Range("A1").Interior.Color ou oSheet.Range("A1").Interior.ColorIndex. Peut-être il y a un autre bug dans le code que nous pouvons vous aider avec.
  • Pour votre "Objet" d'une erreur sur le point #1, vous devez définir votre cellule à quelque chose d'abord. Soit faire référence directement (par exemple,ActiveSheet.Range("A1")>.FormatConditions(SomeVariable).Interior.ColorIndex) ou SET comme une variable (par exemple,Set MyCell = ActiveSheet.Range("A1"))
  • Salut Gaffi, merci pour votre réponse, mais je l'ai déjà fait. Je établis par diverses cellules par différents moyens (fonction, les cellules sélectionnées, etc.). Je l'ai mis après .FormatConditions(SomeVariable), d'autres en commande qui était déjà au travail. Donc, je pense que "FormatConditions" ne sais pas "de l'intérieur"
InformationsquelleAutor Jure | 2012-03-19