Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Code VBA pour bouton "modifier"

ERN

XLDnaute Junior
Bonjour à tous,

Je bloque sur un bouton qui me permets d'enregistrer les modifications apportées à un article de ma base de données.
D'une part ça fait une copie ce qui n'est pas souhaité et d'autre part ça insère la ligne dans mon entête...
Quand on ne s'y connait pas et que l'on pioche à droite à gauche des bouts de code ça donne pas grand chose.
Je vous joins le fichier en question.

Merci d'avance de l'aide que vous pourrez m'apporter.


Voici le bout de code :

Private Sub CommandButton4_Click()
Modif = True
If MsgBox("Confirmez-vous la modification ?", vbYesNo, "Confirmation de modification") <> vbYes Then Exit Sub

ligne = Selection.Row
Range("a" & ligne) = TxtB_1.Value
Range("b" & ligne) = TxtB_2.Value
Range("c" & ligne) = TxtB_3.Value
Range("d" & ligne) = TxtB_4.Value
Range("e" & ligne) = TxtB_5.Value
Range("f" & ligne) = TxtB_6.Value
Range("g" & ligne) = TxtB_7.Value
Range("h" & ligne) = TxtB_8.Value
Range("i" & ligne) = TxtB_9.Value
Range("j" & ligne) = TxtB_10.Value
Range("k" & ligne) = TxtB_11.Value

Unload Me
End Sub
 

Pièces jointes

  • Bdd_fournisseurs - Copie.xlsm
    56.3 KB · Affichages: 23

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour ERN,
Si vous vouliez atteindre la dernière ligne de votre tableau XL, alors c'est :
ligne = Sheets("Bdd").[a65000].End(xlUp).Row et non ligne = Sheets("Bdd").[a1].End(xlUp).Row

Mais si vous voulez modifier la ligne cliquée alors c'est :
ligne = ListBox1.ListIndex + 3
( +3 car votre tableau commence en 3 )
Voir PJ, si j'ai bien tout compris.
 

Pièces jointes

  • Bdd_fournisseurs - Copie.xlsm
    50.5 KB · Affichages: 32

ERN

XLDnaute Junior
Bonjour,

Parfait = c'est exactement ça, et merci pour les explications.

J'en profite pour vos demandez si il est possible dans une ListBox d'avoir la molette de la souris active. Car ça ne fonctionne pas dans mon fichier de base. J'ai juste la barre de défilement qui fait son travail.

Est-ce possible ?

Cordialement,
 

Pièces jointes

  • Bdd_fournisseurs - Copie(1).xlsm
    59.5 KB · Affichages: 21

fanfan38

XLDnaute Barbatruc
Bonjour
Pour modifier une ligne il faut trouver cette ligne
Dans ta macro c'est une nouvelle ligne à la suite
Et on ne peux pas faire de recherche (d'après tes données) il n' y a aucune référence unique...
le mieux serait que toutes les références soient renseignées...
et dans ce cas
ligne = Sheets("Bdd").Columns(6).Find(TxtB_6.Value).Row

A+ François
 

sylvanu

XLDnaute Barbatruc
Supporter XLD

juvaxe

XLDnaute Occasionnel
Bonjour

Pour la souris, voici un exemple de ce qu'il est possible d'implémenter.

Ce que je présente vient de récupération et assemblage d'éléments trouvés sur Internet, notamment sur ce forum.

"Amuse-toi" à passer d'une List box à l'autre et de scroller avec la souris ...

Cdt
 

Pièces jointes

  • VBA_Essai style caption et souris lstbox.xlsm
    40.8 KB · Affichages: 23

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…