Problème .Find
Bonjour à tous,
Voila je me permet de rédiger un post car j'ai un souci avec ma recherche.
J'effectue une recherche de date dans une colonne avec la fonction "find" mais voilà, dans cette colonne j'ai plusieurs fois la même date ce qui est normal mais j'aimerai que ma recherche "find" sélectionne la première et non la dernière date trouvée dans ma colonne.
Je joins mon code si vous avez des modifications ou des solutions à m'apporter je suis preneur.
Merci à vous tous.
Private Sub CommandButton1_Click()
Dim i As Byte
Dim Dae1 As Date
Dim Recherche As Range
Dim ligne As Integer
Dim col As Integer
Range("D6") = TextBox2
Dae1 = TextBox1
MsgBox TextBox1
Workbooks.Open "C:\Users\Pierre\Desktop\SYNTHESE.xlsx"
Worksheets("Feuil1").Select
Set Recherche = Range("E5:E3").Find(Dae1, lookat:=xlWhole)
If Recherche Is Nothing Then
MsgBox "pas trouvé"
Else
ligne = Recherche.Row
col = Recherche.Column
'''''''''''''''''''''''' Premier Tableau ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Date
ThisWorkbook.Sheets("Feuil1").Cells("F18") = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, col)
'Nom
ThisWorkbook.Sheets("Feuil1").Range("B18").Value = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, 1).Value
'Date de controle
ThisWorkbook.Sheets("Feuil1").Range("F18").Value = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, col).Value
'Heure de controle
' ThisWorkbook.Sheets("Feuil1").Range("F19").Value = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, 6).Value
'Préforme
ThisWorkbook.Sheets("Feuil1").Range("C20").Value = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, 4).Value
'Bouchon couleur
ThisWorkbook.Sheets("Feuil1").Range("D21").Value = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, 3).Value
'Bouchon Fournisseur
ThisWorkbook.Sheets("Feuil1").Range("C21").Value = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, 2).Value
'Couple décollment du bouchon 1 à 10
For i = 8 To 17
ThisWorkbook.Sheets("Feuil1").Cells(i + 16, 2) = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, i)
Next i
'Couple décollment du bouchon 10 à 20
For i = 18 To 27
ThisWorkbook.Sheets("Feuil1").Cells(i + 6, 5) = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, i)
Next i
'Couple Rupture bague 1 à 10
For i = 28 To 37
ThisWorkbook.Sheets("Feuil1").Cells(i - 4, 3) = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, i)
Next i
'Couple Rupture bague 10 à 20
For i = 38 To 47
ThisWorkbook.Sheets("Feuil1").Cells(i - 14, 6) = Workbooks("SYNTHESE.xlsx").Sheets("Feuil1").Cells(ligne, i)
Next i
End If
If Cells(ligne + 1, col) = Dae1 Then
'(Je refais la même chose mais en remplissant avec la ligne d'après)
End iF
End Sub
Bonjour JIGO36.
Je t'invite à lire l'article suivant, et de te pencher sur searchdirection.
https://msdn.microsoft.com/en-us/vba/excel-vba/articles/range-find-method-excel
Bonjour thebenoit59,
Merci beaucoup