Comparaison de deux plages de données
Bonjour j'ai créé cette macro assez simple pour comparer une colonne (S) dans une feuille à une autre colonne (A) dans une autre feuille, mon but est lorsque la valeur de la colonne S se trouve dans la colonne A , dans une colonne de la premiere feuille mettre un blanc " " si elle n'y est pas mettre la valeur de la colonne S
Voici mon code, est-ce que quelqu'un peut m'aider svp
Sub Macro1()
Dim i As Integer
i = 1
While i < 5000
If Worksheets("Feuil1").Range("S" + CStr(i)).Value = Worksheets("OS").Range("A" + CStr(i)).Value Then
Worksheets("Feuil1").Activate
Worksheets("Feuil1").Range("V" + CStr(i)).Value = " "
Else: Worksheets("Feuil1").Range("V" + CStr(i)).Value = Worksheets("Feuil1").Range("S" + CStr(i)).Value
End If
i = i + 1
Wend
End Sub
Bonjour,
Quelle aide attends tu sur ce forum ? Ton code m'a l'air d'avoir de bonnes bases, il ne fonctionne pas ? Voilà une version simplifiée :
Sub Macro1()
Dim i As Integer
With Worksheets("Feuil1")
For i = 1 To 5000
If .Range("S" & i) = Worksheets("OS").Range("A" & i) Then
.Range("V" & i) = ""
Else
.Range("V" & i) = .Range("S" & i)
End If
Next i
End With
End SubWith Machin permet d'éviter de répéter Machin plusieurs fois, tout ce qui commence par un "." s'y réfère
Range("Truc").Value , la propriété value est implicite (on parle de ça si rien n'est précisé)
Pour optimiser davantage, il faudrait remplacer 5000 par une instruction qui détermine la dernière ligne complétée, ce qui évite de parcourir inutilement des lignes vides.
Salut, merci pour ta réponse j'ai finalement enregistré une macro ou j'utilise un recherchev
Sinon j'ai un autre problème si ça ne te dérange pas de m'aider à le résoudre :
c'est un peu compliqué et je ne sais pas comment m'y prendre ( je débute un peu en VB )
Je t'explique, la j'ai mis un fichier joint
Dans ce fichier j'ai 2 feuilles : 1 feuille avec un TCD
il y'a des matricules qui identifient des personnes, le mois, l'OS qui est un projet sur lequel ils travaillent et le pourcentage qui correspond à du temps utilisé
Dans la feuille 2 j'ai des matricules qui se trouvent dans la feuille 1, le mois, Des OS qui sont d'autres projets autres que ceux que les personnes ont dans la feuille 1 et un % qui correspond à du temps qui sera consacré à ces OS (projets) parmi le temps restant dans la feuille 1 et ou il n'y a pas d'OS mais du vide
Typiquement je te donne un exemple :
La personne 245693 a 89% de temps restant, dans l'autre feuille cette personne doit passer 50% de son temps qui reste ( 89%) sur l'OS "YENJDVVRR " et ce qui reste ( 89 - 50 = 39) sera dans du vide
Comment faire pour implémenter ça dans un nouveau tableau qui sera fait à partir de ces 2 bases de données, je suis complétement bloqué :/
Merci beaucoup d'avance