Rentrer valeur dans un Tableau

Résolu
Bonjour tout le monde,

Voici la macro :
Sub RenterValeursDansTableau()
Dim ab As Double
For ab = Cells(65536, 1).End(xlUp).Row To 1 Step -1
    If Cells(ab,4).Value = "1)" Then 
Cells(ab,4).row
    
    ....



End Sub


J'aimerai rentrer les -> Cells(ab,4).row dans un tableau.
Puis pendant qu'on y est ^^ comment on fait si je veux extraire la 2ieme donnée du tableau

Voila MErci d'avance
j'espére avoir été assez clair !
@+ le forum !
; )
Configuration: Windows XP
Internet Explorer 7.0

12 réponses

  1. Contributeur
    bonjour,
    tu tape Utilisation des tableaux dans ton aide et tu aurras tout les renseignement possibles sur les tableaux.
    A+
    0
    1. Rebonjour,

      OK MERCI lermite 222!
      Jvais prendre mon temps pour regarder tous ca !

      Allez @++
      0
      1. RE

        Voici un exemple de macro que j'ai réalisé :
        Sub RenterValeursDansTableau()
        Dim ab As Integer
        Dim tableau(2) As Integer
        Dim i As Integer
        Dim nonvide As Integer
        
        i=1
        nonvide = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
        For ab = nonvide To 1 Step -1
            If Cells(ab, 3).Value = "a" Then
            Cells(ab, 3).Select
            Cells(ab, 3).Row = tableau(i)
            i = i + 1
            End If
            
        Next ab
        MsgBox tableau(1)
        
        End Sub
        


        Mais cette macro ne se compile pas et me dit "Nombre d'argument incorect ou affectation de propriété incorrect" sur la ligne suivante -> Cells(ab, 3).Row = tableau(i)
        :(
        0
        1. qq1 saurait d'ou vient le probléme ???

          Merci :)
          0
          1. Contributeur
            Si je comprend ce que tu veux au final...
            i=1
            nonvide = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
            For ab = nonvide To 1 Step -1
                If Cells(ab, 3).Value = "a" Then
                    tableau(i) = Cells(ab, 3).Row 
                    i = i + 1
                End If
                
            Next ab

            mais si tu a plus de 2 lignes ca va encore se planter, il faut que T soit suffisament dimentionner
            Ex si tu a 100 ligne... Dim T(100)
            0
            1. Merci bien de m'avoir répondu Lermite !

              Si je veux faire la moyenne des valeurs contenue dans le tableau je dois écrire :
              Dim ab As Integer
              Dim tableau(200) As Integer
              Dim i As Integer
              Dim nonvide As Integer
              
              Dim moyenne as integer
              
              i=1
              nonvide = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
              For ab = nonvide To 1 Step -1
                  If Cells(ab, 3).Value = "3" OR "4" or "5" Then
                      tableau(i) = Cells(ab, 3).Row 
                      i = i + 1
                  End If   
              Next ab
              
              
              For i = 200 to 1 step-1
              moyenne = i*(i+1)/i
              next i
              MsgBox moyenne
              
              end sud
              


              Je ne sais pas trop comment m'y prendre du fait que les 200 places dans le tableau ne sont pas nécessairement utilisées.

              Merci encore !
              ++
              0
              1. Contributeur
                Desespère pas ca commence à viendre... :-D
                Dim ab As Integer
                Dim tableau(200) As Integer
                Dim i As Integer, e as integer
                Dim moyenne as integer

                i=0
                For ab = 1 to ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
                If Cells(ab, 3).Value >2 and Cells(ab, 3).Value <6 Then
                tableau(i) = Cells(ab, 3).value
                i = i + 1
                End If
                Next ab

                moyenne = 0
                For e =0 to i -1
                moyenne = moyenne +T(e)
                next e
                MsgBox moyenne/(e-1)
                0
                1. Ok merci lermite jvais analyser ta macro demain
                  Au faite dans la macro à la place de la lettre "T" ce n'est pas plutot "Tableau" ??
                  Sur ce bonne journée!!

                  ++
                  Thx
                  Merci pr ta réponse !
                  0
                  1. Erf le calcul de la moyenne ne fonctionne pas :(
                    J'ai essayé le mode pas à pas et le probléme vient de
                    moyenne = moyenne +Tabluea(e)

                    ++
                    0
                    1. Contributeur
                      J'ai retesté et ca fonctionne, sauf si pas de donnée correspondante.
                      Ajoute ces lignes en dessous du Next ab

                      If i = 0 Then
                          MsgBox "Aucune donnée ne répond aux critères."
                          Exit Sub
                      End If

                      et vérifie l'ortographe de >> +Tabluea(e)
                      A+
                      0
                      1. [lol]
                        Bin c'est la meilleur alors que ca fonctionne chez toi.

                        Jtrouve ca vraiment bizarre que ca ne fonctionne pas

                        Sub zaefaz()
                        
                        
                        Dim ab As Integer
                        Dim tableau(200) As Integer
                        Dim i As Integer, e As Integer
                        Dim moyenne As Integer
                        
                        i = 0
                        For ab = 1 To 3
                        If Cells(ab, 3).Value > 0 Then
                        tableau(i) = Cells(ab, 3).Value
                        i = i + 1
                        End If
                        Next ab
                        If i = 0 Then
                            MsgBox "Aucune donnée ne répond aux critères."
                            Exit Sub
                        End If
                        moyenne = 0
                        For e = 0 To i - 1
                        moyenne = moyenne + tableau(e)
                        Next e
                        MsgBox moyenne / (e - 1)
                        End Sub
                        


                        Les résultats que j'obtiens avec cette macro sont incohérents avec le résultat attendu ....
                        Si tu vois qqchose qui ne va pas dans le code ci dessus ...

                        merci encore!!
                        +
                        0
                        1. J'ai mi les veriables en Double se ne change rien .
                          0
                          1. Contributeur
                            Montre ce que tu a comme donnée dans C1,C2 et C3
                            ET ARRETE DE CHANGER CONSTAMMENT LES CRITERES.

                            EDIT:
                            Pfffffffffttttttttttt
                            Ta macro fonctionne.
                            Vu qu'il n'y a pas de référence à la feuille tu doit mettre ta macro dans le module de la feuille
                            double clic sur Feuil1 dans l'explorateur de projer et mettre la macto là.
                            0