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

Boucle formulaire excel

  • Initiateur de la discussion Initiateur de la discussion Katou1604
  • 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 !

K

Katou1604

Guest
Bonjour à toutes et à tous.

Je suis en train de développer un petit programme de gestion d'une base de données.
Je suis novice en VBA et souhaiterais un petit peu d'aide sur une boucle que je n'arrive pas à faire[/B].

Comment puis-je adapter les codes ci-dessous pour que ceux-ci s'éxécutent sur toute ma colonne (ceux-ci fonctionnent très bien... mais sur une seule cellule de ma colonne)?

Je souhaiterais que le calcul soit effectué sur TOUTES les cellules de ma colonne.

Ce que ces codes me permettent de faire : calcul de la différence en nombre de jours entre deux dates (=2 TextBox) et répercussion du résultat (= 1 TextBox).
Lorsque je change une date dans mes TextBox le résultat est automatiquement recalculé.


Dans mon formulaire :

Dans "Microsoft Excel Objets" --> feuil1 (TABLEAU DE BORD)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim MaPlage As Range
Set MaPlage = Application.Intersect(Target, Application.Union(Range("ET223:EU223"), Range("FK223")))
If Not MaPlage Is Nothing Then
TDB.NBJOURRETOURBALMA.Value = Range("EV223")
End If
End Sub



Dans "Feuilles" --> TDB

Private Sub UserForm_Initialize()
RECEPTION_BALMA.ControlSource = "ET223"
RETOUR_BALMA.ControlSource = "EU223"
With Worksheets("TABLEAU DE BORD")
Range("EV223").Formula = .Range("FK223")
Range("EV223").Value = .Range("EV223").Value
End With
NBJOURRETOURBALMA.Value = Range("EV223")
End Sub


J'espère avoir été suffisamment explicite.

Avec tous mes remerciements pour votre aide.
 
Re : Boucle formulaire excel

Re

J'ai testé ton code... et, ça m'a donné plein d'autres idées pour mon formulaire.
C'est déjà ça de gagné 😉

Pour le reste, j'ai encore du mal à voir clair sur où se situe le problème...
Le calcul doit s'effectuer sur TOUTES les cellules de la colonne EV.
Si c'est cela il suffit d'insérer la formule de calcul.

Autre sugestion pour ton userform:
Code:
Private Sub UserForm_Initialize()
RECEPTION_BALMA.ControlSource = "ET2"
RETOUR_BALMA.ControlSource = "EU2"
NBJOURRETOURBALMA.Value = Val(RETOUR_BALMA) - Val(RECEPTION_BALMA)
End Sub
donnera aussi 11 dans le TextBox
 
Dernière édition:
Re : Boucle formulaire excel

Bonjour Katou,
j'ai examiné un petit peu les macros enregistrées dans le fichier que tu nous as joint.
tout d'abord, il semble qu'il manque une macro dans le module 2 (qui si j'ai bien compris, et avec un bouton qui devrait être ajouté sur le Userform TDB, doit permettre de réduire le formulaire (qui est un peu grand pour mon écran :-())
ensuite, il semble que à chaque fois que tu saisis un nouvel enregistrement, ou que tu modifies l'un d'eux, le calcul est fait systématiquement pour la ligne traitée.
je ne comprends donc pas pourquoi il y a besoin de faire le calcul sur toute une colonne (la colonne EV2 je suppose).
S'il s'agit de refaire le calcul pour les données déjà enregistrées, il suffit de sélectionner la cellule EV2 et de "tirer" la formule jusqu'à la fin du tableau pour cette colonne.
Sinon je n'ai pas compris (ce qui est probable).
bonne fin de journée
 
Re : Boucle formulaire excel

Bonjour Jacou à toi aussi...

S'il s'agit de refaire le calcul pour les données déjà enregistrées, il suffit de sélectionner la cellule EV2 et de "tirer" la formule jusqu'à la fin du tableau pour cette colonne.
Sinon je n'ai pas compris (ce qui est probable).
Au moins on est deux 😉
 
Re : Boucle formulaire excel

Bonjour.

Le fichier que je vous ai joint permet effectivement de faire le calcul tout simplement.... "pourquoi faire compliqué quand on peut faire simple ?"

Pour autant, mon original ne me le permet pas.... et je n'arrive pas à comprendre pourquoi.

Impossible d'entrer un format "date" dans mes deux textbox et impossible d'obtenir un "nombre" en résultat --> tout sort en format "texte". Donc, une fois le calcul effectué, je ne peux plus modifier celui-ci car le texte reste figé dans ma textbox.

Je me casse donc bien la tête.... et, la vôtre par ricochet, pour trouver une boucle qui finalement est compliquée à mettre en place à distance... alors que la solution doit être toute simple.

Finalement, ma question est : "comment insérer une date au format date et obtenir un résultat en format nombre" ? Je pense quele reste suivra....

UN TRES TRES GRAND MERCI pour le temps que vous passez à me donner un coup de main.

Katou
 
Re : Boucle formulaire excel

Bonjour à tous


Katia (c'est plus court à écrie que que Katou1604 😉)
As-tu vu mon petit bout de code ici ?
https://www.excel-downloads.com/threads/boucle-formulaire-excel.220652/

Impossible d'entrer un format "date" dans mes deux textbox et impossible d'obtenir un "nombre" en résultat
Certains de TextBox ont leur propriété Locked sur True
Les mettre sur False pour pouvoir les modifier.
(Pour ce faire dans VBE,sélectionne ton Userform puis appuie sur F4 (-> affiche la Fenêtre Propriétes) puis sélectionne tes TextBox pour mettre à False.)
 
Dernière édition:
Re : Boucle formulaire excel

Bonjour.

Grâce à vos remarques, j'ai enfin trouver la solution (pourquoi faire simple lorsque l'on peut faire compliquer ?... et bien, c'est bien ce que j'ai tenté de faire !!!

Les calculs dans mes textbox fonctionnent à merveille et sans boucle !!!
Pour autant, il va sérieusement falloir que je m'y mette car cela reste encore un peu flou pour moi.

Un très très très grand merci pour votre aide et votre réactivité.... un vrai plaisir.

Excellente semaine.
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
9
Affichages
508
Réponses
21
Affichages
1 K
Réponses
2
Affichages
582
  • Question Question
Microsoft 365 modifier un code
Réponses
1
Affichages
541
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…