Couleur si condition(s)
cl3m_78
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
patty5046 Messages postés 46 Date d'inscription Statut Membre Dernière intervention -
patty5046 Messages postés 46 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
N'ayant pas trouvé mon bonheur sur internet je m'adresse à vous...
Je cherche une macro qui me premettrai de faire ça:
Si la cellule que je viens de renseignée ainsi que celle de droite (imaginons A1 et B1) sont égales à deux autres cellules (qui sont dans les mêmes colonnes, maginons A5 et b5))(dans une liste), alors mettre une couleur de fond rouge et affiché une message box avec un message et effacant la première saisie.
Ce sont en fait deux colonnes une de date et une de créneau horaires, je souhaite que la macro m'affiche si il y a des jour et heure qui sont les mêmes, afin d'éviter des chevauchement.
Ne connaissant même pas les bases, ou très peu , j'ai regardé sur internet mais je n'ai pas trouver mon bonheur j'ai donc essayer ceci, qui ne fonctionne pas sans surprise:
En plus, il me manque la condition de la seconde cellule a droite....bref c'est nul quoi
Mercid'avance pour votre aide.
N'ayant pas trouvé mon bonheur sur internet je m'adresse à vous...
Je cherche une macro qui me premettrai de faire ça:
Si la cellule que je viens de renseignée ainsi que celle de droite (imaginons A1 et B1) sont égales à deux autres cellules (qui sont dans les mêmes colonnes, maginons A5 et b5))(dans une liste), alors mettre une couleur de fond rouge et affiché une message box avec un message et effacant la première saisie.
Ce sont en fait deux colonnes une de date et une de créneau horaires, je souhaite que la macro m'affiche si il y a des jour et heure qui sont les mêmes, afin d'éviter des chevauchement.
Ne connaissant même pas les bases, ou très peu , j'ai regardé sur internet mais je n'ai pas trouver mon bonheur j'ai donc essayer ceci, qui ne fonctionne pas sans surprise:
sub test() If ActiveCell.value = Cell.Range (columns.ActiveCell) Then Active.cell.font.color = 3 and msgbox " message". End if End sub
En plus, il me manque la condition de la seconde cellule a droite....bref c'est nul quoi
Mercid'avance pour votre aide.
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Couleur si condition(s)
- Excel cellule couleur si condition texte - Guide
- Somme si couleur - Guide
- Boite a couleur - Télécharger - Divers Photo & Graphisme
- Pipette couleur word ✓ - Forum Powerpoint
- Récupérer une couleur précise dans 'trame de fond/remplissage' - Forum Word
7 réponses
Merci pour ta réponse,
Néanmoins, même en ne mettant que Active.Cell, il m'ouvre la fenetre de débogage (erreur d'execution '424', object requis", avec en jaune la ligne avec If..... :/
Néanmoins, même en ne mettant que Active.Cell, il m'ouvre la fenetre de débogage (erreur d'execution '424', object requis", avec en jaune la ligne avec If..... :/
Bonjour
Si vous disposez d'excel 2007 ou plus, pourquoi ne pas utiliser le format conditionnel?
-Sélectionnez le tableau de données
-dans le ruban - Accueil - Mise en forme conditionnelle - Règles de mises en surbrillance des cellules - Valeurs en double - Ok
Cdlt
Si vous disposez d'excel 2007 ou plus, pourquoi ne pas utiliser le format conditionnel?
-Sélectionnez le tableau de données
-dans le ruban - Accueil - Mise en forme conditionnelle - Règles de mises en surbrillance des cellules - Valeurs en double - Ok
Cdlt
Bonjour,
Merci pour ta réponse,
Le problème c'est que le fichier que je pilote est censer être ouvert par différentes personnes. Aussi, le fait de juste mettre une couleur n'empêche en rien la saisie d'une date et d'un horaire déjà présent dans la liste.
Avec une macro VBA, et une msgbox, l'utilisateur est obliger d'avoir pris connaissance que le créneau qu'il a choisit est déjà pris.
voilà pourquoi j'ai privilégié l'utilisation d'une macro.
Merci pour ta réponse,
Le problème c'est que le fichier que je pilote est censer être ouvert par différentes personnes. Aussi, le fait de juste mettre une couleur n'empêche en rien la saisie d'une date et d'un horaire déjà présent dans la liste.
Avec une macro VBA, et une msgbox, l'utilisateur est obliger d'avoir pris connaissance que le créneau qu'il a choisit est déjà pris.
voilà pourquoi j'ai privilégié l'utilisation d'une macro.
Bonjour, tu peux associer la mise en forme conditionnelle, avec une macro qui protègerait les cellules remplies.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir
Je galère sur votre problème et ne comprends pas trop votre histoire de couleur et de suppression...Retraitée, il faut me pardonner
Supposons que l'utilisateur frappe en A et en B 2 valeurs identiques qui existent déjà dans le tableau
Quand il se trouve en B, il faudrait pouvoir lancer ce style de macro qui lui indiquerait à quel endroit elles se trouvent :
J'espère que cela aide un peu.
Bon courage
Je galère sur votre problème et ne comprends pas trop votre histoire de couleur et de suppression...Retraitée, il faut me pardonner
Supposons que l'utilisateur frappe en A et en B 2 valeurs identiques qui existent déjà dans le tableau
Quand il se trouve en B, il faudrait pouvoir lancer ce style de macro qui lui indiquerait à quel endroit elles se trouvent :
Sub CherchDoublon() Dim Rg As Range Set Rg = Range("B1:B" & Range("B65536").End(xlUp).Row) ValCherch = ActiveCell.Value With Rg Set Trouve = .Find(What:=ValCherch, LookIn:=xlValues, LookAt:=xlWhole, _ SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False) 'Si Find a trouve If Not Trouve Is Nothing Then Adr = Trouve.Address MsgBox "Valeur existante en " & Adr Set Trouve = .FindNext(Trouve) End If End With End Sub
J'espère que cela aide un peu.
Bon courage
Bonjour
Cela pourrait-il t'aider??
Le 8 car je n'avais que 8 lignes dans mon test
Bon courage
Cela pourrait-il t'aider??
Sub test() For i = 1 To 8 Range("A" & i).Select If Activement.Value = Range("B" & i).Value Then MsgBox Range("B" & i).Value With Selection.Interior .Color = 255 End With MsgBox " attention" End If Next End Sub
Le 8 car je n'avais que 8 lignes dans mon test
Bon courage