Re : ajustement auto d'une ligne avec colonnes fusionnées
Merci a Gorfael et a Bhbh d'avoir répondu.
Gorfael, je joint le fichier excel afin que tu puisses constituer une macro.
Petite remarque, j'aimerai que cette macro ajuste automatiquement de la ligne 6 a 70 en auto en faisant un clic avec un bouton sur le coté droit.
J'essais par mes propres moyens de réaliser du VBA (simple) pour le moment.
Si tu as le temps tu peut m'expliquer . Mais cela ne doit pas de monopoliser.
Encore une fois merci de ton aide.
Salut
Macro automatique WorkSheet_Change
Clic-droit sur l'onglet>>Menu contextuel>>Visualiser le code
Comme la macro agit sur les hateurs de lignes et largeurs de colonnes, on bloque le raffraîchissement écran.
Comme on bloque le raffraîchissement écran, on gére les erreurs
Comme on gère les erreurs, on relance le rafraîchissement écran avant de sortir, mais comme on modifie la feuille pendant la macro, on relance avant la sortie de la première occrence de workSheet_Change, une 2me occurence qui remet en route le rafraîchissement écran.
Pour éviter ça, on bloque tout lancement de macro évènements pendant l'action de la macro.
Si tu veux suivre le code en pas-à-pas, tu mets un point d'arrêt sur la ligne de titre de la macro, et tu exécutes ligne par ligne avec la touche F8
ce que fait la macro :
elle regarde si la modif concerne une/des cellules de la colonne B
si non, on sort par l'adresse Sort_
si oui, on définit la plage de travail comme étant toutes les cellules de B qui ont été modifiées
Pour chacune de ces cellules, on calcule la largeur de la cellule fusionnée et on ajuste la largeur de la colonne Q à cette valeur
on copie la valeur de B en Q
on met la coche "retour à la ligne automatique" de l'alignement du format de cellule pour la cellule Q
on fait un ajustement automatique de la ligne de la cellule en cours
on fige la hauteur de ligne
on supprime la colonne Q
Avantage : tu ne t'occupes de rien, ça ressemble à un ajustement automatique de la ligne avec une seule cellule
Inconvénients :
- ça ressemble à un ajustement automatique, mais ce n'en est pas : comme jla macro ne gère que la fusion commençant en B, si le texte d'une autre cellule dépasse la hauteur de B, il sera en partie masqué.
Mais comme le reste est fait de nombre, c'est peu probable
- La macro ne gère pas les fusions de lignes
- la macro ne se lancera pas en cas de changement de format (police).
Il faudra passer la cellule en mode édition (double-clic ou F2) et valider pour que la taille s'ajuste
Si questions, ne pas hésiter
A+