Comment ajuster automatiquement la hauteur de ligne des cellules fusionnées dans Excel?
Dans Excel, nous pouvons rapidement ajuster la hauteur de la ligne en fonction du contenu de la cellule en utilisant le Ajuster la hauteur de ligne fonctionnalité, mais cette fonction ignore complètement les cellules fusionnées. C'est-à-dire que vous ne pouvez pas appliquer le Ajuster la hauteur de ligne pour redimensionner la hauteur de ligne des cellules fusionnées, vous devez ajuster manuellement la hauteur de ligne des cellules fusionnées une par une. Dans cet article, je peux présenter quelques méthodes rapides pour résoudre ce problème.
Ajuster automatiquement la hauteur de ligne des cellules fusionnées avec le code VBA
Ajuster automatiquement la hauteur de ligne des cellules fusionnées avec le code VBA
En supposant que j'ai une feuille de calcul avec des cellules fusionnées comme illustré ci-dessous, et que je dois maintenant redimensionner la hauteur de la ligne de cellule pour afficher tout le contenu, le code VBA ci-dessous peut vous aider à ajuster automatiquement la hauteur de ligne de plusieurs cellules fusionnées, veuillez le faire comme suit:
1. Maintenez le ALT + F11 clés, et il ouvre le Fenêtre Microsoft Visual Basic pour Applications.
2Cliquez sur insérer > Moduleet collez le code suivant dans le Fenêtre du module.
Code VBA: ajustement automatique de la hauteur de ligne de plusieurs cellules fusionnéesOption Explicit
Public Sub AutoFitAll()
Call AutoFitMergedCells(Range("a1:b2"))
Call AutoFitMergedCells(Range("c4:d6"))
Call AutoFitMergedCells(Range("e1:e3"))
End Sub
Public Sub AutoFitMergedCells(oRange As Range)
Dim tHeight As Integer
Dim iPtr As Integer
Dim oldWidth As Single
Dim oldZZWidth As Single
Dim newWidth As Single
Dim newHeight As Single
With Sheets("Sheet4")
oldWidth = 0
For iPtr = 1 To oRange.Columns.Count
oldWidth = oldWidth + .Cells(1, oRange.Column + iPtr - 1).ColumnWidth
Next iPtr
oldWidth = .Cells(1, oRange.Column).ColumnWidth + .Cells(1, oRange.Column + 1).ColumnWidth
oRange.MergeCells = False
newWidth = Len(.Cells(oRange.Row, oRange.Column).Value)
oldZZWidth = .Range("ZZ1").ColumnWidth
.Range("ZZ1") = Left(.Cells(oRange.Row, oRange.Column).Value, newWidth)
.Range("ZZ1").WrapText = True
.Columns("ZZ").ColumnWidth = oldWidth
.Rows("1").EntireRow.AutoFit
newHeight = .Rows("1").RowHeight / oRange.Rows.Count
.Rows(CStr(oRange.Row) & ":" & CStr(oRange.Row + oRange.Rows.Count - 1)).RowHeight = newHeight
oRange.MergeCells = True
oRange.WrapText = True
.Range("ZZ1").ClearContents
.Range("ZZ1").ColumnWidth = oldZZWidth
End With
End Sub
Notes:
(1.) Dans le code ci-dessus, vous pouvez ajouter de nouvelles plages simplement copier Appelez AutoFitMergedCells (Range ("a1: b2")) script plusieurs fois que vous le souhaitez et modifiez les plages de cellules fusionnées selon vos besoins.
(2.) Et vous devriez changer le nom de la feuille de calcul actuelle Sheet4 au nom de votre feuille utilisée.
3. Puis appuyez F5 clé pour exécuter ce code, et maintenant, vous pouvez voir que toutes les cellules fusionnées ont été automatiquement ajustées à leur contenu de cellule, voir capture d'écran:
Article connexe:
Comment ajuster automatiquement la largeur de la colonne dans Excel?
Meilleurs outils de productivité bureautique
Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et facilite grandement votre travail
- Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!