EXCEL :: Récupérer le contenu d'une liste déroulante (validation) en VBA

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 !

oguruma

XLDnaute Occasionnel
A partir de POST comme tous les autres ayant pour exemple une gestion de stock un petit code VBA permettant de récupérer le contenu d'une liste déroulante sous forme de liste de validation

Exemple : contenu de cette liste
1712096992994.png

VB:
Sub GetValidationList()
    Const LIST_FRUITS = "LIST_FRUITS"
    Const EGAL = "="
    Const VIRGULE = ","
    Dim rRng As Range
    Dim vArray As Variant
    Dim iDx As Integer
    Dim iRows As Integer
    Dim sString As String
    
    
    Set rRng = Range(LIST_FRUITS)
    On Error Resume Next
    
    iRows = Range(Replace(rRng.Validation.Formula1, EGAL, "")).rows.Count
    
    ReDim vArray(1 To iRows)
    
    For iDx = 1 To iRows
        vArray(iDx) = _
            Range(Replace(rRng.Validation.Formula1, EGAL, "")).Cells(iDx, 1)
    Next iDx
    
    If Err.Number <> 0 Then
        Err.Clear
        vArray = Split(rRng.Validation.Formula1, VIRGULE)
    End If
    
    If Err.Number <> 0 Then
        MsgBox "Impossible de renvoyer la liste - erreur : " & Err.Number & " - " & Err.Description
        Exit Sub
    End If
    
    On Error GoTo 0
    
    For iDx = LBound(vArray) To UBound(vArray)
        rRng.Value = vArray(iDx)
        Application.Calculate
        sString = sString & " ; " & rRng.Value
        Debug.Print rRng.Value
    Next iDx
    MsgBox sString
    
End Sub

Résultat
1712097025004.png


Le code VBA
 

Pièces jointes

- 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

Discussions similaires

Réponses
2
Affichages
392
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
68
Réponses
4
Affichages
355
Réponses
4
Affichages
138
Réponses
3
Affichages
532
Retour