Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

2e plus petite variable

  • Initiateur de la discussion Initiateur de la discussion julien051
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

julien051

XLDnaute Nouveau
Bonjour a tous,

Voilà mon souci, j'ai 5 variables déclaré en as double (valeur décimale) qui sont CC1,CC2,CC3,CC4,CC5.
Leur valeurs sont variables en fonction de optionbutton coché au préalable.

Ma question est la suivante, comment peut on simplement déterminer la plus petite valeur et la deuxieme plus petite valeur? Comme le ferai la fonction petite valeur.

PS je ne veux pas passé par une feuille excel en mettant les valeur dans les cellule, car c'était les cas avant mais j'essais de mettre tout mon fichier le plus possible en VBA.

Par avance merci de vos réponse.
 
Re : 2e plus petite variable

Bonjour julien051 et bienvenue sur le forum,
Bonjour le forum 🙂

Voici un essai en passant l'ensemble des valeurs dans un tableau pour ensuite pouvoir trier les données :
VB:
Public Sub Test()
Dim tabDbl(1 To 5) As Double, i As Long, j As Long, tmpDbl As Double
    
    'mettre les valeurs dans un tableau
     tabDbl(1) = 12.5
    tabDbl(2) = 7.3
    tabDbl(3) = 8.9
    tabDbl(4) = 15.2
    tabDbl(5) = 3.7
    
    'trier les valeurs en ordre croissant
     For i = LBound(tabDbl) To UBound(tabDbl) - 1
        For j = i + 1 To UBound(tabDbl)
            If tabDbl(j) < tabDbl(i) Then
                tmpDbl = tabDbl(j)
                tabDbl(j) = tabDbl(i)
                tabDbl(i) = tmpDbl
            End If
        Next j
    Next i
    
    'afficher la deuxième plus petite valeur
     MsgBox tabDbl(2)
End Sub

A+
 
Re : 2e plus petite variable

salut 🙂

une autre solution possible :

Code:
tabDbl(1) = 12.5
    tabDbl(2) = 7.3
    tabDbl(3) = 8.9
    tabDbl(4) = 15.2
    tabDbl(5) = 3.7
    
With Application.WorksheetFunction
    MsgBox .Small(tabDbl, 2) 'petite valeur
    MsgBox .Min(tabDbl) 'min
End With

a plus
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…