Simplifier un code VBA [Résolu]

Signaler
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019
-
Mixou04
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019
-
Bonjour,

Je suis débutant dans la programmation VBA et j'essaie de créer un code pour faire la chose suivante:

Je veux comparer la cellule F6 de ma feuille2 avec les cellules A6:A505 de ma feuille1.
Si par exemple la cellule A8 de ma feuille1 est égale à la cellule F6 de ma feuille2 alors je veux insérer le texte "Imprimé" dans la cellule Y8 de ma feuille1

J'ai réussit à faire le code avec la fonction if mais c'est trop long à faire vu la quantité de cellules. Comment puis-je faire plus simple?

Est-ce que quelqu'un peut m'aider? Merci d'avance

9 réponses

Messages postés
3527
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
12 décembre 2019
920
Bonjour,

Y a-t-il une bonne raison(*) à vouloir le faire avec une macro ? Ce que tu veux peut se faire assez simplement avec une formule directement placée dans les cellules Y6:Y505 :
=SI(Feuil2!$F$6=A6;"Imprimé";"")


Xavier

(*) Parmi les bonnes raisons, entre autre : vouloir s'entraîner, ou vouloir que le "imprimé" reste là même si on change la valeur de feuil2!F6...
Mixou04
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019

Bonjour Reivax962,
Merci pour ta réponse. Mon problème est que le texte imprimé doit rester afficher. J’ai créer un bouton sur ma feuille2 qui imprime la page. Afin de savoir quelle page j’ai déjà imprimé le texte « imprimé » dans la feuille1 doit rester!
Messages postés
9119
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
16 décembre 2019
468
bonjour, peux-tu partager ton code, en utilisant les balises de code?
Mixou04
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019

Voilà mon code

Sub Imprimer_1()
'
' Imprimer_1 Macro
'
    If Worksheets("Gamme op?ratoire").Range("F6") = Worksheets("Commandes").Range("A6") Then
        Worksheets("Commandes").Select
        Range("Y6").Select
        ActiveCell.FormulaR1C1 = "Imprim?"
        Sheets("Gamme op?ratoire").Select

    ElseIf Worksheets("Gamme op?ratoire").Range("F6") = Worksheets("Commandes").Range("A7") Then
        Worksheets("Commandes").Select
        Range("Y7").Select
        ActiveCell.FormulaR1C1 = "Imprim?"
        Sheets("Gamme op?ratoire").Select
    
    ElseIf Worksheets("Gamme op?ratoire").Range("F6") = Worksheets("Commandes").Range("A8") Then
        Worksheets("Commandes").Select
        Range("Y8").Select
        ActiveCell.FormulaR1C1 = "Imprim?"
        Sheets("Gamme op?ratoire").Select
        
    ElseIf Worksheets("Gamme op?ratoire").Range("F6") = Worksheets("Commandes").Range("A9") Then
        Worksheets("Commandes").Select
        Range("Y9").Select
        ActiveCell.FormulaR1C1 = "Imprim?"
        Sheets("Gamme op?ratoire").Select
        
   End If
   
End Sub
yg_be
Messages postés
9119
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
16 décembre 2019
468 > Mixou04
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019

suggestion:
Sub Imprimer_1()
'
' Imprimer_1 Macro
'
Dim ligne As Long, f6 As String
f6 = Worksheets("Gamme op?ratoire").[f6]
For ligne = 6 To 9
    If f6 = Worksheets("Commandes").Cells(ligne, "A") Then
        Worksheets("Commandes").Cells(ligne, "Y") = "Imprim?"
        Exit For
    End If
Next ligne
End Sub
f894009
Messages postés
14901
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 décembre 2019
1197
Salut yg_be,
Sorry de t'avoir oublie t'a leur
Mixou04
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019

Super merci pour ton aide ça marche à merveille :)
Messages postés
14901
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 décembre 2019
1197
Re bonjour Mixou04 ,

Vous avez déjà demande ici et je vous ai repondu. Probleme de mémoire???

https://www.commentcamarche.net/forum/affich-36314345-comment-faire-plus-simple#p36314475