VBA excel

Bonjour,

Est ce qu'il y a quelqu'un sais si on peut limiter un integer?

C'est à dire, je voudrais définir
Dim u as integer
u =1 ' pour le début
u = 100 'pour le max de u

Et je veux pas faire de boucle, je veux juste limiter à 100.

Merci beaucoup

6 réponses

  1. Je sais pas si c'est ce que tu veux mais faire un modulo 100 ne marcherait pas ?
    1. bonjour

      peux tu expliquer ce que tu veux faire avec cet entier u ?

      bonne suite
      1. u = 1
        For m = 1 To NombreLigne
        If u > 1 Then
        If Tableau02(u - 1) <> Cells(m, 15).Value Then
        If Tableau02(u - 1) <> Tableau02(h) Then
        Tableau02(u) = Cells(m, 15).Value
        NumberType = NumberType + 1
        u = u + 1
        For h = 1 To u
        If Tableau02(u - 1) = Tableau02(h) Then
        Tableau02(u) = "0"
        End If
        Next h
        End If
        ElseIf u = 1 Then
        Tableau02(u) = Cells(m, 15).Value
        u = u + 1
        End If
        If u > 100 Then
        GoTo suivant02
        End If
        Next m

        Ma boucle
        ce que je veux c'est de copier les infos de Cells(m,15) dans le Tableau02(u). mais je voudrais en meme temps de le trier pour que il ne me marque pas plusieurs fois la meme chose dans le tableau..... je dois l'utiliser par la suite le tableau..
        je sais pas trop comment faire.
        Et pour l'instant l'erreur vient de u, car j'ai défini le Tableau02 de 1 à 100, donc u ne dois pas dépasser 100 non plus. je veux donc limiter u à 100
    2. Bonjour.

      Voici une fonction VBA qui permet de générer un nombre aléatoire entre 2 bornes

      Public Function RandomNumber(Lowest As Long, Highest As Long)
      ' Generates a random whole number within a given range
      Randomize
      RandomNumber = Int(Rnd * (Highest + 1 - Lowest)) + Lowest
      End Function
      1. ce que j'ai compris

        tu veux copier les 100 premières cellules différentes de la plage Cells(1,15):Cells(Nbligne,15) dans tableau02, puis trier tableau02

        est ce c'est ça?
        1. Oui,
          Parce que au départ je voulais les recopier en triant en meme temps, mais j'ai vu que c'était pas possible..
          car dans les cellules de la feuille, Cells(m,15), il y a plusieurs lignes qui ont de la meme valeur, je voudrais les copier dans le Tableau02, puis trier le Tableau02 pour que dans le tableau, il n'y a pas de doublons, et il n'y a pas de case vide non dans le Tableau02. Car je dois le réutiliser dans une boucle plus loin.....
          C'est assez compliquer....
      2. 
        'Déclaration des variables 
        Dim m As Integer
        Dim u As Integer
        Dim casevide As Integer
        Dim tableau02(100) As String
        
        
        
        For m = 1 To 100
        For u = 1 To 100
        
        If Cells(m, 15).Value = tableau02(u) Then
        Exit For
        End If
            If tableau02(u) = "" Then
            casevide = u
            End If
          If u = 100 Then
          tableau02(casevide) = Cells(m, 15).Value
          End If
             
        Next u
        Next m


        Avec ce code on tri et enregistre le contenu des cellule Ox dans le tableau.

        Est-ce que cela peut marcher?

        Le premier pas vers la solution est la recherche. Notre ami Google connaît sûrement la solution...