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 :

recherches et stockage de valeurs dans un tableau


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 13
    Points : 6
    Points
    6
    Par défaut recherches et stockage de valeurs dans un tableau
    Bonjour, j'ai de nouveau un problème avec VBA Excel. A mon avis c'est tout simple à programmer mais étant débutant je n'y arrive pas. J'ai essayé pas mal de choses, en vain.

    J'ai un tableau à 9 lignes, 4 colonnes (D9 :G17). Dans la cellule B3 se trouve un chiffre, et j'aimerais que le programme me donne dans trois cellules distinctes (par exemple A1, A2, A3) les valeurs de la colonne A, de la Colonne B et de la colonne C de mon tableau en fonction du chiffre de la cellule B3.

    Voici le lien qui montre le fichier excel et le tableau :

    http://www.cijoint.fr/cjlink.php?fil...cijwP4gkgr.xls

    J'espère vraiment que vous pourrez m'aider.
    Merci d'avance.

  2. #2
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    bonjour arbotch le forum une evenementielle on peut le faire aussi par formules

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Explicit
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Application.Intersect(Target, Range("b3")) Is Nothing Then
    Dim c As Range
    Set c = Range("d10:d17").Find(Cells(3, 2), LookIn:=xlValues, LookAt:=xlWhole)
    If c Is Nothing Then MsgBox " pas de valeur": Exit Sub
    If Not c Is Nothing Then
    Cells(1, 1) = c.Offset(0, 1): Cells(1, 2) = c.Offset(0, 2): Cells(1, 3) = c.Offset(0, 3)
    End If: End If: Beep
    End Sub
    SALUTATIONS

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    En fait, dans mon cas la cellule où se trouve le chiffre est sur la feuil2 en A3.
    Il faudrait, grâce à un bouton de commande sur la feuil1 et en utilisant VBA, que je puisse obtenir les trois résultats en feuil2 en C1, C2, C3.

    Merci beaucoup.
    Fichiers attachés Fichiers attachés

  4. #4
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    re, pas sur d avoir tout compris!! déja une evenementielle tu peus pas la mettre dans un userform
    tu modifie la valeur de la cellule a3 de la feuille2 tu écris le résultat dans la feuille2 en c1,c2,c3. donc l' evénementielle tu la met dans la feuille2 sous cette forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Explicit
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Application.Intersect(Target, Range("a3")) Is Nothing Then
    Dim c As Range
    Set c = Sheets("Feuil1").Range("d10:d17").Find(Sheets("Feuil2").Cells(3, 1), LookIn:=xlValues, LookAt:=xlWhole)
    If c Is Nothing Then MsgBox " pas de valeur": Exit Sub
    If Not c Is Nothing Then
    Cells(1, 3) = c.Offset(0, 1): Cells(2, 3) = c.Offset(0, 2): Cells(3, 3) = c.Offset(0, 3)
    End If: End If: Beep
    End Sub
    par contre je comprends pas ton user ??? si tu change la valeur de a3 en feuille2 userform & le bouton sert a rien!!
    SALUTATIONS

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 563
    Points : 1 691
    Points
    1 691
    Par défaut
    es tu sure qu'une formule n'est pas suffisante a ce que tu veux faire ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =RECHERCHEV($A$3;Feuil1!$D$10:$G$17;2;FAUX)
    ou A3 est la cellule ou tu inscrit la tolerance que tu vas aller rechercher dans le tableau
    le chiffre 2 represente la deuxieme colonne du tableau que tu remplacera par 3 et 4 pour les deux autres valeurs

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/03/2014, 17h33
  2. [TPW] Rechercher la plus grande valeur dans un tableau récursivement
    Par abdou monta dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 10/05/2013, 15h36
  3. Rechercher la plus proche valeur dans un tableau
    Par neoMatrix dans le forum MATLAB
    Réponses: 2
    Dernier message: 16/05/2007, 11h45
  4. rechercher la plus proche valeur dans un tableau ?
    Par Slumpy dans le forum VB.NET
    Réponses: 3
    Dernier message: 13/04/2007, 14h06
  5. Rechercher une valeur dans un tableau
    Par pafi76 dans le forum Access
    Réponses: 2
    Dernier message: 29/06/2006, 14h23

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