Il y a actuellement 85 visiteurs
Mardi 13 Avril 2021
accueilactualitésdossierscomparer les prixtélécharger gratuitement vos logicielsoffres d'emploiforum informatique
Connexion
Créer un compte

EXCEL : Mise en forme conditionnelle ou MACRO ??

Un nouveau programme qui ne fonctionne pas sur votre matériel informatique ? un message d'erreur venant d'un de vos logiciels ? Une mise à jour bloque? Besoin d'aide ? Posez vos questions sur ce forum d'entraide !

EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 07 Nov 2012 16:53

Bonjour,

Je ne sais pas si j'ai posté au bon endroit ??? mais j'ai pas vu mieux !

Voila la journée que je me prends la tete avec excel et j'ai beau avoir trouvé quelques trucs, je n'ai pas réussi à tout solutionner !!

Je cherche à faire une mise en forme conditionnelle du style : si j'ai telle cellule colorée en jaune alors je mets tel message dans telle cellule.
La mise en forme conditionnelle (MFC) d'Excel ne permet que des conditions chiffrées (égalité, supériorité, infériorité) ou de message bien précis dans les cellules mais en aucun cas des conditions sur les cellules colorées. (La coloration de la cellule n'est que la résultante de la condition)

J'ai alors réalisé une macro qui permet de déterminer la couleur d'une cellule "couleurcellule()".
D'ailleurs si j'utilise la formule SI((couleurcellule(A1)=3;"ok";"faux") sur mon classeur, ca marche super
Par contre si j'utilise cette condition "couleurcellule()" dans le champ formule de la boite de dialogue 'mise en forme conditionnelle' rien ne se passe !!

IDEALEMENT je souhaiterais pouvoir créer une formule/macro qui stipule "colorer telle cellule ou telle plage avec telle couleur" :
nomdelaformule(plage;index couleur)

Avez vous une solution, je suis désespérée !

Merci à vous
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 


Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 08 Nov 2012 10:35

Bonjour,

De tête et sans pouvoir tester, il me semble que tu dois déclarer ta fonction VBA en 'Public' pour qu'elle soit visible depuis le classeur.
Image
Avatar de l'utilisateur
RobinSG
Moderateur
Moderateur
 
Messages: 1514
Inscription: 29 Juin 2004 14:26
Localisation: Atys
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 08 Nov 2012 16:06

Bonjour et merci pour ta réponse mais oupssss .... je ne comprends pas trop ce que tu me dis :oops:

Pour le moment j'ai fait ces deux 'macro' (que j'ai trouvé sur le net mais qui marche nickel !) :
Code: Tout sélectionner
Function COULCELL(c As Range)
COULCELL = c.Interior.ColorIndex
End Function

Code: Tout sélectionner
Function NBCOULCELL(Plage As Range, Couleur As Integer) As Long
Dim c As Range

NBCOULCELL = 0
For Each c In Plage
If c.Interior.ColorIndex = Couleur Then
NBCOULCELL = NBCOULCELL + 1
End If
Next c

End Function


Et j'aimerai l'équivalent qui stipule "colorer telle cellule ou telle plage avec telle couleur" :
nomdelaformule(plage;index couleur)


Est ce possible car je n'ai rien trouvé sur le net !

Merci
Dernière édition par RobinSG le 08 Nov 2012 17:48, édité 1 fois.
Raison: Ajout balises 'code'
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 08 Nov 2012 17:53

En fait, si tu as besoin d'appeler NBCOULCELL depuis les cellules de ta feuille Excel, ajoute Public devant la déclaration de la fonction.

Ex.
Code: Tout sélectionner
Public Function NBCOULCELL(Plage As Range, Couleur As Integer) As Long
    Dim c As Range

    NBCOULCELL = 0
    For Each c In Plage
      If c.Interior.ColorIndex = Couleur Then
        NBCOULCELL = NBCOULCELL + 1
      End If
    Next c

End Function


PS : utilises les balises "Code" pour déposer du code :wink:
Image
Avatar de l'utilisateur
RobinSG
Moderateur
Moderateur
 
Messages: 1514
Inscription: 29 Juin 2004 14:26
Localisation: Atys
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 08 Nov 2012 21:43

