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 !
bonjour,
je suis nouveau sur ce forum, j aurais besoin d'aide.
J ai un tableau ou je recueille des problèmes/ actions pour les résoudre.
Mon soucis, c'est que pour un problème je peux avoir plusieurs actions et je ne veux pas mettre toutes les actions dans la même cellule donc je voudrais avoir un bouton (avec une macro derriere) qui me permette de rajouter une ligne en dessous d'une case selectionnée (pour créer une nouvelle action) en fusionnant les premieres colonnes communes. Exemple dans le fichier joint, en jaune ce que je veux avoir en ayant au debut selectionner la case H4 puis cliquer sur le bouton.
Re : macro rajoutant une ligne sous la case selectionnée
Bonjour et bienvenu sur le forum QuentinP38,
quentinp38 à dit:
qui me permette de rajouter une ligne en dessous d'une case selectionnée (pour créer une nouvelle action) en fusionnant les premieres colonnes communes.
Dans ton exemple, en sélectionnant H4, si on rajoute 3 lignes (et non pas une) pour arriver au résultat demandé, ce n'est pas en dessous de H4 mais entre H3 et H4 qu'il faut rajouter les 3 fameuses lignes.
Regarde le fichier ci-joint et dis nous ce que tu en penses.
Re : macro rajoutant une ligne sous la case selectionnée
bonjour excel-lent,
tu as raison mon exemple n 'est pas clair car j'ai mis déjà ce que je voulais. Dans ton fichier, il y a déjà peu de ce que je veux, j ai détaillé au maximum ce que je veux en esperant que cela soit plus clair
Re : macro rajoutant une ligne sous la case selectionnée
Hello QuentinP38
Dans ce cas, le fichier ci-joint te conviendra bien mieux.
Pour information :
-> j'ai figé les 2 premières lignes, ainsi le bouton pour activer la macro sera toujours visible, quelque soit la ligne où tu sois.
-> j'ai bloqué à 4 incidents, comme indiqué dans ton exemple (si tu en as plus, la macro va planter).
Re : macro rajoutant une ligne sous la case selectionnée
Nikel merci bcp, par contre j ai remarqué deux pb, on ne peut pas rajouter d'action si on se trouve sur la derniere ligne remplie (dans notre cas "test 3"), comment peux t on faire pour mettre un maxi de 10 actions.
merci de ton aide.
Re : macro rajoutant une ligne sous la case selectionnée
super , je pense que tu as fait le tours de tous les cas, maintenant il faut que je retranscrit dans mon vrai fichier, j essayerai demain au taf, merci bcp en tout cas de ton aide§.
Just une derniere question dans le code, à quoi sert la boucle ci dessous
For i = 1 To 4
With Selection.Borders(i)
.LineStyle = xlContinuous
End With
Next i
Re : macro rajoutant une ligne sous la case selectionnée
Salut Quentinp38,
Rien de mieux qu'un cas concret simple.
Utilise l'enregistreur de macro :
-> "outils" / "macro" / "nouvelle macro" / Cliquer sur Ok
L'enregistreur de macro est en marche. Excel enregistre maintenant tout ce que tu fais et le traduit en VBA.
-> sélectionne les cellules E10 à G14
-> clic sur le bouton comme indiqué dans sur l'image ci-jointe
Tu peux maintenant arrêter la macro :
-> "outils" / "macro" / "arrêter l'enregistrement"
Si tu regarde le code, tu y verras ceci :
Code:
Sub macro1()
Range("E10:G14").Select
[COLOR="Blue"] Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone[/COLOR]
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
[COLOR="Blue"] .Weight = xlThin
.ColorIndex = xlAutomatic[/COLOR]
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
[COLOR="Blue"] .Weight = xlThin
.ColorIndex = xlAutomatic[/COLOR]
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
[COLOR="Blue"] .Weight = xlThin
.ColorIndex = xlAutomatic[/COLOR]
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
[COLOR="Blue"] .Weight = xlThin
.ColorIndex = xlAutomatic[/COLOR]
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
[COLOR="Blue"] .Weight = xlThin
.ColorIndex = xlAutomatic[/COLOR]
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
[COLOR="Blue"] .Weight = xlThin
.ColorIndex = xlAutomatic[/COLOR]
End With
End Sub
Comme tu le sais peut-être, Excel met plein de trucs inutiles. Une fois les lignes inutiles supprimées (lignes en bleu), tu obtiens ceci :
Code:
Sub macro1()
Range("E12:G19").Select
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
End With
End Sub
Comme tu peux le remarquer, c'est un peu répétitif et encore un peu long!
Ben pour éviter toutes ces répétitions inutiles, on cré une boucle pour raccourcir tout cela :
Code:
Sub macro1()
Range("E12:G19").Select
For i = 1 To 4
With Selection.Borders(i)
.LineStyle = xlContinuous
End With
Next i
End Sub
Tu en conviendras, c'est quand même mieux que le tout premier code, celui donné par excel? Pourtant ces deux codes donnent le même résultat (ainsi que le code intermédiaire évidement).
Re : macro rajoutant une ligne sous la case selectionnée
La mise en application dans mon fichier final n est pas si facile que je pensais:
je te mets mon fichier de travail et voila les problèmes que je rencontre:
1) lorsque je rajoute une action je perds la mise en forme avec les traits gras en la categorie PDCA.
2) en colonne Z, j ai l avancement des actions (suivant certaines conditions) qui ne marche que sur la premiere ligne (1er action), lorsque j ai plusieurs actions pour un meme pb ca ne marche pas.
Cette avancement ( si imbriqué seul facon que j ai trouvé de faire) varie selon le choix dans les colonnes C, O et W puis ensuite est calculé selon le remplissage de certaines cellules.
Cette avancement n'apparait pas non plus automatiquement si je créé une nouvelle action
3) J aimerais avoir en AA le nombre action lorsque plusieurs ligne /Pb,
4) en AB, avoir la moyenne des indicateurs avancements pour un même pb.
5) pourquoi lorsque je filtre par n° de pb exemple pb n°1, je n ai que la premiere action et pas l'ensemble fusionné.
6) J ai des points qui vont etre confidentiels est ce qu'il existe un moyen pour faire apparaitre des points en rentrer un mots de passe ou quelques choses comme ca
merci d'avance
je ne peux pas mettre mon fichier depasse 48ko, est ce que je peux te l envoyer
Dans la macro on lui demande de faire des traits d'épaisseur standard : "fin" c'est donc normal que tu perde tes traits gras 😉
Si tu veux un trait un peu plus épais (de partout), il te suffit de rajouter la ligne suivante :
Code:
.Weight = xlMedium
dans la macro précédente, juste en dessous de la ligne :
Code:
.LineStyle = xlContinuous
Pour un trait BEAUCOUP plus épais (de partout), il faut mettre la ligne suivante :
Code:
.Weight = xlThick
quentinp38 à dit:
2) en colonne Z, j ai l avancement des actions (suivant certaines conditions) qui ne marche que sur la premiere ligne (1er action), lorsque j ai plusieurs actions pour un meme pb ca ne marche pas.
Cette avancement ( si imbriqué seul facon que j ai trouvé de faire) varie selon le choix dans les colonnes C, O et W puis ensuite est calculé selon le remplissage de certaines cellules.
Cette avancement n'apparait pas non plus automatiquement si je créé une nouvelle action
C'est normal! Dans ton explication et tes différents fichiers exemple tu demande de rajouter une(des) ligne(s) - sous entendu vide! Et c'est tout. Non???
Donc forcément, les formules, et/ou valeurs des lignes supérieurs ne sont pas reprisent dans la(les) ligne(s) nouvellement rajoutée(s).
Si tu veux que cela se fasse, il faut le rajouter dans la macro. Excel se borne de faire ce qu'on lui demande de faire. Ci joint le même fichier que précédemment, avec la macro commenté.
quentinp38 à dit:
3) J aimerais avoir en AA le nombre action lorsque plusieurs ligne /Pb,
Et oooooo, c'est bien gentil, mais je ne suis pas là pour faire tout le boulot!!!!
De plus, c'est moins pédagogique et tu ne progressera pas ou peu. C'est dommage, car c'est le but premier de ce forum.
L'idéal :
1/ essayer de comprendre la macro fourni, te permettant ainsi de l'adapter à ton fichier.
2/ seulement à ce moment là, et pas avant, compliquer la macro en lui rajoutant des fonctionnalités : trait plus épais, l'ajout d'une cellule "nombre action".
3/ le plus simple est d'essayer de faire une macro à part qui ne fait que ça (pour cela l'enregistreur de macro est très pratique). Puis une fois réussi et la macro ainsi obtenu comprise, essayer de l'imbriquer dans la précédente.
quentinp38 à dit:
4) en AB, avoir la moyenne des indicateurs avancements pour un même pb.
Idem que pour la question 3. Essaye de faire une macro autonome, qui fait que cela. Et en cas de soucis, montre nous ta macro et dis nous les symptômes. A ce moment là on pourras-t'aider.
quentinp38 à dit:
5) pourquoi lorsque je filtre par n° de pb exemple pb n°1, je n ai que la premiere action et pas l'ensemble fusionné.
Les filtres détestes les cellules fusionnées, c'est pourquoi on n'utilise ce gadget QUE pour faire joli. Dés qu'on fait un tableau complexe, on laisse tomber ce jouet.
quentinp38 à dit:
6) J ai des points qui vont etre confidentiels est ce qu'il existe un moyen pour faire apparaitre des points en rentrer un mots de passe ou quelques choses comme ca
La solution la plus simple est d'écrire tes données dans une colonne masquée et de protéger ta feuille par un mot de passe ("Outils"/"Protection"/"Protéger la feuille").
Ainsi, ceux qui n'auront pas le mot de passe ne pourront pas voir tes données sensibles, ni les écraser tes, ni en rajouter, car ils ne verront pas la fameuse colonne et ne pourront la faire apparaître.
(après forcément, après quelques recherche sur la toile, n'importe qui d'un peu curieux et motivé pourra contourner ceci. Idem pour les solutions plus complexe)
quentinp38 à dit:
je ne peux pas mettre mon fichier depasse 48ko, est ce que je peux te l envoyer
Ce n'est pas dans la politique du forum. Car si une autre personne a le même soucis que toi, il ne verra que la réponse (et pas la question). Donc il sera obligé de reposer la même question! (et en plus sans le savoir) 🙁
Re : macro rajoutant une ligne sous la case selectionnée
Bonjour,
je n 'arrive pas à calculer mes nb d'action pour un problème et la moyenne dans la cellule fusionner correspondant à nb action et moyenne, quand plus de 2 valeurs faux , voir dans le fichier partie MOYENNE ET NB vALUER
comment mettre en automatique lors d'une création d'un nouveau pb M et N.
Je ne maîtrise pas trop les "...Formula...", mais as-tu essayer en mettant un espace avant et après les signes "&" ? Je ne peux te dire si cela fonctionne en situation réel, mais en tout cas Excel préfère.
- 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.