Bonjour à tous,
j'ai identifier la cause du problème et ai trouver un contournement ne résolvant pas dans les règles de l'art (si je peux me permettre ce terme).
Voici le topo :
Sur une feuille "Stock", il y a 3 tableaux structurés "BaseNeutre" "Nicotine" "ARO"
Le formulaire "Select_Produits" permet de sélectionner le type de produits correspondant au tableau cible pour afficher
le formulaire "Add_Product" dont certains champs s'affiche selon le type de produit.
Le formulaire permet d'introduire plusieurs articles pour une commande, puis afin ajouter les frais de port via le bouton Fermer
Explication du phénomène de l'erreur "La méthode 'add' de l'objet 'ListRows' à échoué"
ligne mise ne cause --> Set list_row_sARO = list_obj_sARO.ListRows.Add dans Private Sub BT_Ajouter_Click()
1 - cas de figure :
--------------------
Ouverture fichier .xlsm
clic bouton noir "Ajouter un produit"
Sélection BaseNeutre
Remplissage formulaire "Add_Product"
Bouton Fermer - introduire frais
la ligne est ajoutée au tableau cible
fermer le fichier
2 - cas de figure :
--------------------
idem pour Nicotine (pas de soucis)
fermer le fichier
3 - cas de figure :
--------------------
idem pour BaseNeutre puis Nicotine (pas de soucis)
fermer le fichier
4 - cas de figure :
--------------------
Uniquement Arome alors erreur apparaît
5 - cas de figure :
--------------------
Ajout BaseNeutre ou Nicotine
puis Arome
alors pas d'erreur
Selon mes connaissance de débutant, j'en déduits que la routine pour Arome est ok!
dans Private Sub BT_Ajouter_Click(), j'ai ajouter, en tout premier le code ci-dessous pour ajouter une ligne vide dans le tableau structuré "BaseNeutre"
Cela fonctionne parfaitement.
Cela signifie aussi que je n'identifie pas clairement le soucis
trouver le fichier joint, pour ceux qui aurai le temps pour m'aider à résoudre le problème
merci d'avance de votre temps
j'ai identifier la cause du problème et ai trouver un contournement ne résolvant pas dans les règles de l'art (si je peux me permettre ce terme).
Voici le topo :
Sur une feuille "Stock", il y a 3 tableaux structurés "BaseNeutre" "Nicotine" "ARO"
Le formulaire "Select_Produits" permet de sélectionner le type de produits correspondant au tableau cible pour afficher
le formulaire "Add_Product" dont certains champs s'affiche selon le type de produit.
Le formulaire permet d'introduire plusieurs articles pour une commande, puis afin ajouter les frais de port via le bouton Fermer
Explication du phénomène de l'erreur "La méthode 'add' de l'objet 'ListRows' à échoué"
ligne mise ne cause --> Set list_row_sARO = list_obj_sARO.ListRows.Add dans Private Sub BT_Ajouter_Click()
1 - cas de figure :
--------------------
Ouverture fichier .xlsm
clic bouton noir "Ajouter un produit"
Sélection BaseNeutre
Remplissage formulaire "Add_Product"
Bouton Fermer - introduire frais
la ligne est ajoutée au tableau cible
fermer le fichier
2 - cas de figure :
--------------------
idem pour Nicotine (pas de soucis)
fermer le fichier
3 - cas de figure :
--------------------
idem pour BaseNeutre puis Nicotine (pas de soucis)
fermer le fichier
4 - cas de figure :
--------------------
Uniquement Arome alors erreur apparaît
5 - cas de figure :
--------------------
Ajout BaseNeutre ou Nicotine
puis Arome
alors pas d'erreur
Selon mes connaissance de débutant, j'en déduits que la routine pour Arome est ok!
dans Private Sub BT_Ajouter_Click(), j'ai ajouter, en tout premier le code ci-dessous pour ajouter une ligne vide dans le tableau structuré "BaseNeutre"
Cela fonctionne parfaitement.
Cela signifie aussi que je n'identifie pas clairement le soucis
VB:
....
If Nom_Tableau = "ARO" Then
' Ajout une ligne vierge afin d'éliminer le plantage d'écriture sur le tableau ARO, s'il est sélectionnée en 1er.
' Symptôme de l'erreur - "La méthode 'add' de l'objet 'ListRows' à échoué"
' Si l'on ajoute une BaseNeutre ou une Nicotine puis Arome, alors pas de soucis
' Si l'on ajoute diretement une Arôme alors messahe erreur
With Sheets("Stock").ListObjects("BaseNeutre")
'ajout d'une ligne vierge en fin du tableau
.ListRows.Add
End With
....
trouver le fichier joint, pour ceux qui aurai le temps pour m'aider à résoudre le problème
merci d'avance de votre temps