Je suis désolée mais je ne comprends pas ce que ça change .... Est ce que ça resoud mon soucis de colorer une cellule ??

Désolée pour les balises je ne savais pas ... D'autant que je débute dans tout ce qui est code, macro, fonction ....

EDIT : est de que le public permettra de pouvoir utiliser la formule dans le champ formule de la mise en firme conditionnelle ? Je comprends peut être :oops:
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 09 Nov 2012 09:36

Bonjour,

En effet ça marche !!
Merci beaucoup.

Par contre j'aimerai que ces fonctions soient utilisables sur tous les classeurs excel que j'ouvre et ce n'est pas le cas (uniquement sur le classeur ou j'ai créé le code). Y a t il un moyen ?
Merci
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 09 Nov 2012 16:27

Lorsque tu enregistres une nouvelle macro, Excel te propose de l'enregistrer soit dans le classeur courant, soit dans le "classeur de macros personnelles".
En choisissant cette dernière option, un fichier est créé dans un répertoire particulier qui contient des classeurs ouvert automatiquement au lancement d'Excel.
Sur XP : C:\Documents and Settings\{{Nom d'utilisateur}}\Application Data\Microsoft\Excel\XLSTART

Via l'éditeur de VBA (Alt + F11) tu déplaces tes fonctions de ton classeur vers le classeur de macros personnelles.
Image
Avatar de l'utilisateur
RobinSG
Moderateur
Moderateur
 
Messages: 1514
Inscription: 29 Juin 2004 14:26
Localisation: Atys
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 11 Nov 2012 16:19

Bonjour
Merci bcp pour ton aide mais je ne trouve pas le "classeur de macros personnelles".
:oops:

Je suis vraiment trop nulle !
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 12 Nov 2012 11:42

Bonjour,

Tu as bien fais "enregistrer une nouvelle macro" ?
Car c'est à ce moment, qu'il te demande à quel endroit sauvegarder la macro (une fenêtre où tu peux spécifier le nom de la macro et en bas, dans une liste déroulante, où l'enregistrer)

Pour éventuellement trouver des captures d'écran, quelle est la version d'Office ?
Image
Avatar de l'utilisateur
RobinSG
Moderateur
Moderateur
 
Messages: 1514
Inscription: 29 Juin 2004 14:26
Localisation: Atys
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 12 Nov 2012 12:19

Bonjour Robin,

Je suis vraiment désolée d'être aussi nulle !!

En fait, j'ai juste copié mes code de formule dans 'Visual Basic' et je retrourne dans mon excel après. Les formules fonctionnent bien dans ces classeurs là.
[Pour info j'ai la version 2010]

Dans l'onglet 'Développeur' je vois bien le bouton 'Enregistrer une macro', j'ai essayé en mettant comme nom mes intitulés de formule par exemple NBCOULCELL et enregistrer la macro dans le classeur de macro personnelle mais ca ne fonctionne pas quand j'ouvre un nouveau excel.

J'y suis presque je pense ...

Merci à toi pour ta patience et ton temps !
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 13 Nov 2012 10:11

J'ai une version d'essai d'Office 2007, je te fais des captures d'écran dès que possible.
Image
Avatar de l'utilisateur
RobinSG
Moderateur
Moderateur
 
Messages: 1514
Inscription: 29 Juin 2004 14:26
Localisation: Atys
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 13 Nov 2012 12:07

Un grand merci ....
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 15 Nov 2012 11:37

Me revoilà !

Voici donc, en images, la procédure pour arriver sur le classeur de macros personnelles (création automatique si celui-ci n'existe pas)

Dans "Affichage / Macros", sélectionne "Enregistrer une macro..."
Image

Dans la fenêtre qui s'ouvre, sélectionne "Classeur de macros personnelles" dans la liste déroulante "Enregistrer la macro dans :"
Image

Clic sur une cellule de ta feuille Excel.

Puis de nouveau dans "Affichage / Macros", sélectionne "Arrêter l'enregistrement".
Image

Appuie sur "Alt + F11" pour faire apparaitre l'éditeur VBA.
Image

La fausse macro créée apparait dans un projet VBA associé au fichier "PERSONAL.XLSB".

Ce fichier est créé automatiquement si il n'existe pas déjà et est positionné dans un répertoire spécial contenant des fichiers ouverts au lancement d'Excel.

Remarque : Si tu ouvres 2 fois Excel (pas 2 classeurs mais vraiment 2 Excel), tu auras un message d'erreur disant que le fichier "PERSONAL.XLSB" est déjà ouvert, mais c'est pas grave, il suffit de prendre lecture seule.
Image
Avatar de l'utilisateur
RobinSG
Moderateur
Moderateur
 
Messages: 1514
Inscription: 29 Juin 2004 14:26
Localisation: Atys
 

Re: EXCEL : Mise en forme conditionnelle ou MACRO ??

Message le 15 Nov 2012 13:38

Bonjour,

Ca marche !! ... presque ....

Mes fonctions sont enregistrées et qd j'ouvre un nouveau excel, elles sont là (par contre le nom c'est PERSONAL.XLSB!COULCELL( !) MERCI MERCI MERCI ...

D'ailleurs si j'ai bien compris maintenant si je veux enregistrer de nouvelles fonctions il faudra que je les ajoute toujours aux modules dans VBAProject (PERSONAL.XLSB) ?

Par contre mon petit soucis c'est que je ne peux pas les 'appeler' dans le champ de formule de la mise en forme conditionnelle ! (et j'ai mis Public devant !!)
Alors que dans des conditions si(), ca fonctionne et que sur mon fichier de base ou elles étaient dans le classeur uniquement ca marche aussi dans les mises en forme conditionnelles !
Je comprends pas trop !

Je vais faire mes petits essais !

Merci dans tous les cas !
angeldust
Sous Expert(e)
Sous Expert(e)
 
Messages: 80
Inscription: 13 Nov 2003 17:43
Localisation: Lyon (mais Toulousaine de coeur !!)
 



Sujets similaires

Message mise en veille
Bonjour,Je m'appercois que mon pc ne se mets pas en veille comme d’habitude y a t'il une raison ?Je coche toujours la case m’avertir lorsque un réponse est postée et pourtant je ne reçois JAMAIS de mails.Cdt
Réponses: 0

Message Mise à jour sur 32 Go de " disque dur "
Un petit tutoriel pour aider à faire les Maj sur ces " scogneugneu " de PC ayant 32 Go de "disque dur" Déjà ce n'est pas un disque dur mais de la mémoire flash comme une clé usb, ce qui explique aussi qu'il n'y a pas de système de refroidissement sur ces mini-machines et le gain ...
Réponses: 5

Message échec mise a jour windows 10
Bonjour,La mise a jour de windows 10 semble impossible.Une succession de code erreur, la derniere en date:2020-04 Mise à jour cumulative pour Windows 10 Version 1903 pour les systèmes x64 (KB4549951) - Erreur 0xca00a000merci pour votre aidewindows 10 famille, version 1903HP spectre x360
Réponses: 8

Message pb lors de mise à niveau de W7=>W10
Bonjour à tous,J'espère que vous allez bien. Alors, confinement oblige j'ai ressorti un vieux PC portable du grenier. Il tourne sous W7 éditions familiale 64 bits. Je télécharge l'outil de mise à niveau, ça redémarre mais j'ai le code d'erreur "0xC1900101 ? 0x40017" après quelques recherch ...
Réponses: 2

Message Mise à jour composant PC
Bonjour tout le mondeJ?espère que tout le monde va bien.Les détails de configuration de Flight Simulator 2020 ayant été annoncés, il est temps de faire un petit update de ma machine. Actuellement j'ai : - un processeur Intel I5 2500k 4 Cores 3.3 Ghz - 8Gb Ram G-Skills DDR3 - Une al ...
Réponses: 4

Message mise en réseau de pc avec différents wi fi
Bonjour,pour diverses raisons, mon pc de bureau va devoir rester chez une connaissance avec accès wi-fi. J'aimerais pouvoir accéder aux fichiers de ce pc à distance avec un autre pc un peu à la manière d'un NAS. Les 2 pc seront donc sur des réseaux wi fi différents donc la mise en réseau sera ineffi ...
Réponses: 1


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 22 invités


.: Nous contacter :: Flux RSS :: Données personnelles :.