Bonjour,
J’aurai besoin de vos services pour modifier un magnifique code VBA que je viens de trouver le forum. (http://www.developpez.net/forums/sho...50#post3261950)
Voici mon besoin : j’ai deux feuilles excel dans un meme classeur,fevrier et Avril (je prend les meme noms que ceux du code). Dans ma feuille fevrier j’ai des références dans la colonne A. J’aimerai verifier pour les références, si elle existe dans le fichier Avril (colonne A) alors je copie les informations (colonne B,C,D) présent du fichier Avril vers le fichier Fevrier dans les colonnes S,T,U, si on ne trouve pas la ref. Ecrire dans le fichier fevrier , ref non trouvé dans colonne S. Par la suite on passe a la ref suivante dans fichier fevrier et on recherche ds avril…idem jusqu'à la fin des ref de fevrier 10000 refs au total.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 Sub traitement() Dim R1 As Range Dim C As Range Worksheets("Fevrier").Select 'boucle sur toutes les ref de Fevrier For Each R1 In Range("A2:A" & Range("A65535").End(xlUp).Row) 'dans les ref d'avril With Worksheets("Avril").Range("A2:A" & Range("A65535").End(xlUp).Row) 'on recherche la ref de fevrier Set C = .Find(R1.Value, LookIn:=xlValues, lookat:=xlWhole) 'si on la trouve If Not C Is Nothing Then firstAddress = C.Address 'dans fevrier col K on ecrit R1.Offset(0, 10) = "NONRATT" Do 'dans avril on ecrit C.Offset(0, 10) = "NONRATT" 'verifier si la ref est une deuxieme fois dans avril Set C = .FindNext(C) Loop While Not C Is Nothing And C.Address <> firstAddress Else 'si on a pas trouvé la ref de fevrier on ecrit R1.Value = "VOIR" End If End With Next End Sub
Exemple concret :
Feuille fevrier
A B … S T U V
1 HD001 toto
2 HD002 titi
3 HD003 tata
Feuille Avril :
A B C … T U V
1 MR07 92000 bizoville
2 HD002 75000 kixville
3 SPIF02 65000 chtiliwood
On prend la ref HD001 on verifie si elle existe dans la feuille avril, elle n’existe pas, on ecrit dans colonne S1 Ref non trouvée.
On prend la ref suivante ds fevrier HD002, elle existe, on copie B2 et C2 dans S2 et T2 de fevrier. On passe a la ref suivante.
Voila. Merci par avance.
Partager