It is not unusual to use macros to process data and format output in a workbook. If you use macros to do this type of work, you may be interested in changing the height of a row using a macro. If so, you should pay attention to the RowHeight property. This property, when applied to a Row object, indicates the height of the row in points.
For instance, the following code snippet steps through the rows in a selection and sets the height of each row to 36 points (one-half inch):
For Each r In ActiveWindow.RangeSelection.Rows r.RowHeight = 36 Next r
If you prefer not to step through each of the rows, you could use the following single line to adjust the row height:
Selection.RowHeight = 36
Either approach sets the height of all the rows that were selected when the code is executed. If you want your macro to adjust a specific range of rows, then you can specify the rows directly in the code:
ActiveSheet.Rows("3:34").RowHeight = 36
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (9239) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and Excel in Office 365. You can find a version of this tip for the older menu interface of Excel here: Setting Row Height in a Macro.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!
Do you have a macro that need to read and write files? If so, then there is a good chance you need to specify the default ...
Discover MoreWhen running a macro, have you ever seen Excel appear to stop responding? This can be frustrating, but there are a couple ...
Discover MoreIf your workbook contains links, you are normally given the opportunity to update those links when you open the workbook. ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2018-09-04 07:20:33
Andrea Carr
Thanks, Gregg
I'll try t by at out soon, but it sure looks like it would work well.
Andrea
2018-09-03 12:08:49
gregg
Hi Andrea,
I am building a project management tool and was wanting to set row heights as needed for wrapped cells. With some help, I came up with this code which works without any problems I've seen
'adjust row height if wraps
Rows(ActiveCell.row).EntireRow.Select
Dim CL As Range
'Range.CurrentArray.Select
Range("F" & (ActiveCell.row)).Select
If ActiveCell.WrapText Then Rows(ActiveCell.row).AutoFit
If ActiveCell.WrapText Then Rows(ActiveCell.row).AutoFit
With Range("F" & ActiveCell.row)
.RowHeight = .RowHeight + 5
End With
Range("G" & (ActiveCell.row)).Select
If ActiveCell.WrapText Then Rows(ActiveCell.row).AutoFit
With Range("G" & ActiveCell.row)
.RowHeight = .RowHeight + 5
End With
2018-08-31 07:32:19
Andrea Carr
I've enjoyed your tips for years and learned much about
Excel. So thank you.
I think a follow up tip about this subject would be great. It would be great to learn more about the interaction between row height and wrap text. The auto format row height and wrap text often do not work well together. So I wonder if setting row height in VBA is a better way.
Andrea
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2019 Sharon Parq Associates, Inc.
Comments