Erreur d'éxécution 91

Erreur d'éxécution 91 - VB/VBA/VBS - Programmation

Marsh Posté le 17-01-2008 à 17:44:24    

Bonjour,
 
Suite à une macro lancée, j'obtiens la "fameuse" erreur d'execution 91
Voici le code surligné qui proviendrait de l'erreur :  
 
 Cells.Find(What:=pprod, After:=ActiveCell, LookIn:=xlFormulas, _
            LookAt:=xlWhole, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Activate
             
 
"pprod" est déclaré avant correctement,
 
Quelqu'un peut il m'aider ???????
 
Merci d'avance
 
MaXBvs

Reply

Marsh Posté le 17-01-2008 à 17:44:24   

Reply

Marsh Posté le 17-01-2008 à 17:47:21    

"pprod" plutôt que pprod non ?

Reply

Marsh Posté le 17-01-2008 à 17:48:50    

edit : ouais, nan rien.
 
encore un mélange de bordelisation VBA et fonctions natives d'Excel.
 
a mons avis, ça ne marchera pas avec une variable da ton paramètre.
 
essaie plutôt d'utiliser la syntaxe sans les "What:=".

Reply

Marsh Posté le 17-01-2008 à 17:51:44    

J'ai déja essayé "pprod" mais ca ne marche pas,
 
Je n'y connais pas grand chose en VBA, quelle serait le code sans le what ? il me suffit juste d'enlever what ??

Reply

Marsh Posté le 17-01-2008 à 17:52:05    

Merci cependant pour ta réponse

Reply

Marsh Posté le 17-01-2008 à 18:02:46    

f op <> "Commande" Then
 
    rep = MsgBox("Vous allez mettre à jour le stock, Voulez vous contiuer ?", vbYesNo)
     
    If rep = vbYes Then
    Range("b4:b6" ).ClearContents
        Worksheets("Produits Référencés" ).Select
        Cells.Find(What:=pprod, After:=ActiveCell, LookIn:=xlFormulas, _
            LookAt:=xlWhole, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Activate
 
 
Voici le code un peu plus grand, je peux en mettre plus si qqun le souhaite
 

Reply

Marsh Posté le 17-01-2008 à 22:55:08    

bonsoir,
ben oui... C'est sur que pour corriger une macro y vaut mieux avoir toute la macro.
Il serait même bien de savoir dans quel module tu as couché ça.
Comment tu exécutes la macro, à partir de quelle feuille, à partir d'un bouton, à partir de VBA ?
Enfin bref tout ce qu'il faut savoir pour évaluer.
 
Mais la raison la plus vraisemblable est  
soit pprod est mal défini.  
soit pprod est bien défini mais find ne trouve pas de données correspondantes et en l'absence de gestion d'erreur Activate ne passe pas...
A+

Reply

Marsh Posté le 17-01-2008 à 22:58:50    

Tu peux vérifier en remplaçant la ligne find par :
 
        Set o = Cells.Find(What:=pprod, After:=ActiveCell, LookIn:=xlFormulas, _
            LookAt:=xlWhole, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False)
        If Not o Is Nothing Then
        o.Activate
        Else
        MsgBox pprod & " non trouvé"
        End If  
 
A+


Message édité par galopin01 le 17-01-2008 à 22:59:28
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed