Problème mise à jour 2 colonnes en vba excel
jrege75
Messages postés
13
Statut
Membre
-
lermite222 Messages postés 9042 Statut Contributeur -
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,
ça fait plusieurs jours que je bloque sur un problème de boucle en langage vba avec le logiciel excel !!!
Je souhaite mettre à jour la colonne 2 de ma feuil1 à partir de la colonne 2 de ma feuil2.
La 1ère colonne des deux feuilles sert de champ clé.
Il est impossible que les lignes de la feuil2 ne soit pas dans la feuil1.
En faite j'arrive seulement à mettre à jour le 1er champ clé de la feuil, après il ne modifie plus rien.
Sub pop()
Dim trouve As Boolean
x = 2 'x ligne de la feuil1
y = 2 'y ligne de la feuil2
Do While Worksheets("feuil1").Cells(x, 1) <> ""
If Worksheets("feuil1").Cells(x, 1) = Worksheets("feuil2").Cells(y, 1) Then
Worksheets("feuil1").Cells(x, 3) = worksheets("feuil2").cells(y,2)
End If
x = x + 1
Loop
End Sub
Pour info, je préfère do while à for car mon fichier n'aura pas forcément à l'avenir le même nombre de lignes.
quelqu'un peut-il m'aider ?
Merci et bonnes fêtes à tous
ça fait plusieurs jours que je bloque sur un problème de boucle en langage vba avec le logiciel excel !!!
Je souhaite mettre à jour la colonne 2 de ma feuil1 à partir de la colonne 2 de ma feuil2.
La 1ère colonne des deux feuilles sert de champ clé.
Il est impossible que les lignes de la feuil2 ne soit pas dans la feuil1.
En faite j'arrive seulement à mettre à jour le 1er champ clé de la feuil, après il ne modifie plus rien.
Sub pop()
Dim trouve As Boolean
x = 2 'x ligne de la feuil1
y = 2 'y ligne de la feuil2
Do While Worksheets("feuil1").Cells(x, 1) <> ""
If Worksheets("feuil1").Cells(x, 1) = Worksheets("feuil2").Cells(y, 1) Then
Worksheets("feuil1").Cells(x, 3) = worksheets("feuil2").cells(y,2)
End If
x = x + 1
Loop
End Sub
Pour info, je préfère do while à for car mon fichier n'aura pas forcément à l'avenir le même nombre de lignes.
quelqu'un peut-il m'aider ?
Merci et bonnes fêtes à tous
A voir également:
- Problème mise à jour 2 colonnes en vba excel
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Mise en forme conditionnelle excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
2 réponses
salut,
ton code n'est pas complet, il manque une boucle. Je n'est pas testé, mais ce code ne devrait pas être loin de la solution :
Sub pop()
Dim trouve As Boolean
x = 2 'x ligne de la feuil1
y = 2 'y ligne de la feuil2
Do While Worksheets("feuil1").Cells(x, 1) <> ""
trouve = False
Do While Worksheets("feuil2").Cells(y, 1) <> "" Or trouve
If Worksheets("feuil1").Cells(x, 1) = Worksheets("feuil2").Cells(y, 1) Then
Worksheets("feuil1").Cells(x, 3) = Worksheets("feuil2").Cells(y, 2)
trouve = True
End If
Loop
x = x + 1
Loop
End Sub
ton code n'est pas complet, il manque une boucle. Je n'est pas testé, mais ce code ne devrait pas être loin de la solution :
Sub pop()
Dim trouve As Boolean
x = 2 'x ligne de la feuil1
y = 2 'y ligne de la feuil2
Do While Worksheets("feuil1").Cells(x, 1) <> ""
trouve = False
Do While Worksheets("feuil2").Cells(y, 1) <> "" Or trouve
If Worksheets("feuil1").Cells(x, 1) = Worksheets("feuil2").Cells(y, 1) Then
Worksheets("feuil1").Cells(x, 3) = Worksheets("feuil2").Cells(y, 2)
trouve = True
End If
Loop
x = x + 1
Loop
End Sub
Par contre ça bloque au niveau du end if et du coup il me trouve plus du tout de champ clé ente les deux colonnes.