Accueil > Forum > > > > EXCEL - VB - Couleur cellule conditionnelle
EXCEL - VB - Couleur cellule conditionnelle
jeudi 18 décembre 2008 à 11:00:31 |
EXCEL - VB - Couleur cellule conditionnelle

ArnaudFabry
|
Bonjour, Comment récupérer sous VB la couleur d'une cellule EXCEL ayant une mise en forme conditionnelle ? La propriété ci-dessous me donne la couleur d'origine de ma cellule et non la couleur selon la mise en forme conditionnelle. CouleurFond = Sheets("Source").Range("Test").Cells(1).Interior.Color Merci d'avance pour votre aide Arnaud
|
|
jeudi 18 décembre 2008 à 11:19:50 |
Re : EXCEL - VB - Couleur cellule conditionnelle

Calade
|
Bonjour, Il existe une bibliothèque Freeware de fonctions additionnelles pour Excel nommé MoreFunc. Fais une recherche avec ton butineur préféré (au hasard Google) sur MoreFunc. Le fonction qui t'intéresse est XML.LIRE.CELLULE(). Attention la couleur ne doit pas être automatique. Va voir dans l'aide, elle est très bien faîte en français !!! Calade
|
|
jeudi 18 décembre 2008 à 13:21:12 |
Re : EXCEL - VB - Couleur cellule conditionnelle

ArnaudFabry
|
Merci calade,
les fonctions de MoreFunc semblent très intéressantes, malheureusement mon problème se situe dans le code :
Je cherche dans une macro visual basic à récupérer la couleur d'une cellule dépendant d'une mise en forme conditionnelle.
A+
Arnaud
|
|
jeudi 18 décembre 2008 à 14:42:50 |
Re : EXCEL - VB - Couleur cellule conditionnelle

Calade
|
Bonjour, Désolé, j'avais mal lu ton message et zappé le mot VB. Et Redésolé, mais là je sèche, il va falloir quelqu'un de plus doué que moi sous VBA (ce qui ne devrait pas être trop difficile à trouver). Calade
|
|
jeudi 18 décembre 2008 à 23:47:08 |
Re : EXCEL - VB - Couleur cellule conditionnelle

JERCAD
|
Bonsoir! J'ai déja connu ce problème mais sans solution. En effet, on ne peut pas récuperer la couleur d'une cellule EXCEL ayant une mise en forme conditionnelle car la couleur n'est que "visuelle" et sans application de code. En quelque sorte, au niveau code rien ne change pour une conditionnelle c'est juste du maquillage ! La solution: créér une macro ! 
|
|
vendredi 19 décembre 2008 à 11:22:19 |
Re : EXCEL - VB - Couleur cellule conditionnelle

ArnaudFabry
|
Merci Jercad,
Bien content de pas être le seul ... ... mais quelle macro faut-il créer ? Un macro qui refait des mises en forme conditionnelles ?
Arnaud
Arnaud
|
|
vendredi 19 décembre 2008 à 12:59:54 |
Re : EXCEL - VB - Couleur cellule conditionnelle

userrrqi115
|
Hello, J'avais fait quelques test hier soir et en suis arrivé à la même conclusion : pas possible de tester sur la couleur d'un mise en forme conditionnelle. Pour contourner ce problème le mieux est d'effectuer le test sur la condition de la mise en forme conditionnelle. BR USERRRQI115 Simple user Great brain
|
|
vendredi 19 décembre 2008 à 17:12:24 |
Re : EXCEL - VB - Couleur cellule conditionnelle

JERCAD
|
bonjour armaud Tu as tout compris. Il faut que tu réussisses à créer une macro correspondant à une mise en forme conditionnelle. ex: mise en condition conditionnelle: cellule couleur rouge si valeur inférieure à 0 Donc à 'traduire' en vb dans une macro.  Normalement c'est pas difficile. Bonne chance!
|
|
samedi 20 décembre 2008 à 11:26:57 |
Re : EXCEL - VB - Couleur cellule conditionnelle

ArnaudFabry
|
Effectivement Jercad, c'est pas difficie mais pas pour l'utilisateur lambda qui par la suite utilisera le tableau excel ne pourra pas changer la mise en forme conditionnelle sans le faire dans la macro (et la çoincera). Je veux évité d'être trop sollicié pa la suite.
Pour comprendre le contexte : J'ai un tableau excel pour résumer l'avancement de différents projets (1 ligne = 1 projet) Le but est de créer, à partir de ce tableau, une présentation PPT où chaque slide montrera l'avancement d'un projet. J'ai donc crée une macro qui fait le boulot (sauf qu'elle ne recopie pas les couleurs conditionnelles ... vous connaissez la suite)
Je souhaite que cette macro soit totalement transporable pour d'autres besoins (donc sans test dédié à une feuille excel en partiulier) Si besoin, pour ceux que ça interresse, je peux donner le code.
Je creuse toujours le problème
A+
Arnaud
|
|
samedi 20 décembre 2008 à 12:24:52 |
Re : EXCEL - VB - Couleur cellule conditionnelle

