Bonjour Lone-wolf, quel boulot tu as accompli, merci beaucoup. Le code est plus lisible et la façon d'utiliser le formulaire est claire. Cependant, j'ai relevé deux soucis (accepterais-tu d'y jeter encore un coup d'œil?):
1. A partir du formulaire de base frmContacts, le clic sur "créer un contact" s'arrête ici si je n'ai pas sélectionné de contact:
Dim Buttons(1 To 56) As New ColorButtonClass
Si j'ai sélectionné un contact, il s'arrête ici (donnée introuvable):
Private Sub CmdNouveau_Click()
frmModifContacts.Show
frmModifContacts.CmdValider.Visible = True
End Sub
=> CmdValider : où est-il? car le code s'arrête et je ne parviens pas à le modifier pour qu'il créer le contact.
2. Une fois un contact à modifier sélectionné, le second formulaire s'ouvre. Ici, il n'appelle pas les corps de métier ni les travaux proposés que tu as créés (très belle amélioration du service, soit écrit en passant). Par contre, si je modifie le contact en ajoutant un choix dans les combobox, ceux-ci sont bien reportés dans la feuille de données. Si je n'ajoute pas de choix, les données initiales des colonnes concernées sont donc logiquement effacées. Le problème est donc à l'initialisation du formulaire. Si je comprends bien la démarche, le formulaire "frmModifcontacts" vient puiser ses données dans ce qui vient d'être affiché dans le premier formulaire "frmcontacts". Là, je ne vois pas où se trouve le problème dans le code, pourtant il doit y en avoir un.
2. b) Sur ce second formulaire, le bouton "modifier" pose problème lorsqu'on modifie le nom de la société (il fonctionne pour les autres données). Voici l'erreur d'exécution 13 - incompatibilité de type et la ligne du code problématique:
.Cells(rw, col) = Controls("TextBox" & col). Pourtant, cela fonctionne avec les autres données. Est-ce parce qu'il faut garder le même nom pour cette cellule?
Tes modifications sont importantes et judicieuses, merci.
Lorsqu'on a modifié le contact, le formulaire de base est toujours affiché. Comment peut-on le laisser afficher mais en effaçant toutes les données pour qu'il soit vierge?
En tout cas, un tout grand merci pour cette amélioration.