Erreur 91 sur méthode find

rpn

XLDnaute Nouveau
Bonjour à tous.

Excusez moi, mais j'ai un soucis sur ma Sub excel.
Cette sub à pour objectif d'aller chercher la date issue d'une liste présente en (C2) dans la plage de donnée d'un autre onglet (Entre B3 et une ligne dependant du tableau) et de me retourner le numéro de ligne ou cette valeur est trouvée.

Cependant, cette sub me renvoie l'erreur 91 pour la recherche de : ligdata1.

Quelqu'un peu il m'aider?
Sub remplissageTabbord()
'déclaration des variables
Dim WSSource As Worksheet, WSCible As Worksheet
Dim ligmaxdata As Integer
Dim ligdata1 As Integer
Dim ligdata2 As Integer

Dim i As Integer
Dim k As Long
Dim l As Long

'déclaration des pages sources et cibles
With ThisWorkbook
Set WSSource = Worksheets("Stockage datas")
Set WSCible = Worksheets("Tableau de bord")
End With

'messages d'erreurs
If Cells(2, 3) = "" Then
MsgBox "Veuillez selectionner des dates valides"
Exit Sub
End If
If Cells(2, 5) = "" Then
MsgBox "Veuillez selectionner des dates valides"
Exit Sub
End If
If Cells(2, 5) <= Cells(2, 3) Then
MsgBox "Veuillez selectionner des dates valides"
Exit Sub
End If

'recherche dernière ligne de données
ligmaxdata = WSSource.Columns(1).Find("", WSSource.Range("A3"), , , xlByRows).Row

'Recherche de l'index de ligne correspondant à C2
ligdata1 = WSSource.Columns(2).Find(WSCible.Range("C2"), WSSource.Range("b3"), , , xlByRows).Row

'test renvoi du numero de ligne
MsgBox " data1 " & ligdata1

'Recherche de l'index de ligne correspondant à E2
ligdata2 = WSSource.Columns(3).Find(WSCible.Cells(2, 5), WSSource.Range("B3"), , , xlByRows).Row
'MsgBox " data2 " & ligdata2

'remplissage des données chauffage
For i = 1 To 17
WSCible.Cells(8 + i, 3) = WSSource.Cells(ligdata1, 5 + (i - 1) * 14)
WSCible.Cells(8 + i, 4) = WSSource.Cells(ligdata2, 5 + (i - 1) * 14)
WSCible.Cells(8 + i, 5) = WSCible.Cells(8 + i, 4) - WSCible.Cells(8 + i, 3)
Next

'remplissage des données Electricité
For i = 1 To 18
WSCible.Cells(8 + i, 8) = WSSource.Cells(ligdata1, 17 + (i - 1) * 14)
WSCible.Cells(8 + i, 9) = WSSource.Cells(ligdata2, 17 + (i - 1) * 14)

WSCible.Cells(8 + i, 10) = (WSCible.Cells(8 + i, 9) - WSCible.Cells(8 + i, 8))
Next


End Sub

Nota : Je me suis trompé d'endroit pour créer le post, il est en doublon avec : https://www.excel-downloads.com/threads/vba-erreur-91-sur-methode-find.208675/
quelqu'un pourrait effacer celui qui est mal placé?
Merci d'avance
 

rpn

XLDnaute Nouveau
Re : Erreur 91 sur méthode find

En fait, ça doit être un problème de paramètres mémorisés sur find, car ça marchait ce matin, mais plus maintenant quand je lance la totalité de la feuille.
Quelqu'un peu il m'expliquer comment fonctionne cette méthode? quels sont les paramètres et ce que ej peux mettre dedans. je ne comprend vraiment aps ce qui est ecrit dans l'aide
 

Pièces jointes

  • Classeur1-bis.xlsm
    157 KB · Affichages: 31

Pierrot93

XLDnaute Barbatruc
Re : Erreur 91 sur méthode find

Bonjour,

Code:
En fait, ça doit être un problème de paramètres mémorisés sur find, car ça marchait ce matin, mais plus maintenant quand je lance la totalité de la feuille.

effectivement, je t'engage à consulter l'aide vba sur la méthode "find" et notamment la note concenant les différents arguments....

bonne journée
@+
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 196
Messages
2 086 100
Membres
103 116
dernier inscrit
kutobi87