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

terpick

XLDnaute Occasionnel
Salut, Forum!
J'ai déposé mon fichier avec UserForm il y a qques jours.

https://www.excel-downloads.com/threads/userform-pour-les-tableaux-flottants.157162/

N'ayant pas de réponses, n'ayant pas trouvé la solution par moi-même non plus, je me simplifie la tâche.
Mais même en faisant cela, j'ai des questions.
Quand j'ajoute une ligne dans les tableaux (les tableaux non pas de position fixe), pourquoi les cellules de cette ligne ajoutée ne prennent que les formats, mais pas des formules des cellules au-dessus?
Je n'arrive pas non plus à identifier le message d'erreur dans le cas si l'utilisateur se trompe dans la saisie d'une mission.
Pour mettre en couleur la ligne si colonne 'J' = 'à régler', j'ai décidé de créer un bouton d'actualisation. Mais peut-être quelqu'un a une solution automatique?
Merci à toutes et à tous.
 

Pièces jointes

Dernière édition:
Re : ajouter une ligne

Bonjour,
En fait je pense que le problème vient du fait que ce que tu appelles "tableau" n'en est pas un, mais une simple plage de données.
Pour que les lignes créées reprennent les formules de ta plage, tu dois déclarer ta plage en tant que tableau (une liste sous excel 2003 (je crois que c'est données=>liste).
Tu pourras ainsi y insérer une ligne de sous-totaux, des filtres,... et les lignes insérées dans ce tableau seront prises en compte comme celles déjà existantes.
A+
 
Re : ajouter une ligne

Bonjour terpick,

En modifiant ainsi ta macro, tu devrais obtenir satisfaction :

Code:
Sub mission()

reponse = InputBox("Nom de la mission")
If reponse = "" Then Exit Sub

n = Range("B:B").Find(reponse, LookIn:=xlValues, lookat:=xlWhole).Row + 1
Cells(n, 1).EntireRow.Insert
Range("E" & n).Formula = "=D" & n & "*montanthoraires"
Range("G" & n).Formula = "=D" & n & "*F" & n
Range("I" & n).Formula = "=H" & n & "*G" & n
End Sub

Espérant avoir répondu.

Cordialement.

PS : bonjour david84
 
Re : ajouter une ligne

Bonjour, Papou-net, David84 et salut le Forum!
C'est vraiment magique !

Dans le fichier précédent je voulais faire rentrer les données dans cette ligne avec aide de UserForm, mais je n'ai pas trouvé comment diriger Excel dans les cases correspondantes. Tant pis, maintenant, je pense, c'est plus ergonomique.

Par contre, avez-vous une solution pour afficher le message d'erreur, si l'utilisateur se trompe dans la saisie de la mission?

Merci d'avance

A +
 
- 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

Discussions similaires

Réponses
2
Affichages
152
  • Question Question
Microsoft 365 Tableau
Réponses
24
Affichages
2 K
Réponses
4
Affichages
243
Retour