Simplifier un code VBA
Résolu/Fermé
Mixou04
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019
-
15 nov. 2019 à 09:29
Mixou04 Messages postés 11 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 16 novembre 2019 - 15 nov. 2019 à 15:06
Mixou04 Messages postés 11 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 16 novembre 2019 - 15 nov. 2019 à 15:06
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
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
A voir également:
- Simplifier un code VBA
- Code asci - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Code gta 4 ps4 - Guide
3 réponses
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
15 nov. 2019 à 10:02
15 nov. 2019 à 10:02
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 :
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...
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...
yg_be
Messages postés
23490
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 mars 2025
Ambassadeur
1 570
15 nov. 2019 à 10:15
15 nov. 2019 à 10:15
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
15 nov. 2019 à 11:42
15 nov. 2019 à 11:42
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
23490
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 mars 2025
1 570
>
Mixou04
Messages postés
11
Date d'inscription
vendredi 15 novembre 2019
Statut
Membre
Dernière intervention
16 novembre 2019
Modifié le 15 nov. 2019 à 12:45
Modifié le 15 nov. 2019 à 12:45
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
17257
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 mars 2025
1 713
15 nov. 2019 à 14:22
15 nov. 2019 à 14:22
Salut yg_be,
Sorry de t'avoir oublie t'a leur
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
15 nov. 2019 à 15:06
15 nov. 2019 à 15:06
Super merci pour ton aide ça marche à merveille :)
f894009
Messages postés
17257
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 mars 2025
1 713
15 nov. 2019 à 13:31
15 nov. 2019 à 13:31
Re bonjour Mixou04 ,
Vous avez déjà demande ici et je vous ai repondu. Probleme de mémoire???
https://forums.commentcamarche.net/forum/affich-36314345-comment-faire-plus-simple#p36314475
Vous avez déjà demande ici et je vous ai repondu. Probleme de mémoire???
https://forums.commentcamarche.net/forum/affich-36314345-comment-faire-plus-simple#p36314475
15 nov. 2019 à 10:25
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!