Erreur combo avec plages dynamiques

Bonjour

alors après posté mon problème hier, j'ai donc retiré tout ce qui n'était pas utile afin de facilité la résolution de mon problème.

Ci joint le fichier dans lequel j'ai 3 combobox imbriquée et j'ai un soucis quand le dernier combo ne comporte qu'une ligne.

il s'agit de plage dynamique afin d'alimenter si besoin les combo

la photo ci joint montre la ligne d'erreur ainsi que la valeur de la variable au moment du bug.

a savoir que sur la capture j'ai choisi pour le combo : voiture -> tipo et que la valeur afficher est techniquement bonne mais j'ai une erreur de .value 380

je n'arrive pas à comprendre pourquoi si je fait voiture->tipo parfois cela marche et parfois j'ai l'erreur.

en essayant de tester je remarque que si je choisis voiture->tipo en 1er cela peut fonctionner mais si j'ai choisi un autre modele avant et que je change d'avis (choisir tipo) cela plante.

j’espère que cette fois cela sera plus simple pour trouver le problème.

merci

erreur

BOnjour,

Essais avec ce code :

Private Sub combo_modele_Change()

    Dim NomRange As String

    combo_immat.Value = ""

    NomRange = CaracSpec(Combo_modele.Value)
    combo_immat.Clear
    If NomDefini(NomRange) Then
        If Range(NomRange).Rows.Count > 1 Then
            combo_immat.List = Application.Transpose(Range(NomRange))
         Else
            combo_immat.AddItem Range(NomRange)
         End If
    Else
        combo_immat.AddItem """Aucun véhicule"""
    End If

End Sub

AHHHH, nickel ça marche mais j'ai rajouté une ligne car les valeurs se cumulent

encore merci.

Private Sub combo_modele_Change()

    Dim NomRange As String

    combo_immat.Value = ""

    NomRange = CaracSpec(Combo_modele.Value)
    combo_immat.Clear
    If NomDefini(NomRange) Then
        If Range(NomRange).Rows.Count > 1 Then
            combo_immat.List = Application.Transpose(Range(NomRange))
         Else
            combo_immat.clear ' remise à zéro de la combo car les valeurs se cumulaient
            combo_immat.AddItem Range(NomRange)
         End If
    Else
        combo_immat.AddItem """Aucun véhicule"""
    End If

End Sub

Bonjour

une autre solution uniquement en vba

A voir

13test-2.xlsm (29.82 Ko)

A+

Maurice

Rechercher des sujets similaires à "erreur combo plages dynamiques"