Re : Chercher une valeur dans un classeur entier
Sub Macro()
Dim nb_article As Integer
Dim i As Integer
Dim name_article As Double
Dim name_sheet As String
nb_article = 565
j = 0
On Error GoTo GestErreur
For i = 0 To nb_article
Workbooks("Classeur2").Activate
name_article = Sheets("Feuil1").Cells(i + 68, 5)
Workbooks("Copie de MacroUG").Activate
Call chercher(name_article)
=> la macro "chercher" (prise sur un post de ce forum):
Public Sub chercher(rech As Double) 'recherche d'une chaine
Dim sel As Object ' cellule trouvée
Dim c As Integer ' colonne
Dim f As Integer ' feuille
Dim l As Long ' ligne
Dim n As Integer ' éléments trouvés
n = 0
For f = 1 To Sheets.Count ' boucle feuilles
With Sheets(f)
l = 3: c = 1
Do ' recherche
Set sel = .Cells.Find(What:=rech, after:=.Cells(l, c), _
LookIn:=xlValues, LookAt:=xlPart, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlNext, MatchCase:=False)
If sel Is Nothing Then Exit Do
If sel.Column <= c And sel.Row <= l Then Exit Do
c = sel.Column
l = sel.Row
n = n + 1 ' élément trouvé : traitement
Loop
End With
Next f
MsgBox n & " éléments trouvés"
End Sub
Next i
GestErreur:
j = j + 1
Sheets("Feuil3").Select
Cells(j, 1) = name_article
Err.Clear
Resume
End Sub
je ne veux pas que la macro "chercher" m'affiche un message d'alerte mais qu'il me copie le nom de l'article dans l'onglet "nouveaux articles" du classeur 1
J'ai joint les deux classeurs.
Merci d'avance !!