nhervagault
|
Salut
Apres une recherche sur internet.
J'ai trouvé le code suivant
J'ai changé dans ce code
oFC.Formula1 vers CInt(Replace(oFC.Formula1, "=", ""))
pour que ca fonctionne sur Excel 2007
Il faut mettre a jour les autres formules.
Et je ne vois pas comment le faire marcher autrement?
Ca indique le numero de la couleur de la cellule courante.
Je laisse aux pro de VBA le soin de le corriger pour mieux gerer le truc.
Sub TestCFColorMacro()
MsgBox CFColor(ActiveCell)
End Sub
'---------------------------------------------------------------------
Public Function CFColor(rng As Range) As Long
'---------------------------------------------------------------------
Dim oFC As FormatCondition
Dim sF1 As String
Dim iRow As Long
Dim iColumn As Long
Dim IsCFMet As Boolean
Set rng = rng(1, 1)
If rng.FormatConditions.Count > 0 Then
For Each oFC In rng.FormatConditions
If oFC.Type = xlCellValue Then
IsCFMet = False
Select Case oFC.Operator
Case xlEqual
IsCFMet = rng.Value = oFC.Formula1
Case xlNotEqual
IsCFMet = rng.Value <> oFC.Formula1
Case xlGreater
IsCFMet = rng.Value > CInt(Replace(oFC.Formula1, "=", "")) 'oFC.Formula1
Case xlGreaterEqual
IsCFMet = rng.Value >= oFC.Formula1
Case xlLess
IsCFMet = rng.Value < oFC.Formula1
Case xlLessEqual
IsCFMet = rng.Value <= oFC.Formula1
IsCFMet = (rng.Value >= oFC.Formula1 And _
rng.Value <= oFC.Formula2)
Case xlNotBetween
IsCFMet = (rng.Value < oFC.Formula1 Or _
rng.Value > oFC.Formula2)
End Select
If IsCFMet Then
CFColor = oFC.Interior.ColorIndex
Exit Function
End If
Else
're-adjust the formula back to the formula that applies
'to the cell as relative formulae adjust to the activecell
With Application
iRow = rng.Row
iColumn = rng.Column
sF1 = .Substitute(oFC.Formula1, "ROW()", iRow)
sF1 = .Substitute(sF1, "COLUMN()", iColumn)
sF1 = .ConvertFormula(sF1, xlA1, xlR1C1)
sF1 = .ConvertFormula(sF1, xlR1C1, xlA1, , rng)
End With
IsCFMet = rng.Parent.Evaluate(sF1)
End If
If IsCFMet Then Exit Function
Next oFC
End If 'rng.FormatConditions.Count > 0
End Function
|
|
Cette discussion est classée dans : vb, couleur, excel, cellule, conditionnelle
Répondre à ce message
Sujets en rapport avec ce message
Couleur cellule excel [ par Florian29 ]
Salut !J'exporte des données depuis un tableau vb vers excell et je voudrais pouvoir mettre une couleur de fond sur les cellules excel (je veux choisi
Excel Vb nombre de cellule en couleur [ par zeurk ]
Bonjour besoin d'1 peu d'aide... Comment en Vb compter des cellules suivant leur couleur.Exemple: Dans une plage A1:D10 je mets 3 cellules quelconque
Excel : couleur dans une cellule (en VB) [ par pcvesoul ]
Bonjour.Je génère plusieurs fichiers "excel" depuis mon programme en VB6.Dans certains cas, je mets une couleur dans les cellules selon la formule sui
formule conditionnelle vb vers Excel [ par trexor ]
Bonjour,j'ai un petit problème en générant une feuille excel à l'aide de vb.net.Je souhaite mettre une formule conditionnelle sur une cellule nommé B
mise en forme conditionnelle cellule excel [ par andlauer ]
Bonjour, je suis débutant en la matière et je cherche à faire une macro (je pense qu'il faut en passer par là) qui permette de changer la couleur de
Tant que sous vb pour excel! AIDEZ-moi!!! [ par Vladsmice ]
Bonjour à tous!J'ai une question vraiment simple et basique.J'ai une liste de 60 cellules où à chaque fois, il n'y a qu'une cellule où il y a des info
Comment redefinir la dimension d'une cellule excel sous vb?? [ par shinrei ]
Bonjour,j'ai un gros soucis de programmtion, je n'arrive pas à modifier les dimensions (largeur et longueur) d'une cellule ou d'une plage excel en VB.
Excel [ par geowi ]
Je suis super amateur en VB et je dois réaliser un travail sur excel pour ce faire j'aimerais que lorsqu'une cellule par exemple A1 est remplie de cou
vb+excel gerer le font de 2 chaines dans une même cellule [ par louly ]
alors pour faire simple j'ai une spreadsheet dans laquel je met qqchose de connue("toto ") et le resultat d'une requete (result!tata) dans une même ce
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
ACCES ODBCACCES ODBC par yannickcottin
Cliquez pour lire la suite par yannickcottin
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|