XL 2013 concevoir un userform de données

ivgu19

XLDnaute Junior
Bonjour le forum,
faire des petits bouts de code mais les mouliner ensemble ce n'est pas facile pour réaliser un projet.
A partir d'un userform (voir fichier) je recherche de l'aide pour coder en VBA:
saisir le textbox1 "nouvel index" et vérifier l'entrée (réalisé )
afficher le textbox5 "ancien index" (réalisé pour 1)
afficher le textbox9 "conso"
afficher le textbox13 "remarque" (comparaison à voir plus tard)
positionner le focus sur le "nouvel index" suivant
recommencer (4 fois sur 50)
cmdValider remplit les colonnes I,H,G
enregistre le claseur
 

Pièces jointes

  • transfert données.xls
    56 KB · Affichages: 60
  • transfert données.xls
    56 KB · Affichages: 65

ivgu19

XLDnaute Junior
Re : concevoir un userform de données

Bonsoir Bebere,
veuillez excuser mon absence et ma mauvaise explication
Je vais vous décrire les actions que le codage pourrait excécuter (si c'est réalisable?)
-A l'ouverture de l'USF les textbox sont vides.
dans une boucle on reproduit les lignes ci dessous (dans l'essai 4 fois)
1-le focus est positionné sur le textbox 1
2-je saisis une valeur dans le textbox 1 (relevé compteur d'eau)
3-le textbox 5 prend alors la valeur de la cellule de J2 devenu ancien index(suite à l'insertion d'une colonne(9))
4-le textbox 9 prend la valeur de txt1 moins txt5 (conso 2015 - 2014)
5-le textbox 13 prend la remarque (par ex 1)
le bouton cmdValider remplit les colonnes I,H,G de la feuille essai puis enregistre le classeur
merci de votre solution
ivgu19
 

ivgu19

XLDnaute Junior
Re : concevoir un userform de données

Bonjour Bebere,
Il est bien ce code et pour être parfait, je vous demande, si vous avez encore un peu de temps à me consacrer, que le point 5
prenne la valeur de la précédente consommation .
Ainsi en introduisant 1 Msg on pourrait comparer ces 2 valeurs ( toute première formulation) par ex si conso plus grande que 1,5 conso précédente="ouyouyouille" .
Enfin pouvez-vous introduire des boucles car dans le projet final il me faudra l'adapter pour 50 relevés d'index.
Par avance merci et bonne journée
@+
 

ivgu19

XLDnaute Junior
Re : concevoir un userform de données

Bonjour Bebere,
Je préfère un message du genre
si conso > 50% conso précédente alors "conso importante"
sinon si conso + ou - 10% conso précédente alors "RàS"
sinon si conso = conso précédente alors "non utilisée"
sinon si conso < conso précédente alors "erreur"
Ainsi avant de passer à la ligne suivante on a ce genre d'information
A+
 

ivgu19

XLDnaute Junior
Re : concevoir un userform de données

Bonjour Bebere,
je n'arrive pas à trouver l'erreur 13 provoquée dans le code du module 1.
Peux-tu rajouter,avant le transfert par le cmd, un contrôle sur le remplissage des textbox "Nouveau index" avec un message d'alerte.
Cordialement
 

Pièces jointes

  • Calanques_conso.xls
    256 KB · Affichages: 58

Bebere

XLDnaute Barbatruc
Re : concevoir un userform de données

bonjour Ivgu
tu insères la colonne nouvel index en J(avant en i)
de ce fait l'ancien index est en K(me("textbox" & i+45)= j qui est vide
une question les chiffres de l'userform (à gauche des textbox nouvel index)ont ils un rapport avec ceux de la colonne A
si oui il faut rechercher la ligne où ils se trouvent
 

ivgu19

XLDnaute Junior
Re : concevoir un userform de données

bonjour Bebere,
ok, j’insérais la colonne en 10 au lieu de 9.
Pour répondre à ta question le chiffre à gauche des textbox sont les repères des compteurs. La col A affecte un n° d'ordre pour regrouper des lots, relation avec l'usf1 ( bâtiment A, bat B, service), la col B affecte un n° d'ordre pour suivre la position des compteurs dans le bâtiment, relation avec l'usf4.
J'ai passé le code d'alerte sur les 20% en commentaire car pas justifié (c'est le cas général)
Pour les alertes, il me semble que tu les traites à partir des index alors que je parlais de conso dans mon message(le résultat n'est pas le même).
Ne voulant pas bidouiller le code, je te retourne le fichier car les 6 heures passées dessus n'ont rien produit.
Bonne soirée l'ami
 

Pièces jointes

  • Calanques_consoV2.xls
    217 KB · Affichages: 35

ivgu19

XLDnaute Junior
Re : concevoir un userform de données

re,
j'ai adapté les copie TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean) et apprécié l'affichage à l'ouverture de usf.
cependant, j'ai un souci avec la condition : If c >= CDbl("0,50") Then MsgBox "consommation importante" du module 1.
L'alerte ne correspond pas à 50% de la conso précédente
Pour moi : si 'c' est la nouvelle conso et 'b' l'ancienne je vois qq chose comme c >= b * 1.5 à mettre en musique. Es-tu d'accord avec ce raisonnement
exemple: quand b=10 et que je fais en sorte d'avoir 15 en c, je n'ai pas d'alerte.
c'est sans doute le dernier réglage à effectuer pour que tout aille bien.
Merci de ta patience
 

Statistiques des forums

Discussions
312 195
Messages
2 086 082
Membres
103 112
dernier inscrit
cuq-laet