Boucle If avec "AND"
SofSof
-
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un soucis avec une boucle If... La macro a pour objectif de chercher les valeurs identiques entre la ligne 1 de la feuille "Données" et la colonne 2 de la feuille "Param". Si la valeur est identique alors rapporter la valeur de la colonne 3 de la ligne correspondante dans la cellule B5 de la feuille "Données". Ce qui rend la macro un peu complexe c'est que dans la cellule B5 je veux seulement la valeur la plus haute (d'où le "m" dans ma macro).
Ma macro :
Dim m As Long
m = 0
For i = 2 To Last_Ligne
For j = 1 To dercol
If Worksheets("Données").Cells(1, j) = Worksheets("Param").Cells(i, 2) And m < Worksheets("Param").Cells(i, 3) Then
m = Worksheets("Param").Cells(i, 3)
End If
Next
Next
Worksheets("Données").Cells(5, 2) = m
Le problème est que j'ai systématiquement m=0 alors que j'ai bien des valeurs identiques dans les deux feuilles (les valeurs sont vraiment identiques, il n'y a pas d'espace qui pourraient perturber la macro), les noms des feuilles sont aussi corrects.
Merci d'avance de votre aide ! :)
P.S : N'hésitez pas à me poser des questions si mes explications sont flous !
J'ai un soucis avec une boucle If... La macro a pour objectif de chercher les valeurs identiques entre la ligne 1 de la feuille "Données" et la colonne 2 de la feuille "Param". Si la valeur est identique alors rapporter la valeur de la colonne 3 de la ligne correspondante dans la cellule B5 de la feuille "Données". Ce qui rend la macro un peu complexe c'est que dans la cellule B5 je veux seulement la valeur la plus haute (d'où le "m" dans ma macro).
Ma macro :
Dim m As Long
m = 0
For i = 2 To Last_Ligne
For j = 1 To dercol
If Worksheets("Données").Cells(1, j) = Worksheets("Param").Cells(i, 2) And m < Worksheets("Param").Cells(i, 3) Then
m = Worksheets("Param").Cells(i, 3)
End If
Next
Next
Worksheets("Données").Cells(5, 2) = m
Le problème est que j'ai systématiquement m=0 alors que j'ai bien des valeurs identiques dans les deux feuilles (les valeurs sont vraiment identiques, il n'y a pas d'espace qui pourraient perturber la macro), les noms des feuilles sont aussi corrects.
Merci d'avance de votre aide ! :)
P.S : N'hésitez pas à me poser des questions si mes explications sont flous !
A voir également:
- Boucle If avec "AND"
- Spybot search and destroy - Télécharger - Antivirus & Antimalwares
- Find and mount - Télécharger - Récupération de données
- Disk boot failure insert system disk and press enter - Guide
- Nif pull and bear - Forum Consommation & Internet
- Télé samsung s'éteint et se rallume en boucle - Forum Téléviseurs
2 réponses
Bonjour,
C'est votre fichier qu'il faudrait.......
sur ce site:
https://mon-partage.fr/
ou
https://www.cjoint.com/
C'est votre fichier qu'il faudrait.......
sur ce site:
https://mon-partage.fr/
ou
https://www.cjoint.com/
j'ai créé un fichier simplifié avec le premier lien que vous m'avez donné : https://mon-partage.fr/f/ihPsdLxY/
Dites moi si cela fonctionne !
En prenant la colonne B ira bien mieux
Last_Ligne = Worksheets("Param").Range("B65536").End(xlUp).Row