VBA Excel : Chercher des valeurs dans les entrées d'un tableau et copier les cellules
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

VBA Excel : Chercher des valeurs dans les entrées d'un tableau et copier les cellules



  1. #1
    stonestar74

    Question VBA Excel : Chercher des valeurs dans les entrées d'un tableau et copier les cellules


    ------

    Bonjour à tous !

    Je débute en VBA mais j'aurais besoin de comparer chaque valeur de cellule d'une colonne à des valeurs d'entrée d'un tableau, puis lorsque la valeur correspond, remplacer la valeur de la cellule juste à côté par celle correspondant du tableau.

    En fait je dispose d'un tableau avec les dizaines (20, 30, 40...) en entrées de ligne, et les unités en entrées de colonnes. A chaque couple [dizaine, unité] correspond une valeur, disons un coefficient. Sur une autre feuille, j'ai une série de mesures avec des valeurs (24, 35, 400 etc.), et je veux faire correspondre chaque valeur au coefficient à trouver dans le tableau. J'ai donc essayé de faire un petit programme - qui ne fonctionne pas - mais je ne sais pas si je m'y suis bien pris, pouvez-vous m'aider s'il-vous-plaît ?

    Voici mon code :


    Sub conversion_s_mv()

    Dim n As Integer 'n : ligne des dizaines
    Dim m As Integer 'm : colonne unité
    Dim i As Integer 'i : ligne de température
    n = 3
    m = 15

    For i = 3 To 25984
    If Worksheets("825-3tc").Cells(i, 9).Value >= Worksheets("Feuil1").Cells(n, 14).Value And Worksheets("825-3tc").Cells(i, 9).Value < Worksheets("Feuil1").Cells(n + 1, 14).Value Then
    While Worksheets("825-3tc").Cells(i, 9).Value <> Worksheets("Feuil1").Cells(n, 14).Value + Worksheets("Feuil1").Cells(3, m).Value
    m = m + 1
    Wend
    Worksheets("825-3tc").Cells(i, 10).Value = Worksheets("Feuil1").Cells(n, m).Value
    n = n + 1
    End If

    Next


    End Sub


    J'espère que je me suis bien expliqué...!

    Merci pour votre aide !

    Stonestar

    -----
    La science consiste à passer d'un étonnement à un autre

  2. #2
    Fred des montagnes

    Re : VBA Excel : Chercher des valeurs dans les entrées d'un tableau et copier les cellules

    Salut,

    A voir ce que t'as fait, pour chaque mesure, tu regardes si elle est comprise entre deux dizaines, mais pas toute:

    1ère mesure: 0 <= mesure < 10 ??
    2ème mesure: 10 <= mesure < 20 ??
    etc...
    Du coup t'as peu de chance de trouver à quelle dizaine ce rapporte t'as mesure. De plus si t'as mesure est plus grande que la dizaine en cours, t'as boucle while va tourner sans fin. Il faudrait faire une boucle qui parcours les dizaine, puis une autre boucle qui parcours les unité..

    Perso je ferai un truc du genre:


    Sub conversion_s_mv()

    Dim n As Integer 'n : ligne des dizaines
    Dim m As Integer 'm : colonne unité
    Dim i As Integer 'i : ligne de température


    For i = 3 To 25984 'Parcours les mesures

    n = Cint(Int(Worksheets("825-3tc").Cells(i, 9).Value / 10)) + 3 'Calcul la ligne des dizaines (>10 = ligne 3 + 0 , 10<= x < 20 = ligne 3 + 1, 20 <= x < 30 = ligne 3 + 2 , etc...)
    m = Cint( Worksheets("825-3tc").Cells(i, 9).Value mod 10) + 15 'Calcul la colonne des unités (0 = colonne 15 + 0 , 1 = colonne 15 + 1, etc...)

    Worksheets("825-3tc").Cells(i, 10).Value = Worksheets("Feuil1").Cells(n, m).Value 'Affecte le coefficient
    ,
    Next


    End Sub

    A essayer...
    Dernière modification par Fred des montagnes ; 15/11/2014 à 16h41.

  3. #3
    stonestar74

    Re : VBA Excel : Chercher des valeurs dans les entrées d'un tableau et copier les cellules

    Salut Fred, merci pour ta réponse elle marche à fond !


    En fait je suis certain que mes mesures sont comprises entre 20 et 980 °C, c'est pour ça que je ne cherchais pas les dizaines inférieures mais moyennant un + 2 au lieu de + 3 ça marche^^

    Bon par contre Cint je connais pas, ça fera l'occasion de se renseigner un peu

    Merci encore !


    Stone
    La science consiste à passer d'un étonnement à un autre

Discussions similaires

  1. Elimination de valeurs excentriques dans un tableau de données
    Par Dostoiev dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 04/03/2013, 13h54
  2. Rentrer des valeurs dans un tableau
    Par E_78 dans le forum Programmation et langages, Algorithmique
    Réponses: 10
    Dernier message: 25/07/2012, 10h29
  3. excel: espacer des cellules dans une colonne
    Par invitebb29dda1 dans le forum Logiciel - Software - Open Source
    Réponses: 7
    Dernier message: 08/03/2010, 21h14
  4. Comment exporter des valeurs dans un tableau à Excel
    Par inviteb1dc4efc dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 05/12/2008, 21h35
  5. Recuperer les courbes/valeurs d'isosurface dans Excel
    Par invite8d07f046 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 19/08/2008, 11h49