Rechercher dans une colonne
Résolu
jordan.MRC
Messages postés
12
Date d'inscription
Statut
Membre
Dernière intervention
-
jordan.MRC Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
jordan.MRC Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai une colonne de nombre.
Je voudrais savoir si on pouvait faire un code VBA pour faire apparaître un message et colorier la cellule à chaque fois qu'un nombre des différentes cellule dépasse un objectifs.
Exemple: L'objectif est de 100
A1 50
A2 60
A3 80
A4 100
A5 30
A6 20
A7 68
A8 110 (un message devrait s'afficher)
A9 34
A10 67
Merci d'avance pour votre aide.
J'ai une colonne de nombre.
Je voudrais savoir si on pouvait faire un code VBA pour faire apparaître un message et colorier la cellule à chaque fois qu'un nombre des différentes cellule dépasse un objectifs.
Exemple: L'objectif est de 100
A1 50
A2 60
A3 80
A4 100
A5 30
A6 20
A7 68
A8 110 (un message devrait s'afficher)
A9 34
A10 67
Merci d'avance pour votre aide.
A voir également:
- Rechercher dans une colonne
- Déplacer une colonne excel - Guide
- Trier une colonne excel - Guide
- Rechercher ou saisir une url - Guide
- Colonne word - Guide
- Formule somme excel colonne - Guide
2 réponses
Bonjour,
Pour la colorisation, plutôt que de faire du code, tu peux faire une mise en forme conditionnelle.
Pour le message, si tu veux que ça indique le nombre de dépassements de l'objectif, tu peux très bien te faire un
Si tu tiens absolument à ton code : https://www.excel-pratique.com/fr/vba.php
Intéresse-toi aux variables, aux boucles, aux boites de dialogues et aux propriétés et couleurs.
Pour la colorisation, plutôt que de faire du code, tu peux faire une mise en forme conditionnelle.
Pour le message, si tu veux que ça indique le nombre de dépassements de l'objectif, tu peux très bien te faire un
=NB.SI()
Si tu tiens absolument à ton code : https://www.excel-pratique.com/fr/vba.php
Intéresse-toi aux variables, aux boucles, aux boites de dialogues et aux propriétés et couleurs.
Bonjour Jordan, bonjour le forum,
Deux options, au choix :
[Edition]
Bonjour Arkana, nos posts se sont croisés...
À plus,
ThauTheme
Deux options, au choix :
[Edition]
Bonjour Arkana, nos posts se sont croisés...
Sub Macro1() Dim OB As Variant 'déclare la variable OB (OBjectif) Dim O As Worksheet 'déclare la variable O (Onglet) Dim DL As Integer 'déclare la variable DL (Dernière Ligne) deb: 'étiquette 'définit la boite d'entée OB pour l'objectif OB = Application.InputBox("Quel est l'objectif ?", "OBJECTIF", Type:=1) If OB = False Then Exit Sub 'si bouton [Annuler], sort de la procédure Set O = Worksheets("Feuil1") 'définit l'onglet O (à adapter à ton cas) DL = O.Range("A" & Application.Rows.Count).End(xlUp).Row 'définit la dernière ligne éditée de la colonne A de l'onglet O For I = 1 To DL 'boucle sur toutes les lignes de 1 à DL If O.Cells(I, 1).Value > OB Then 'condition : si la valeur de la cellule ligne I, colonne 1 (=A) est supérieure à l'objectif O.Cells(I, 1).Interior.ColorIndex = 3 'colore la cellule de rouge MsgBox "Dépassement de l'objectif !" 'affiche un message End If 'fin de la condition Next I 'prochaine ligne de la boucle End Sub
Sub Macro2() Dim OB As Variant 'déclare la variable OB (OBjectif) Dim O As Worksheet 'déclare la variable O (Onglet) Dim DL As Integer 'déclare la variable DL (Dernière Ligne) Dim MSG As String 'déclare la varaible MSG (MeSsaGe) deb: 'étiquette 'définit la boite d'entée OB pour l'objectif OB = Application.InputBox("Quel est l'objectif ?", "OBJECTIF", Type:=1) If OB = False Then Exit Sub 'si bouton [Annuler], sort de la procédure Set O = Worksheets("Feuil1") 'définit l'onglet O (à adapter à ton cas) DL = O.Range("A" & Application.Rows.Count).End(xlUp).Row 'définit la dernière ligne éditée de la colonne A de l'onglet O For I = 1 To DL 'boucle sur toutes les lignes de 1 à DL If O.Cells(I, 1).Value > OB Then If O.Cells(I, 1).Value > OB Then 'condition : si la valeur de la cellule ligne I, colonne 1 (=A) est supérieure à l'objectif O.Cells(I, 1).Interior.ColorIndex = 3 'colore la cellule de rouge 'définit le message MSG MSG = IIf(MSG = "", O.Cells(I, 1).Address(0, 0), MSG & Chr(10) & O.Cells(I, 1).Address(0, 0)) End If 'fin de la condition Next I 'prochaine ligne de la boucle MsgBox "Dépassement de l'objectif en :" & Chr(10) & MSG 'affiche le message global End Sub
À plus,
ThauTheme
Bonne continuation.