Ajuster automatiquement la hauteur

Fermé
Thierry104 - 12 janv. 2011 à 11:27
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 - 13 janv. 2011 à 11:47
Bonjour,

J'ai un petit problème pour lequel j'ai besoin de vous.

J'aimerai que la hauteur des cellules fusionnées UNIQUEMENT de A42 à L100. Le code ci-dessus marche mais pour toutes les cellules et non pour celles qui sont fusionnées uniquement et cela crée un confli lorsqu'une cellule non fusionnées contient du texte.

Pourriez-vous m'aider svp

Sub AjusteEnHauteur()
For Each cel In ActiveSheet.Range("A42:L100")
If cel <> "" Then
Set m = cel.MergeArea
m.UnMerge
m.WrapText = True 'renvoie à la ligne
m.HorizontalAlignment = xlCenterAcrossSelection
m.Rows.AutoFit
m.Merge
m.HorizontalAlignment = xlGeneral 'facultatif bien sûr
End If
Next
End Sub

5 réponses

Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 076
Modifié par Mike-31 le 12/01/2011 à 18:34
Salut,

Rapidement, regarde si c'est ce que tu cherches et on revoit le code

Sub AjusteCellulesFusionnees()
Dim cell As Range
Dim Maplage As Range
Set Maplage = Range("A42:l100")
With ActiveSheet
For Each cell In Maplage
If cell.MergeCells = True Then
cell.MergeArea.Rows.AutoFit
End If
Next cell
End With
End Sub

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Salut Mike merci bcp pour ta réponse si rapide.

Malheureusement cela ne marche pas, aucune erreur mais la hauteur des cellules fusionnées ne s'ajuste pas.

Dis moi si je peux faire quelque chose pour te faciliter la tache.

Merci encore

Thierry
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 076
12 janv. 2011 à 14:35
Re,

Je viens de retester le code, qui sans problème ajuste la hauteur ligne sans problème par rapport à la taille police.
Aurais tu des retours lignes dans ta cellule (Alt+Entrée) ou un retour ligne automatique qui dans ce cas peut poser problème et necessite un code plus complexe
0
Hey,

J'ai effectivement des retour de ligne dans plusieurs cellules et sont malheureusement inévitables.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 076
13 janv. 2011 à 11:47
Re,

Teste si ce code

Sub AjusteEnHauteur()
For Each cel In [A1:L100]
If cel <> "" Then
Set m = cel.MergeArea
m.UnMerge
m.WrapText = True
m.HorizontalAlignment = xlCenterAcrossSelection
m.Rows.AutoFit
m.Merge
End If
Next
End Sub
0