FORUM Tom's Hardware » Programmation » Autre » VBA recherche d'un cellule sur un classeur précis
 

VBA recherche d'un cellule sur un classeur précis

78 utilisateurs inconnus
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : VBA recherche d'un cellule sur un classeur précis
 
Aux grandes âmes, les grands challenges
Plus d'informations

Je reviens une fois de plus demander de l'aide car je penche depuis un bon moment sur un problème qu je n'arrive pas à résoudre...  :pt1cable:  
 
J'ai deux classeurs ouverts. Je souhaite rechercher une cellule qui contient les mots "PRODUITS D'EXPLOITATION" dans le classeur : classeur_previ et dans la feuille :feuille_previ de ce classeur, qui est l'un des deux classeurs. Le souci c'est que l'autre classeur a une cellule qui contient "total produits d'exploitation", et ma macro au lieu de chercher la cellule dans classeur_previ, trouve cette cellule "total produits d'exploitation" dans l'autre classeur...  
Pourtant j'ai vérifié: classeur_previ et feuille_previ désignent bien le bon classeur...
J'ai une idée d'où peut venir le problème: LookIN:=xlValues. Je suppose que du coup il effectue la recherche dans toutes les cellules des classeur excel ouverts... Mais comment je peux préciser dans le "LookIn" que je veux qu'il cherche QUE dans classeur_previ? (le problème ne vient peut être pas de là...)
 
Mon code:

Code :
  1. Workbooks(classeur_previ).Activate
  2. With Worksheets(feuille_previ).Cells
  3. Set cellule_tableau = .Find("PRODUITS D'EXPLOITATION", LookIn:=xlValues)
  4. End With


 
Si vous avez des suggestions, merci beaucoup!  :jap:

zeb
Profil : Modérateur libre
Plus d'informations

Vérifie ce que contient les variable classeur_previ et feuille_previ avant de les utiliser. (Avec un MsgBox et/ou un Debug.Print)

Aux grandes âmes, les grands challenges
Plus d'informations

J'ai vérifié et les variables on les bonnes valeurs...

zeb
Profil : Modérateur libre
Plus d'informations

LookIn sert à préciser si tu recherches par valeur, dans la formule ou dans les commentaires.
 
Sinon, plutôt que de faire confiance à l'activation, essaie un truc comme ça :

Code :
  1. Workbooks(classeur_previ).Worksheets(feuille_previ).Cells.Find

Encore une piste. Tu peux ajouter

Code :
  1. LookAt:=xlWhole

pour préciser que tu ne veux que les cellules qui contiennent exactement ces mots.

Aux grandes âmes, les grands challenges
Plus d'informations

Merci, j'ai essayé...
 

Code :
  1. Set cellule_tableau = Workbooks(classeur_previ).Worksheets(feuille_previ).Cells.Find("PRODUITS D'EXPLOITATION", Lookat:=xlWhole)


 
mais du coup il ne trouve pas la cellule...    
je désespère ...   :cry:

zeb
Profil : Modérateur libre
Plus d'informations

Fais-le à la main en enregistrant le tout dans une macro. Compare ton travail de réflexion avec l'horreur(*) que va créer l'enregistreur de macro.
 
Ne désespère pas, on va l'avoir :)
 
(*) Je hais les activate et autres Select

Aux grandes âmes, les grands challenges
Plus d'informations

Je ne vois pas comment faire avec l'enregistreur de macro....

zeb
Profil : Modérateur libre
Plus d'informations

Ben, Menu Outils/Macro/Nouvelle Macro.
 
Ce n'est plus dans la cat' programmation qu'il faut poster...

Aux grandes âmes, les grands challenges
Plus d'informations

oui oui je connais mais je vois pas comment faire avec l'enregistreur pr faire une macro qui recherche la cellule précise...
c'est bien pr ça que je fais en VBA...

Aux grandes âmes, les grands challenges
Plus d'informations

Je crois que j'ai résolu le pb...
j'ai vérifié plusieurs fois l'orthographe de "PRODUITS D'EXPLOITATION" et je l'avais à prioris bien écrit dans mon code...
mais je me suis dit: je vais faire un copier coller  de la cellule d'origine pour être sûre....
et ça marche ! donc le souci venait du fait que dans la cellule que je recherchais il y avait un espace en trop entre les mots...  :fou:    
tout ça pour ça !!! pfiou...  

zeb
Profil : Modérateur libre
Plus d'informations

Je n'ai pas osé poser la question... :lol: Même lorsque tu auras 15 ans d'expérience en informatique, tu auras toujours ce genre d'erreur  :whistle:

Aux grandes âmes, les grands challenges
Plus d'informations

ouais.. c'est un peu rageant quand même... et le pire c'est que j'avais vérifié ( bah vi, j'y ai pensé, le métier commence à rentrer  ;)  ) mais je devais pas avoir les yeux en face des trous...  :(  
morale de l'histoire: j'ai plus qu'à m'acheter des lunettes...


Aller à :
Ajouter une réponse
  FORUM Tom's Hardware » Programmation » Autre » VBA recherche d'un cellule sur un classeur précis
 

Annonces Google
Publicité
Les ressources relatives
Les téléchargements