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

XL 2016 boutons modifier et supprimer des enregistrements

jorge1201

XLDnaute Occasionnel
Bonjour le forum,

J'essaie de finaliser ma base de données "recettes de cuisine". Cette base fonctionnera sur 4 modes : Consultation, Ajout, Modification et Suppression. Actualmente, je suis confronté à un problème que je ne sais pas résoudre sans aide : le code nécessaire pour faire fonctionner les boutons "modifier" et "supprimer".

Quelques explications:
- La feuille "DataBase" contient les recettes (1 ligne = 1 recette). La feuille "Listes" contient les 2 listes de catégories préétablies.
- La frame "frmRecherche" contient les 3 ComboBox (cboCategorie1, cboCategorie2 et cboNomRecette) qui permettent d'effectuer une recherche sur la feuille DataBase. Elle sera visible lorsque le formulaire est en mode consultation, modification et suppression.
- La frame "frmRecette" contient les 2 ComboBox (cboCat1 et cboCat2) qui permettent, en mode ajout et modification, de définir les catégories préétablies.
- Ces deux derniers ComboBox( cboCat1 et cboCat2) sont superposés aux TextBox1 et TextBox2. Ils seront visibles en alterné selon le mode utilisé.

En pièce jointe vous trouverez un extrait de ma base et j'espère pouvoir bénéficier de la connaissance d'un passant du forum. Je reste à disposition pour toute question supplémentaire que vous jugerez nécessaire. Merci d'avance. Jorge.
 

Pièces jointes

  • GestionRecettes_Extrait_V1.xlsm
    63.7 KB · Affichages: 15

job75

XLDnaute Barbatruc
Bonjour jorge1201,

Voyez le fichier joint, je me suis contenté de corriger les codes des 3 boutons Valider.

Et j'ai mis une formule en colonne A de la feuille DataBase.

Il faudrait faire en sorte qu'on ne puisse pas modifier les textes des catégories.

Pas compris pourquoi il y a TextBox1 et TextBox2 recouvrant les ComboBox cboCat1 et cboCat2...

Edit : bonjour fanfan38 et fanch55.

A+
 

Pièces jointes

  • GestionRecettes_Extrait_V1.xlsm
    61.2 KB · Affichages: 7
Dernière édition:

jorge1201

XLDnaute Occasionnel
Re le forum, bonjour fanfan38, fanch55 et job75
Merci pour vos réponses. Je vais tester vos propositions et je reviendrais vers vous ensuite.

Job75: Les TextBox 1 et 2 sont visibles lorsque le formulaire est en mode Consultation et Suppression. En mode Ajout et Modification j'ai besoin que les ComboBox (cboCat1 et cboCat2) soient visibles afin de pouvoir définir les catégories (s'il s'agit d'un nouvel enregistrement) ou de les modifier (s'il s'agit d'un enregistrement existant).
Merci encore.
 

jorge1201

XLDnaute Occasionnel
Bonjour le forum, fanfan38, fanch55 et job75,
Désolé pour le retard mis pour répondre, actuellement je suis un peu débordé.
J'ai testé vos propositions et elles fonctionnent toutes. Vous êtes vraiment des chefs!

J'ai effectué quelques petites modifications pour conserver les deux ComboBox (cboCat1 et cboCat2) afin de pouvoir choisir les catégories lors d'un nouvel enregistrement et éventuellement d'en choisir des nouvelles lors d'une modification. Les TextBox 1 et 2 sont utilisés en modes Consultation et Suppression.

Quant à la numérotation automatique de la colonne A feuille DataBase (R000) j'ai opté pour le code ci-dessous qui fait parfaitement l'affaire.

Sub Incremente()
Dim increm
Dim i As Integer

i = Range("A65536").End(xlUp).Row + 1
increm = Format(Right(Range("A" & i - 1), 3) * 1 + 1, "000")
Range("A" & i).Value = "R" & increm
End Sub


J'ai intégré la macro "Incremente" dans le bouton de validation d'une nouvel enregistrement et le tour est joué. Je sais, on pourrait faire mieux mais au vu de mon niveaux de connaissance ... L'important c'est qu'elle fonctionne.

Je tiens à vous remercier pour votre disposition et votre inventive dynamique et positive. La prochaine étape sera celle de coder les boutons de navigation mais pour cela je reviendrai sur le forum prochainement avec un projet plus abouti. Bonne journée. Salut et merci encore.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…