Le bouton "annuler" me donne erreur 1004

Résolu
Herve - Modifié le 31 juil. 2020 à 00:07
 Herve - 25 juil. 2020 à 15:54
Bonsoir,
J'ai un souci sur le bouton annuler de l'imputbox qui me donne cette erreur 1004
L'erreur serait ici...: MsgBox Cellule.Offset(0, -2).Value & Chr(10) & Cellule.Offset(0, 0).Value
Merci de votre aide!
Hervé

Sub Trouver_CodeClient() 'Modulo 17
'ActiveSheet.Unprotect ("Base_Client")
Dim Cellule As Range
Dim Recherche As String
Art = InputBox("Client à rechercher", vbInformation + vbOKOnly, "Obligatoire trois lettres minimum")
With Sheets("Base_Clients").Range("A:C")
    Set Cellule = .Find(Recherche, Lookat:=xlPrevious)
    If Not Cellule Is Nothing Then
    firstAddress = Cellule.Address
    Do
    MsgBox Cellule.Offset(0, -2).Value & Chr(10) & Cellule.Offset(0, 0).Value
    Cellule.Offset(0, -2).Copy
    Range("K1").PasteSpecial
    Exit Sub
    Set Cellule = .FindBefore(Cellule)
    Loop While Not Cellule Is Nothing And Cellule.Address <> firstAddress
    End If
End With
MsgBox "Rien trouvé"
'ActiveSheet.Protect ("Base_Client")
End Sub

3 réponses

Patrice33740 Messages postés 8550 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 28 septembre 2022 21
Modifié le 23 juil. 2020 à 10:04
Bonjour,

Il me parait tout à fait normal que ce message donne une erreur lorsque la valeur cherchée est trouvée dans la colonne A ou la colonne B : comment pourrait-on reculer de 2 colonnes ? .Offset(0, -2) ?????

D'autre part, pour trouver Recherche, il faudrait l'initialiser !

Cordialement
Patrice

Personne ne peut détenir tout le savoir, c'est pour ça qu'on le partage.
0
Bonjour,
Merci de votre intérêt. En fait ceci fonctionne correctement. Le souci se trouve dans le bouton annuler qui, quand "clic" me donne l'erreur.
0
Patrice33740 Messages postés 8550 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 28 septembre 2022 21 > Herve
24 juil. 2020 à 20:54
Ce ne serait donc pas ce que tu indiques :
« L'erreur serait ici...: MsgBox Cellule.Offset(0, -2).Value & Chr(10) & Cellule.Offset(0, 0).Value »

Pourquoi poser la question si ça fonctionne correctement ?????
0
Herve > Patrice33740 Messages postés 8550 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 28 septembre 2022
25 juil. 2020 à 08:57
Bon, j'arrête... j'ai pourtant dit pas deux fois... "Le souci se trouve dans le bouton annuler qui, quand "clic" me donne l'erreur."
merci quand même de votre intérêt
0
Patrice33740 Messages postés 8550 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 28 septembre 2022 21
Modifié le 25 juil. 2020 à 12:05
Il n'est pire sourd que celui qui ne veut pas entendre .....

Lorsqu'on laisse à une erreur la possibilité de se produire, il ne faut pas s'étonner lorsqu'elle se produit !

Il y a une incohérence entre :
With Sheets("Base_Clients").Range("A:C")
Set Cellule = .Find(Recherche, Lookat:=xlPrevious)

et
MsgBox Cellule.Offset(0, -2).

Soit tu recherches uniquement en colonne C et tu peux faire un offset de -2,
Soit tu tiens compte de la colonne de Cellule pour faire l'Offset.
Cordialement
Patrice

Personne ne peut détenir tout le savoir, c'est pour ça qu'on le partage.
0
Merci !
0