XL 2016 Problème VBA pour débutant

  • Initiateur de la discussion Initiateur de la discussion spv414052
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

spv414052

XLDnaute Nouveau
Bonjour,
Pour un suivi au plus proche de notre consommation de matériel de premiers secours, j'essaie de développer par le biais de différents tutoriel un outils simple d'utilisation et pas compliquer à développer en VBA (je débute).

J'ai créé le masque de saisie dans lequel, nous pourrons ajouter, quitter sans sauvegarder la saisie en cours et modifier. Pour les deux premiers item cela fonctionne mais pour modifier une intervention déjà saisie j'ai une erreur que je n'arrive pas à résoudre.
Est-ce que quelqu'un pourrait m'aiguiller?

D'avance je vous remercie et bonne soirée.

Spv414052
 

Pièces jointes

Re @spv414052, @JM27 🙂

Pour ce type de gestion, il faut identifier l'intervention de manière unique.
  • En création lui attribuer un Identifiant nouveau qui n'a pas encore été utilisé ou bien un identifiant qui existe déjà ailleurs et qui lui est unique (par exemple le n° d'inter dans une autre base)
  • En modification (ou suppression) utiliser son identifiant unique pour repérer la ligne à modifier (ou supprimer)
Dans votre base, la date ne représente pas l'identifiant unique (3 inter distinctes avec la même date). Il y a bien un numéro en colonne qui "pourrait" faire office d'identifiant. Il faut d'abord élucider ce problème d'identification unique.
 
Bonsoir pour compléter ce que dis @mapomme

il faudrait aussi en mode modification, préalablement charger les données déjà saisies sur la ligne a modifier.
attention des textbox renvoient des données textes , donc tes données numériques ou dates seront saisie en texte ( il faut les convertir)
 
Dernière édition:
re
bonsoir a tous
j’ajouterais que remplir ta combo de selection avec les date en colonne "A" n'a absolument aucuns sens sachant qu'il peut avoir 36 dates identiques
comment va tu faire pour choisir la bonne ligne, tu va toute les passer en revue jusqu’à trouver la bonne!!!!????

passer par la colonne "B" me parait plus judicieux non???

ouvre le module du userform efface tout et recommence a zero en réfléchissant un peu plus conceptuellement parlant
😉
 
Bonjour @spv414052 , @mapomme , @JM27 et aussi @patricktoulon

Oui pour JM27 c'est une bonne approche de dissocier l'Ajout de la Modification.
Moi j'ai tenté de respecter la logique de spv414052 et surtout de rester dans son style de programmation de débutant.

En fait dans mon approche c'est exactement son formulaire qui fera les deux "Ajout" ou "Modif", je pense avoir fait le tour des effets secondaires, mais il se peut qu'il y ait toujours un bug ou deux !

Et comme judicieusement signalé par jm27, en effet la TextBox retourne des Dates en format Texte (c’est toujours galère en FR), mais bon pour l'instant on verra si cette version fait avancer le schmilblick et reste à la portée de @spv414052, je me suis efforcé aussi de mettre les commentaires explicatifs.
Bien à vous
@+Thierry
 

Pièces jointes

Bonjour
a tester
Regardes du coté de la propriété tag de chaque champs ( c'est la clé des transferts des données dans la feuille intervention)
Dans le tag est rangé la colonne de destination de la donnée et le type de donnée à transmettre( le tout étant séparé par un tirait ,nécessaire pour la fonction split)
 

Pièces jointes

Dernière édition:
bonjour
ma conception de la simplicité 😉
les textboxs ont comme nom la lettre de la colonne
au départ :

les boutons(ajouter/modifier) sont bloqués

la date du jour dans le textbox (il s'appelle "A" maintenant )

si tu choisi un numéro d'inter les textboxs se remplissent avec la ligne de ce numéro et le bouton modifier est débloqué

si tu tape un numéro qui n'existe pas dans la combo c'est le bouton ajouter qui est débloqué et le bouton modifier est bloqué

si tu vide la combo tout est (clear) et date du jour pour future entrée et les deux boutons bloqués

quand tu click sur ajouter ou modifier un contrôle (produit/Qté) est effectué
et un message te dis explicitement ou t'a zappé la quantité

voila ajouter et modifier peuvent très bien cohabiter 😉

ps: bien entendu les format des données transférées sont respectés 😉
 

Pièces jointes

Dernière édition:
Bonjour @patricktoulon

L'idée est interressante je viens d'essayer, mais il semble que quelque chose cloche en mode ajout d'un nouvel item , j'ai une erreur 438, "Object doesn' support this property or method" et met en highlight sur ligne 11 :
Case Else: Me.Controls(x(cc)).Value: (x à la valeur 'C', et cc a la valeur '2')

En mode modification cela fonctionne.

Testé sous Excel 2013 Windows 8.1 Version US / Régional Settings FR (ce que j'ai sous la main)

@+Thierry
 
Re-bonjour Patrick,

Je suis certain que calà fonctionne chez toi, tu as très certainement bien testé avant de poster.
Mais donc idem : Office Pro Plus 32 Bits (mais donc version US)
Et Windows 8.1 Pro 64 (et version US aussi)

Je ne crois plus avoir une seule machine Win/Office FR sous la main, mais pour identifier un Control celà ne devrait avoir aucune incidence... Encore une bizarerie...

Je vais voir depuis une autre machine dès que je peux...
@+Thierry
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour