IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Macro de recherche de valeur. [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Septembre 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 8
    Par défaut Macro de recherche de valeur.
    Bonjour à tous,

    Etant débutant en VBA et j'ai beau me creuser la tête, je viens vers vous afin de trouver une solution pour un code vba excel.
    Voici mon problème :

    j'ai un fichier excel contenant plusieurs onglets. Dans le premier onglet j'ai ma base de donnée Colonne A à I

    Col A -->Nom
    Col B -->Other
    .....
    Col H Détail2
    Le nom des autres onglets correspondes aux valeurs de la Col H de ma base de donnée (voir image en pj car je n'arrive pas à insérer une image).
    Mes onglets de destination ont le même format.
    Je voudrais que la macro recherche le Code Other col(B) de ma base de donné dans l'onglet correspondant à sa valeur qui est dans de la Col(H), s'il l'a trouve il recherche le code Other suivant par contre s'il ne la trouve pas il va copier le nom et le code other dans le bon onglet dans la col (B) et (C) à chaque changement de Code détail2(voir image GSO en pj)sans prendre en compte les en tête de code détail2 sur l'image ligne 4, 9, 14 sachant que leur position est variable.
    J'espère que je me suis bien exprimé, dans l'attente de vous lire, je vous souhaite un bon après-midi.
    Images attachées Images attachées   

  2. #2
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Bonjour luffy94340,

    Premier conseil : quand tu expliques un problème, fais des phrases courtes.

    En deux, je récapitule :
    Statique :
    1) Tu as un classeur Excel avec plusieurs onglets.
    2) Dans le premier onglet tu as une base de données (comment s'appelle cet onglet ?)
    3) Tous les autres onglets sont nommés comme les valeurs de ta colonne H.
    4) Tous les onglets ont le même formalisme.

    Dynamique : (C'est là où ça se complique ! )
    5) Comment veux-tu lancer ta macro ?
    6) Tu veux parcourir ta colonne H (?)
    7) Aller dans l'onglet correspondant à cette valeur
    8) Récupérer le "Code Other" (colonne B)
    9) L'insérer dans ton onglet BDD en colonne B (?)
    (Rien que ça il m'a fallut du temps...)
    10) Si aucun "Code Other" n'est présent...
    ... là, je ne comprends plus rien...
    11) Tu veux recopier le "Nom" et le "Code Other" en colonne B et C (d'où vers où ?)
    12) Item 11 dynamique car la position sont variables (où ?)

    Bref... Relis ta phrase !

    Cordialement,
    Kimy

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 8
    Par défaut
    Merci Kimy pour votre intérêt, désolé si ma demande n’est pas claire
    Donc je vais reprendre ton développement et m’expliquer de nouveau.

    Statique :
    1) Tu as un classeur Excel avec plusieurs onglets.
    Réponse : Les onglets sont GSO 28Y, Legal 28Y, GSO 27f etc …

    2) Dans le premier onglet tu as une base de données (comment s'appelle cet onglet ?)
    Réponse : Import (la plage de donnée est variable)

    3) Tous les autres onglets sont nommés comme les valeurs de ta colonne H.
    Réponse : OUI

    4) Tous les onglets ont le même formalisme.
    Réponse : OUI

    Dynamique : (C'est là où ça se complique ! )
    5) Comment veux-tu lancer ta macro ?
    Réponse : je veux lancer la macro via un bouton dans la barre d’outils accès rapide qui sera lié au fichier.

    6) je veux rechercher si la valeur des cellules de la colonne B de mon onglet « Import » (exemple S06000181) existe ou pas dans l’onglet qui correspondra à sa valeur contenu dans la colonne H (exemple onglet GSO 28Y)

    Cas1 : s’il la valeur de mon code OTHER (colonne B) existe dans l’onglet correspondant alors rechercher la valeur suivante (boucle) de mon onglet Import (exemple S06000201).
    Cas 2 si la valeur n’est pas trouvé copier les cellules A1 :B1 de l’onglet Import vers le bon onglet, dans mon exemple l’onglet GSO 28Y et colle les données en B et C à chaque changement de Detail2 (Colonne A).

    7) Item 11 dynamique car la position sont variables (où ?)
    Réponse : voir dans mon fichier et dans l'onglet GSO 28Y les lignes 4, 9 , 14 (si on insert les valeurs la ligne 9 va se décaler vers le bas)

    je joint mon fichier test.xlsx pour que vous puissiez comprendre.

    merci encore
    Fichiers attachés Fichiers attachés

  4. #4
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Bonjour luffy94340,

    Citation Envoyé par luffy94340 Voir le message
    Cas1 : s’il la valeur de mon code OTHER (colonne B) existe dans l’onglet correspondant alors rechercher la valeur suivante (boucle) de mon onglet Import (exemple S06000201).
    Cas 2 si la valeur n’est pas trouvé copier les cellules A1 :B1 de l’onglet Import vers le bon onglet, dans mon exemple l’onglet GSO 28Y et colle les données en B et C à chaque changement de Detail2 (Colonne A).

    7) Item 11 dynamique car la position sont variables (où ?)

    Réponse : voir dans mon fichier et dans l'onglet GSO 28Y les lignes 4, 9 , 14 (si on insert les valeurs la ligne 9 va se décaler vers le bas)
    Si tu me dis qu'il n'y a pas que le "Code OTHER" à trouver dans tes onglets du type "GSO 28Y" mais qu'il faut également faire une recherche en fonction de ta colonne C "Compagny", tu auras oublié la moitié des infos...

    Bref, résumons :
    1) Boucle sur la colonne B ("Code OTHER") de "Import"
    2) En colonne H ("Détail2") de la même ligne j'aurais l'onglet dans lequel je dois chercher la valeur
    3) Je vais dans cette onglet
    4) Je cherche en colonne C ("Others") si le code est présent (=> problème dans ton exemple, je le trouve plusieurs fois, c'est normal ?)
    5) Si je le trouve, je ne fais rien, je continue ma boucle sur mon onglet "Import"
    6) Si je ne le trouve pas, je l'ajoute avec le "Nom OTHER" (=> problème : où ? Tu as un formalisme bien particulier dans tes onglets : cf. ma première remarque)

    J'attends ton retour...

    Tu as de la chance que je sois de bonne humeur, plus d'un aurait laissé tombé !

    Cordialement,
    Kimy

  5. #5
    Membre du Club
    Inscrit en
    Septembre 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 8
    Par défaut
    bonjour kimy
    sincèrement désolé je vois ce que je veux mais n'arrive pas à l'expliquer simplement.

    1) Boucle sur la colonne B ("Code OTHER") de "Import"
    réponse : oui

    2) En colonne H ("Détail2") de la même ligne j'aurais l'onglet dans lequel je dois chercher la valeur
    réponse : oui

    3) Je vais dans cette onglet
    réponse : Oui

    4) Je cherche en colonne C ("Others") si le code est présent (=> problème dans ton exemple, je le trouve plusieurs fois, c'est normal ?)
    Oui c'est normale car en colonne A il y a un code commençant par FR devant lequel doit être collé le le nom et l' other à chaque fois qu'il rencontre un nouveau code commençant par FR exemple ligne 5, 10, 15 etc...

    5) Si je le trouve, je ne fais rien, je continue ma boucle sur mon onglet "Import"
    oui

    6) Si je ne le trouve pas, je l'ajoute avec le "Nom OTHER" (=> problème : où ? Tu as un formalisme bien particulier dans tes onglets : cf. ma première remarque)
    réponse : si non trouver copier cellule A2 et B2 puis coller vers l'onglet qui est = à la valeur de H2 soit l'onglet GSO 28Y devant le code FR100 FR101 FR102 (colonne A -)etc...

    merci encore et désolé pour la migraine

  6. #6
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Soit j'avais raison et tu as donc oublié la moitié de l'info, soit il me manque encore un bout d'explication.
    Cette question va me permettre de comprendre :

    Tu as un Code OTHER dans ton onglet "Import", exemple : S06000181 pour une "Compagny", exemple : FR011 pour un "Détail2", exemple : GSO 28Y.
    Si ce Code OTHER est présent dans ton onglet "GSO 28Y" tu as ce Code OTHER mais pour une "Compagny" différente, exemple : FR012.
    Qu'est-ce que je fais ?

    D'après ta description du problème je ne devrais rien faire puisque je trouverai bien le "Code OTHER" dans l'onglet correspondant.

    J'attends ton retour.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Macro pour rechercher une valeur en fonction de la valeur d'une cellule
    Par Rook93 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/01/2013, 11h42
  2. [XL-2003] MACRO pour rechercher les 2 valeurs les plus proches
    Par Tchibe dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 09/06/2010, 15h04
  3. Réponses: 4
    Dernier message: 18/12/2009, 13h44
  4. Macro "Recherche une Valeur" dans un Userform
    Par Bastien06 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/09/2009, 14h43
  5. Problème lors d'une recherche de valeur macro
    Par yayasiano dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/03/2009, 09h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo