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 :

[VBA-E]recherche d'une valeur particulière


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Par défaut [VBA-E]recherche d'une valeur particulière
    Bonjour à tous,

    A partir d'un choix effectué dans une liste déoulante sur userform j'aimerais récupérer une valeur qui se situe dans la meme fueille et qui dépend du choix de l'utilisateur et qui va me servir pour mes calculs.
    Aussi je vous donne un exemple:
    L'utilisateur fait un choix de materiaux ex: AAAC
    Je dois ensuite à partir d'une valeur calculé trouver les deux valeur normalisée (la première valeur supérieure à Scc et la première valeur inférieure a Scc)qui se situent dans un tableau et qui dépend du type de matériaux
    Soit par exemple:
    Scc: section du conducteur calculée théorique
    AAAC: matériau constituant le conducteur (cette valeur est stockée dans une liste qui s'appelle Lconductor.listindex)
    Voila le code que j'ai tapé et qui ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Dim Snorm As Double
        Dim i As Integer
        Dim indiceligne As Integer
        Dim indicecolonne As String
        Dim k As Integer
     
        i = Lconductor.ListIndex + 7
     
        If (i = 7) Then indicecolonne = "AG" =>colonne: section normalisée pour conducteur 1
        If (i = 8) Then indicecolonne = "AH" =>colonne: section normalisée pour conducteur 2
     
        If (i = 9) Then indicecolonne = "AI" =>... 3
        If (i = 10) Then indicecolonne = "AJ" =>... 4
     
        k = 7
        Do Until ActiveSheet.Range(indicecolonne & k).Value - Scc > 0
                indiceligne = k
                k = k + 1
                Loop
        Snorm = ActiveSheet.Range("indicecolonne" & "indiceligne").Value
        MsgBox Snorm
    A priori ici je n'essaye de récupérer que la première section normalisée de valeur juste supérieure à Scc..
    On m'affiche un message d'erreur que je n'arrive pas à interpréter.
    Merci d'avance pour votre aide

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Par défaut
    1/ Je ne vois pas quand est initialisée la variable Scc. Je suppose donc que c'est une variable globale.
    2/ Tu ne dis pas ou se situe l'erreur dans ton code, mais a priori ce la vient de :
    Citation Envoyé par rifchavon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Snorm = ActiveSheet.Range("indicecolonne" & "indiceligne").Value
    Tu voulais surement ecrire sans les guillements :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Snorm = ActiveSheet.Range(indicecolonne & indiceligne).Value

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 56
    Par défaut alternative
    Pour éviter tout ce code tu peux utiliser, une fonction tel que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Snorm= Application.WorksheetFunction.VLookup _
    (arg1,Range("a1:k20"), 5)
    avec arg1: ta valeur recherché venant de ta userform, arg2: ton tableau de correspondance, et arg3: ta colonne ou se trouve ta valeur finale recherchée...

    C'est plus simple à mon avis

Discussions similaires

  1. Rechercher une valeur particulière dans une table
    Par stefsas dans le forum SAS Base
    Réponses: 2
    Dernier message: 22/09/2008, 17h40
  2. Recherche d'une valeur dans un txt depuis vba excel
    Par Ted37 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 13/08/2008, 08h28
  3. [VBA-E]Recherche d'une valeur avec la colonne comme variable
    Par Corlo dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 25/04/2007, 09h21
  4. [VBA-E] Recherche d'une valeur
    Par coxi77 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 03/08/2006, 09h27
  5. [VBA] Recherche d'une valeur dans un autre fichiers puis
    Par Nicos77 dans le forum Général VBA
    Réponses: 11
    Dernier message: 24/03/2006, 11h24

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