nadine_camarasa
XLDnaute Nouveau
Bonjour à tous,
Je débute sur vba et j'ai un gros blocage que je n'arrive pas à faire faire fonctionner.
Je souhaite effectuer une recherche dans un fichier B d'une valeur entrée dans une cellule du fichier A.
La recherche doit trouver toutes les lignes dont la première colonne commencent par les 5 premiers termes de la cellule du fichier A.
Je les copie après
et cherche dans le fichier A la première ligne vide pour les coller.
J'espère que j'ai assez bien expliqué
En tout cas merci à ceux qui pourront m'aider.
Voici mon text vba:
Sub recherche()
Dim plage As Range, c As Range, chantier As Variant
chantier = Workbooks("C A essai.xlsm").Worksheets("Analyse Chantier").Range("F3").Value
MsgBox chantier
Workbooks.Open Filename:="C:\Documents and Settings\Nadine\Bureau\PFE\BDD.xlsx"
Workbooks("BDD.xlsx").Worksheets("RelevMO").Activate
'Plage de recherche ici B1 à Derniere cellule utilisée de colonne B
Set plage = Range("A1" & ":A" & Range("A65000").End(xlUp).Row)
'Pour chaque cellule de la plage de recherche
For Each c In plage
'je met dans une variable les 5 premiers caractères de la cellule
vval = Left(c.Value, 5)
'Si vval = total alors j'efface la ligne entiere
If vval = chantier Then
c.EntireRow.Copy
Workbooks("C A essai.xlsm").Worksheets("AC").Activate
'Range("A1").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
Do While Not (IsEmpty(ActiveCell))
Selection.Offset(1, 0).Select
Loop
ActiveSheet.Paste
Workbooks("BDD.xlsx").Worksheets("RelevMO").Activate
End If
Next c
End Sub
Je débute sur vba et j'ai un gros blocage que je n'arrive pas à faire faire fonctionner.
Je souhaite effectuer une recherche dans un fichier B d'une valeur entrée dans une cellule du fichier A.
La recherche doit trouver toutes les lignes dont la première colonne commencent par les 5 premiers termes de la cellule du fichier A.
Je les copie après
et cherche dans le fichier A la première ligne vide pour les coller.
J'espère que j'ai assez bien expliqué
En tout cas merci à ceux qui pourront m'aider.
Voici mon text vba:
Sub recherche()
Dim plage As Range, c As Range, chantier As Variant
chantier = Workbooks("C A essai.xlsm").Worksheets("Analyse Chantier").Range("F3").Value
MsgBox chantier
Workbooks.Open Filename:="C:\Documents and Settings\Nadine\Bureau\PFE\BDD.xlsx"
Workbooks("BDD.xlsx").Worksheets("RelevMO").Activate
'Plage de recherche ici B1 à Derniere cellule utilisée de colonne B
Set plage = Range("A1" & ":A" & Range("A65000").End(xlUp).Row)
'Pour chaque cellule de la plage de recherche
For Each c In plage
'je met dans une variable les 5 premiers caractères de la cellule
vval = Left(c.Value, 5)
'Si vval = total alors j'efface la ligne entiere
If vval = chantier Then
c.EntireRow.Copy
Workbooks("C A essai.xlsm").Worksheets("AC").Activate
'Range("A1").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
Do While Not (IsEmpty(ActiveCell))
Selection.Offset(1, 0).Select
Loop
ActiveSheet.Paste
Workbooks("BDD.xlsx").Worksheets("RelevMO").Activate
End If
Next c
End Sub