Formulaire VBA - Problème de ligne

Diblanca

XLDnaute Nouveau
Bonjour,

Voila je ne suis pas expert en VBA (loin de là) mais je trouve ça vraiment interressant dans le pratique et dans l'utilisation des outils après.
Mais voila, jusqu'à là, j'essayais de me débrouiller avec les questions des différents internautes sur les forums ou les tutoriels... mais je me retrouve KEBLO !

Je réalise un document de gestion des stocks. J'ai créé (enfin j'essaye) des formulaires de saisies pour les différents onglets pour protéger les données et controler la saisie.

Formulaire = VBA = wahou... c pas facile facile.

Mon problème :
Le formulaire marche 1 combobox, 7 textbox. La saisie marche bien par contre en visualisation lorsque je selectionne un fournisseur dans ma combobox, s'affiche dans les textebox la ligne (n-2).
Je n'arrive pas à trouver la raison et surtout la solution.
Est ce que qqun aurait une réponse?
 

Pièces jointes

  • Gestion stock MD.xlsm
    251.4 KB · Affichages: 51

Paf

XLDnaute Barbatruc
Re : Formulaire VBA - Problème de ligne

Bonjour

ComboBox1.ListIndex pour le premier élément de la liste de la Combobox vaut 0

Ce premier élément dans la feuille Fournisseurs est en ligne 3.

Dans Private Sub ComboBox1_Change() on a le code suivant afin de retrouver la ligne correspondant dans la feuille de l'élément selectionné.
Code:
 Ligne = Me.ComboBox1.ListIndex + 1

Or, pour le premier élément :ComboBox1.ListIndex = 0 , puis + 1=> résultat :1. donc un décalage de 2, puisqu'on devrait avoir 3

il faudrait :
Code:
 Ligne = Me.ComboBox1.ListIndex + 3

Bonne suite
 

Diblanca

XLDnaute Nouveau
Re : Formulaire VBA - Problème de ligne

Merci Paf ! ca fonctionne bien.
J'essaye de faire un bouton de commande pour Supprimer une ligne ... ca supprime mais pas vraiment la ligne correpondante au fournisseur selectionné dans le combo box.
Si jamais vous avez une solution.
 

Pièces jointes

  • Gestion stock.xlsm
    268.5 KB · Affichages: 51
  • Gestion stock.xlsm
    268.5 KB · Affichages: 55
  • Gestion stock.xlsm
    268.5 KB · Affichages: 59

Paf

XLDnaute Barbatruc
Re : Formulaire VBA - Problème de ligne

Re bonjour,

dans le cas de la suppression (Private Sub CommandButton4_Click() ), on trouve le même soucis de décalage.
Et en plus :
- une erreur de frappe :
Code:
If Me.ComboBox1.ListIndex = 1 Then Exit Sub
c'est à dire que si l'on choisit le deuxième fournisseur on sort de la sub sans autre action.
Au lieu de 1 ( 2ème ligne sélectionnée) mettre -1 (aucune ligne sélectionnée)

- après avoir déterminer le N° de ligne (avec décalage) en vue de sa suppression ( Ligne = Me.ComboBox1.ListIndex) on lance une boucle de 1 à 7 qui va supprimer la ligne courante( 7 fois donc!), n'ayant pas forcément rapport avec la ligne du fournisseur!

une fois déterminer le N° de ligne (cf Pb de décalage) supression de la boucle puis:
Code:
 Rows(Ligne).Delete shift:=xlUp

Bonne suite
 
Dernière édition:

Discussions similaires

Réponses
9
Affichages
203

Statistiques des forums

Discussions
312 386
Messages
2 087 855
Membres
103 671
dernier inscrit
rachid1983