texte dans une cellule selon valeur d'un autre cellule

  • Initiateur de la discussion Initiateur de la discussion Jojo973
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Jojo973

XLDnaute Occasionnel
Supporter XLD
Bonjour à tous.
Je souhaiterai faire un avis automatique selon une valeur. J'ai donc utiliser "SELECT CASE". Cela fonctionne pour une cellule. J'aimerai automatiser tout cela et éviter de faire un programme pour chacune des cellules. Mais comment faire ? Mon problème est que les cellules ne sont pas contigues, et que leur position varie selon les lignes. Les seules constantes sont les colonnes. Comment détecter que la cellule "résultat" soit active? Si j'utilise une plage de cellules et l'instruction "FOR EACH", j'aurai un avis pour chacune des lignes.😕
Comment éviter cela merci😎
ps voir le fichier joint !
 

Pièces jointes

Re : texte dans une cellule selon valeur d'un autre cellule

Bonjour cyrikou,

à tester

Code:
Sub avis()
Dim i As Long
For i = 6 To Range("B" & Rows.Count).End(xlUp).Row Step 2
    If Cells(i, 1).Value <> "" And Cells(i, 2).Value <> "" Then
        Select Case Cells(i, 2)
        Case 0.1 To 24.99
        Cells(i, 4) = "Notion non acquise!"
        Case 25 To 39.99
        Cells(i, 4) = "Résultats très moyens !"
        Case 40 To 59.99
        Cells(i, 4) = "Résultats moyens "
        Case 60 To 79.99
        Cells(i, 4) = "C'est bien !"
        Case 80 To 100
        Cells(i, 4) = "C'est très bien"
        End Select
    End If
Next i
End Sub

Edit : Coucou 00 🙂
 
Dernière édition:
Re : texte dans une cellule selon valeur d'un autre cellule

Bonjour, cyrikou, tototiti 😀, le Forum,

Une autre suggestion :

Code:
Option Explicit
Sub Avis()
    Dim i As Long
    Application.ScreenUpdating = False
    For i = Cells(Rows.Count, "b").End(xlUp).Row To 6 Step -1
        If IsNumeric(Range("b" & i)) Then
            Select Case Range("b" & i)
            Case 0.1 To 24.99
                Range("b" & i).Offset(, 2) = "Notion non acquise!"
            Case 25 To 39.99
                Range("b" & i).Offset(, 2) = "Résultats très moyens !"
            Case 40 To 59.99
                Range("b" & i).Offset(, 2) = "Résultats moyens "
            Case 60 To 79.99
                Range("b" & i).Offset(, 2) = "C'est bien !"
            Case 80 To 100
                Range("b" & i).Offset(, 2) = "C'est très bien"
            End Select
        End If
    Next
    Application.ScreenUpdating = True
End Sub

A bientôt 🙂
 
Re : texte dans une cellule selon valeur d'un autre cellule

Bonsoir,

En D6: =avis(B6)

Code:
Function avis(c)
        Select Case c
          Case 0.1 To 24.99
            avis = "Notion non acquise!"
          Case 25 To 39.99
            avis = "Résultats très moyens !"
          Case 40 To 59.99
            avis = "Résultats moyens "
          Case 60 To 79.99
            avis = "C'est bien !"
          Case 80 To 100
           avis = "C'est très bien"
        End Select
End Function

ou

=RECHERCHEV(B6;{0."Nul";25."Très Moyen";50."Moyen";80."Très Bien"};2;VRAI)

ou

=INDEX({"Nul";"TM";"M";"TB"};EQUIV(B6;{0;25;50;80};1))

ou

=RECHERCHEV(B6;Lavis;2;VRAI)

JB
 

Pièces jointes

Dernière édition:
Re : texte dans une cellule selon valeur d'un autre cellule

Bonsoir Boisgontier, gosselien, 🙂
Re,

ou

Code:
=RECHERCHEV(B6;{0."nul";25."tm";40."m";60."tb";80."super"};2)

Edit : Arf pas vu déjà proposé 🙂
Bon ben alors... avec la matrice de Boisgontier

Code:
=DECALER($H$3:$I$3;EQUIV(B6;$H$4:$H$7;1);0) (I:I)
 
Dernière édition:
Re : texte dans une cellule selon valeur d'un autre cellule

Merci à tous, voici une autre question:
comment lancer la macro juste quand on affiche la feuille? c'est à dire que quand je navigue dans le classeur, j'aimerai que la macro s'exécute automatiquement et quand j'accède à la feuilles, les infos ont été mises à jour.
Merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
100
Retour