Одна из (многих) неприятных вещей в Excel заключается в том, что он использует разные единицы измерения для указания высоты строк и ширины столбцов.

Высота строки довольно проста — она ​​измеряется в точках. Однако ширина столбца измеряется шириной символа. Если для вашего стандартного стиля установлено значение Courier 10, ширина столбца 12 означает, что вы можете разместить ровно двенадцать символов в данном столбце. Для пропорциональных шрифтов символ 0 используется для подсчета символов. (Ага, это абсурд.)

Это приводит к проблемам, если вы хотите, чтобы высота и ширина конкретной ячейки совпадали, тем самым создавая квадрат. К счастью, с помощью небольшого волшебства макросов вы можете обойти эту странность Excel и добиться желаемых результатов. Рассмотрим макрос MakeSquare:

Sub MakeSquare()

Dim WPChar As Double     Dim DInch As Double     Dim Temp As String          Temp = InputBox("Height and width in inches?")

DInch = Val(Temp)

If DInch > 0 And DInch < 2.5 Then         For Each c In ActiveWindow.RangeSelection.Columns             WPChar = c.Width / c.ColumnWidth             c.ColumnWidth = ((DInch * 72) / WPChar)

Next c         For Each r In ActiveWindow.RangeSelection.Rows             r.RowHeight = (DInch * 72)

Next r     End If End Sub

Этот макрос запрашивает у вас размер квадрата, который вы хотите создать, а затем точно вычисляет ширину и высоту каждой ячейки.

Вы можете запустить макрос, выделив одну ячейку, или сделать больший выбор.

«Математическая магия» заключается в вычислении переменной WPChar. Для него устанавливается значение, полученное путем деления ширины столбца в точках (возвращенной свойством Width) на ширину столбца в символах (возвращенную свойством ColumnWidth). Это значение, которое представляет собой количество точек в символе при текущих настройках, затем используется для расчета, сколько символов следует использовать для установки ширины в следующей строке программы.

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (1943 г.) применим к Microsoft Excel 97, 2000, 2002 и 2003.