Autofit och felaktig radhöjd i Excel 2007

Först publicerad:

| © ExcelKungen.com

I samband med att jag arbetade fram en större Excel-modell med makron stötte jag på en frustrerande bugg i Excel 2007. Denna bugg rör autofit-funktionen och justeringen av radhöjd.

När du presenterar mycket text i en cell och aktiverar alternativet "Wrap text" (dvs. att texten ska brytas till nya rader), kan det hända att Excels automatiska justering av radhöjden (autofit) misslyckas och ger en för låg radhöjd. Resultatet blir att den sista raden eller raderna i cellen inte blir helt synliga.

Felaktig automatisk justering av radhöjd i Excel 2007.
Exempel på felaktig automatisk justering av radhöjd i Excel 2007.

Problemet uppstod vid import av text från CSV-filer, men jag har även lyckats återskapa felet direkt i kalkylbladet. Det är dock värt att notera att problemet inte är konsekvent – ibland fungerar Autofit som det ska, medan det andra gånger inte gör det.

Projektet jag arbetade med syftade just till att presentera stora mängder text i olika arbetsblad, vilket gjorde att jag var tvungen att hitta en lösning. Även om problemet har beskrivits i flera artiklar, lyckades jag inte hitta någon befintlig lösning på denna bugg.

Nedan kan du se mitt försök att lösa problemet med otillräcklig justering av radhöjder i Excel. Mitt makro loopar igenom aktuella rader och ökar radhöjden för samtliga rader med 20. Om en radhöjd redan är 409, vilket är den maximala höjd som Excel 2007 tillåter, sänker jag först höjden till 389 innan jag ökar den tillbaka till 409.

Dessutom hanteras alla rader ner till den sista använda raden i kolumn E, vilket enkelt kan ändras direkt i VBA-rutinen nedan (lonSistaRad).


Sub RadHojd()
 
Sub Justeraradhojd()
 
Dim lonSistaRad As Long
lonSistaRad = Columns("E:E").Range("A65536").End(xlUp).Row
 
For i = 1 To lonSistaRad '1 = rad 1, ändra till önskad startrad
Rows(i).EntireRow.AutoFit
 If Rows(i).RowHeight > 409 Then Rows(i).RowHeight = 389
  Rows(i).RowHeight = Rows(i).RowHeight + 20
Next i
End Sub

Den ovanstående lösningen är ett tydligt exempel på hur vi ofta behöver hitta kreativa lösningar för att hantera de buggar som har funnits i Excel och många andra datorprogram genom åren.

Populära artiklar

Dagens tips

Relaterade artiklar