Erreur d’exécution ‘’ 380 ‘’ - Impossible de définir la propriété List

Bonjour,

Tout d’abord, un grand merci à toutes les personnes qui œuvrent pour que ce Forum vive.

J’ai quelques notions en tant qu’utilisateur d’ Excel, mais novice en matière de langage VBA.

En m’inspirant des différents modèles proposés par Mr jacques Boisgontier (que je remercie), j’ai réalisé une petite application pour la gestion des adhérents de l’association dont je fais partie. Tout fonctionne parfaitement lorsque la feuille Excel comporte au moins deux lignes renseignées. Dans le cas contraire la procédure renvoie le message :

Erreur d’exécution ‘’ 380 ‘’ – Impossible de définir la propriété List. Valeur de propriété non valide

Je suppose que l’anomalie provient du paragraphe suivant :

'------Initialisation de la Base de Données---------

Private Sub UserForm_Initialize()
Set f = Sheets("SOCI")
lignefin = f.[A500].End(xlUp).Row

If lignefin > 2 Then
Clé = Application.Transpose(f.Range("A2:A" & lignefin).Value)
Else
If lignefin = 2 Then Me.CléCherchée.AddItem f.Range("A2")
End If
Me.CléCherchée.List = Clé

B_ajout_Click

End Sub

Dans le cas ou l’anomalie proviendrait d’une autre procédure, je joins le fichier DEBUG.XLSM, avec un Userform restreint.

Je vous remercie par avance pour votre aide

Cordialement

14debug.xlsm (124.92 Ko)

Louis

bonjour VBALdo et bienvenu,

je n'ai pas vérifié le reste, mais ici une possibilité

Private Sub UserForm_Initialize()
     Set f = Sheets("SOCI")

     lignefin = f.[A500].End(xlUp).Row
     Select Case lignefin
          Case 1: MsgBox "aucune donnée": Exit Sub     'Vide
          Case 2                             '1 ligne
               ReDim Clé(1 To 1)
               Clé(1) = f.Range("A2").Value
          Case Else: Clé = Application.Transpose(f.Range("A2:A" & lignefin).Value)     'plusieurs lignes
     End Select

     Me.CléCherchée.List = Clé
     B_ajout_Click

End Sub

Bonjour Bart,

Merci infiniment pour la rapidité de votre réponse.
J'ai remplacé mon bout de code par le votre et je peux créer des fiches sans problème à condition que la 1ere fiche soit présente sur la feuille Excel.
Cela n'est pas un gros souci et je peux m'en satisfaire.

Par contre, si la feuille Excel est vierge, il apparait un message : Argument ou appel de procédure incorrect sur la ligne CléCherchée.Listindex et l'argument LigneEnreg n'est pas reconnu.
Je suppose qu'il y un décalage au niveau des index mais je n'ai pas encore trouvé la solution. Si vous avez une idée je suis preneur et cela permettra de compléter ma formation.

Cordialement
Louis


'------Recherche d'un adhérent avec la barre de recherche--------

Private Sub CléCherchée_Change()

If Me.CléCherchée.ListIndex = -1 And IsError(Application.Match(Me.CléCherchée, Clé, 0)) Then
Me.CléCherchée.List = Filter(Clé, Me.CléCherchée.Text, True, vbTextCompare)
Me.CléCherchée.DropDown
Else
CléCherchée_click
End If
End Sub

Private Sub CléCherchée_click()

'-----Chargement de toutes les donnée de l'adhérent-------

For i = 1 To UBound(Clé)
If Clé(i) = CléCherchée Then
ligneEnreg = i + 1
Else: ligneEnreg = i

End If
Next i

Me.CléCherchée = f.Cells(ligneEnreg, 1)
Me.Age = f.Cells(ligneEnreg, 2)
Me.Nom = f.Cells(ligneEnreg, 3)
Me.Prénom1 = f.Cells(ligneEnreg, 4)
Me.Nom_Naiss = f.Cells(ligneEnreg, 5)
Me.Date_naissance = f.Cells(ligneEnreg, 6)
End Sub

Bonjour VBAldo et le forum
Pour une simple gestion des adhérents, pourquoi se compliquer la vie.
Voici un exemple avec un Tableau Structuré que j'ai nommé "T_base" dans la feuille BDD.
Cliquer sur le bouton "Appel Formulaire" pour Ajouter, Modifier, Supprimer un enregistrement.
Cdt

Papy Henri

16vbaldo-test1.xlsm (25.84 Ko)

Bonjour AFEH, bonjour le forum,

Effectivement, pourqoi faire simple quand on sait faire compliqué... Comme je le disais en préambule, je suis novice en langage macro (bien que papi moi aussi)
Je vais adapter mon Userform qui est un peu plus complet. Un grand merci à vous deux.
Cordialement
Louis

Bonsoir le forum,

Je souhaite clore une demande résolue, mais je n'ai pas trouvé la fonction pour le faire. Qui peut m'indiquer comment ?

Cordialement
Louis

Bonjour Louis et merci pour ce retour.
En cas de souci pour adapter votre UserForm, ne pas hésiter à reprendre ce fil, même après l'avoir clôturé.
Pour le clôturer:

Voici une version corrigée, qui calcule correctement l'âge.

Papy Henri

15vbaldo-test2.xlsm (26.49 Ko)

Bonjour AFEH,

Merci beaucoup pour vos retours. Je ne manquerai pas de revenir vers vous si besoin.

Cordialement
Louis

Rechercher des sujets similaires à "erreur execution 380 impossible definir propriete list"