Mise en forme conditionnelle [EXCEL + VBA ] - Logiciels - Windows & Software
Marsh Posté le 20-10-2006 à 21:12:36
est-ce qu'il ne faut pas que tu utilises le nom des fonctions dans les version GB ?
remplace ENT par INT (je crois) et somme par SUM (ça j'en suis sûr), pour voir
Marsh Posté le 21-10-2006 à 10:59:49
merci de ta réponse.. ca ne change rien que j'essaye SUM ou INT ou les DEUX ..
si ce n'est que au lien de mal colorier ca ne colorie rien du tout..
Marsh Posté le 21-10-2006 à 12:54:46
j'avais pas vu que tu as nb.si qu'il faudrait aussi remplacer par countif, je pense.
la gestion des pack de langue dans excel est un peu compliquée : les formules dans les documents eset dans la langue de l'utilisateur mais c'est uniquement en anglais dans VBA.
Quand tu entres cette formule dans une cellule (et pas comme format conditionnel) par le VBA, est-ce qu'il te retourne un vrai/faux, ou bien un message d'erreur ?
Marsh Posté le 21-10-2006 à 13:52:38
je vais essayer ce que tu me demande :
je change donc : SUM et IN et COUNTIF
quand je mets la formule "originale " dans la cellule ca me retourne VRAI.
si je change avec SUM par exemple ca me retourne : #NOM?
si je mets cette formule dans ma macro aucun effet :
With Range("A1:H50" )
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(INT(SUM(1/countif($B$8:$B8;$B$8:$B8)));2)=1"
.FormatConditions(1).Interior.ColorIndex = 17
End With
merci encore de ton aide...
Marsh Posté le 22-10-2006 à 15:23:09
flclsd a écrit : je vais essayer ce que tu me demande : |
je ne parlais pas d'entrer la formule à la main mais de la faire entrer par VBA (pas comme format conditionnel.
Un truc par exemple : enregistre comme macro le fait d'entrer manuellement ta formule originale dans la cellule et va voir le code généré : tu devrais retrouver la formule "traduite" dans l'editeur VBA
Marsh Posté le 23-10-2006 à 10:14:22
Bon j'y ai cru.. mais je n'y arrive toujours pas
pour rappel voici ma formule originale :
=MOD(ENT(SOMME(1/NB.SI($B$8:$B8;$B$8:$B8)));2)=1
voici la formule que j'obtiens quand j'enregistre avec une macro et en tapant la formule du dessus
=MOD(INT(SUM(1/COUNTIF(R8C2:R[-17]C2,R8C2:R[-17]C2))),2)=1
quand je mais cette formule dans ma macro, aucun effet. Et quand j'essaye de la copier en passant par format-mise en forme.. j'ai une erreur
j'ai donc essayer une combinaison des deux :
=MOD(INT(SUM(1/COUNTIF($B$8:$B8;$B$8:$B8)));2)=1
et la ca ne marche toujours pas. la formule me retourne #NOM?
En esperant que tu ai encore une piste.. merci
Marsh Posté le 24-10-2006 à 21:02:34
J'ai du mal à comprendre ta formule. J'ai copié quelques données à la con sur une feuille, collé la formule que tu donnes et ça ne m'indique TRUE que pour la première occurence d'une valeur dans la colonne BB
tu es sûr que ta formule fonctionne correctement ?
et si tu utilises la fonction (=EST.PAIR(LIGNE(B1)) ou =EST.PAIR(LIGNE(B1)+1), si tu veux colorier une ligne sur 2 ?
en anglais : =ISEVEN(ROW(B1))
Marsh Posté le 24-10-2006 à 22:05:54
la formule est bonne tu peux regarder le classeur ci joint en exemple.. et tu verras vraiment ce que je veux dire. merci d'avance.
PS : c'est pas une ligne sur deux que je veux, mais un groupe de données sur deux..
http://marie.daprato.free.fr/test.xls
Marsh Posté le 24-10-2006 à 22:50:33
ben j'arrive même pas à comprendre pourquoi son truc marche
en collant la formule utilisée pour le formattage conditionnel dans la feuille, les résultats ne me paraissent pas cohérents.
Et je n'arrive pas à reproduire le truc en agrandissant le tableau à d'autres valeurs
tu as trouvé ça sur quel site ?
Marsh Posté le 25-10-2006 à 07:19:25
sur http://www.excelabo.net
mais la fonction recherche du site déconne un peu. je te joins le fichier excel d'exemple tu comprendras surement comment il fait sa forumle. c'est expliquer dedans.
http://cptflam.celeonet.fr/site_we [...] emples.xls
Marsh Posté le 27-10-2006 à 18:00:56
Bonjour,
Je n'ai pas tout compris, mais la formule entrée est bonne, en effet, si , après lancement de ta macro, tu surlignes ta zone de format conditionnel puis affiches le format et fais ok, la mise en place se fait
bizzarre (bug ou option?)
Cordialement
Marsh Posté le 28-10-2006 à 08:06:25
Bonjour,
Si tu as la possibilité de mettre deux zones cachées, je t'envoie un xls
http://cjoint.com/?kCiczE1iXs
Cordialement
Marsh Posté le 20-10-2006 à 14:20:05
Salut à vous tous
je n'arrive pas à trouver le pourquoi du comment ma macro ne marche pas:
je m'explique :
je veux colorier un groupe sur deux par ex :
aaaa --------- rererseres - re re -r
aaaa --------- refsdgsdgdg - f sfsd fsf -
fvfvf ---------f fsd fsd fsdf s- fs fsf s- fs
tope -------- fsd fgsd - gsdf gsd- gsfd
tope --------- fsd fsd s
l'idée c'est de colorier le groupe aaaa puis le groupe tope
j'ai trouver ceci sur le net et ca marche quand je passe par format/mise en forme conditionelle
mais je voudrais le faire par macro j'ai donc fait ceci :
et la ca ne marche plus, ca me colorie toute la page..
si je reselectionne la plage A1:H50 et que je retourne dans format/mise en forme condio..
ma formule est bien inscrite, je clique sur ok et ca marche
mais je n'arive pas à le faire avec la macro.
merci d'avance de votre aide précieuse.