Как в excel сделать строки одинаковой высоты

Выравнивание ячеек под один размер в Microsoft Excel

Зачастую, при работе с таблицами Excel приходится изменять размеры ячеек. При этом получается, что на листе присутствуют элементы разной величины. Конечно, это не всегда оправдано практическими целями и эстетически часто не удовлетворяет пользователя. Поэтому возникает вопрос, как сделать ячейки одинаковыми по размеру. Давайте выясним, как их можно выровнять в Экселе.

Выравнивание размеров

Для того чтобы выровнять размеры ячеек на листе, нужно провести две процедуры: изменить величину столбцов и строк.

Ширина столбца может варьироваться от 0 до 255 единиц (по умолчанию выставлено 8,43 пункта), высота строки – от 0 до 409 пунктов (по умолчанию 12,75 единицы). Один пункт высоты приблизительно составляет 0,035 сантиметров.

При желании единицы измерения высоты и ширины можно заменить на другие варианты.

    Находясь во вкладке «Файл», жмем на пункт «Параметры».

  • В открывшемся окне параметров Excel делаем переход в пункт «Дополнительно». В центральной части окна находим блок параметров «Экран». Раскрываем список около параметра «Единицы на линейке» и выбираем один из четырех возможных вариантов:
    • Сантиметры;
    • Дюймы;
    • Миллиметры;
    • Единицы (установлено по умолчанию).

    После того, как вы определились со значением, жмите на кнопку «OK».

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

    Способ 1: выравнивание ячеек выделенного диапазона

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

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

    Находясь во вкладке «Главная», кликаем на ленте по иконке «Формат», которая размещена в блоке инструментов «Ячейки». Открывается перечень настроек. В блоке «Размер ячейки» выбираем пункт «Высота строки…».

    Как видим, размер ячеек выделенного диапазона по высоте стал равным. Теперь нам нужно будет подравнять его по ширине. Для этого, не снимая выделение, опять вызываем меню через кнопку «Формат» на ленте. На этот раз в блоке «Размер ячейки» выбираем пункт «Ширина столбца…».

  • Запускается окошко в точности такое же, как было при назначении высоты строки. Вводим в поле ширину столбцов в единицах, которая будет применяться к выделенному диапазону. Жмем на кнопку «OK».
  • Как видим, после выполненных манипуляций ячейки выделенной области стали абсолютно одинаковыми по размеру.

    Существует альтернативный вариант данного способа. Можно выделить на горизонтальной панели координат те столбцы, ширину которых нужно сделать одинаковой. Затем кликаем по этой панели правой кнопкой мыши. В открывшемся меню выбираем пункт «Ширина столбца…». После этого открывается окошко для введения ширины столбцов выделенного диапазона, о котором мы говорили чуть выше.

    Аналогичным образом выделяем на вертикальной панели координат строки того диапазона, в котором хотим произвести выравнивание. Кликаем правой кнопкой мыши по панели, в открывшемся меню выбираем пункт «Высота строки…». После этого открывается окошко, в котором следует внести параметр высоты.

    Способ 2: выравнивание ячеек всего листа

    Но бывают случаи, когда нужно выровнять ячейки не просто нужного диапазона, а всего листа в целом. Выделять их все вручную – очень долгое занятие, но существует возможность произвести выделение буквально одним кликом.

      Кликаем по прямоугольнику, расположенному между горизонтальной и вертикальной панелями координат. Как видим, после этого весь текущий лист выделяется полностью. Существует и альтернативный способ выделения всего листа. Для этого просто набираем на клавиатуре сочетание клавиш Ctrl+A.

  • После того, как вся область листа была выделена, изменяем ширину столбцов и высоту строк под единый размер по тому же алгоритму, который был описан при изучении первого способа.
  • Способ 3: перетягивание границ

    Кроме того, выровнять размер ячеек можно вручную перетаскивая границы.

      Выделяем лист в целом или диапазон ячеек на горизонтальной панели координат теми способами, о которых шла речь выше. Устанавливаем курсор на границу столбцов на горизонтальной панели координат. При этом, вместо курсора должен появится крест, на котором имеются две стрелки, направленные в разные стороны. Зажимаем левую кнопку мыши и тянем границы вправо или влево в зависимости от того, нужно нам расширить их или сузить. При этом изменяется ширина не только той ячейки, с границами которой вы манипулируете, но и всех остальных ячеек выделенного диапазона.

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

    Если вы не выделили весь лист, то выделяете ячейки на вертикальной панели координат. Аналогичным с предыдущим пунктом способом перетаскивайте границы одной из строк с зажатой кнопкой мыши, пока ячейки в этой строке не достигнут удовлетворяющей вас высоты. Затем отпустите кнопку мыши.

    После этих действий все элементы выделенного диапазона будут иметь такую же высоту, что и ячейка, над которой вы проводили манипуляцию.

    Способ 4: вставка таблицы

    Если вставить скопированную таблицу на лист обычным способом, то чаще всего столбцы у вставленного варианта будут иметь разный размер. Но существует приём, который позволит избежать этого.

      Выделяем таблицу, которую нужно скопировать. Кликаем по значку «Копировать», который размещен на ленте во вкладке «Главная» в блоке инструментов «Буфер обмена». Можно также вместо данных действий после выделения набрать на клавиатуре сочетание клавиш Ctrl+C.

    Выделяем ячейку на том же листе, на другом листе или в другой книге. Эта ячейка должна будет стать верхним левым элементом вставленной таблицы. Кликаем правой кнопкой мыши по выделенному объекту. Появляется контекстное меню. В нем переходим по пункту «Специальная вставка…». В дополнительном меню, которое появится после этого, кликаем, опять же, по пункту с точно таким же наименованием.

    Открывается окно специальной вставки. В блоке настроек «Вставить» переставляем переключатель в позицию «Ширины столбцов». Жмем на кнопку «OK».

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

    Читайте также:  Как в excel скрыть строки в таблице

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник: lumpics.ru

    Изменение ширины столбцов и высоты строк в Excel

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

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

    Изменение ширины столбца в Excel

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

    1. Наведите курсор на границу столбца справа от заголовка, он примет вид двойной стрелки.
    2. Нажмите и, не отпуская левую кнопку мыши, переместите курсор, чтобы увеличить или уменьшить ширину столбца.
    3. Отпустите левую кнопку мыши. Ширина изменится.

    Если вы вдруг увидели, что вместо ожидаемого результата, вся ячейка заполнена знаками решетки (#####), это означает, что ширины недостаточно для отображения содержимого ячейки. Просто увеличьте ширину столбца, чтобы все содержимое полностью поместилось.

    Автоподбор ширины столбца и высоты строки в Excel

    Инструмент Автоподбор позволяет установить ширину столбца или высоту строки в соответствии с его содержимым.

    1. Наведите курсор на границу столбца справа от заголовка, он примет вид двойной стрелки.
    2. По двойному щелчку левой кнопкой мыши ширина столбца автоматически изменится в соответствии с содержимым ячеек.

    Вы можете воспользоваться инструментом Автоподбор для изменения ширины сразу нескольких столбцов. Для этого выделите столбцы, которые необходимо изменить, а затем на вкладке Главная из раскрывающегося меню команды Формат выберите пункт Автоподбор ширины столбца. Этот же способ может быть использован для автоподбора высоты строки.

    Изменение высоты строки в Excel

    1. Наведите курсор на нижнюю границу заголовка строки, он примет вид двойной стрелки.
    2. Нажмите и, не отпуская левую кнопку мыши, переместите курсор, чтобы увеличить или уменьшить высоту строки.
    3. Отпустите левую кнопку мыши. Высота строки изменится.

    Изменение высоты всех строк на листе Excel

    Вместо того чтобы изменять размеры строк и столбцов по отдельности, Вы также можете изменить их одновременно. Этот метод позволяет установить единый размер всех строк и столбцов на листе. В следующем примере мы установим одинаковую высоту для каждой строки.

    1. Выделите все ячейки на листе Excel, для этого щелкните по кнопке Выбрать все, которая находится на пересечении заголовков строк и столбцов.
    2. Наведите курсор на нижнюю границу заголовка любой строки, он примет вид двойной стрелки.
    3. Нажмите и, не отпуская левую кнопку мыши, переместите курсор, чтобы увеличить или уменьшить высоту строки.
    4. Отпустите левую кнопку мыши. Высота всех строк изменится и станет одинаковой.

    Вы можете выделить все ячейки на листе Excel просто нажав комбинацию Ctrl+A на клавиатуре.

    Источник: office-guru.ru

    Как изменить размер ячеек в Excel и сделать их одинаковыми

    При создании таблицы в Эксель обычно нужно настроить размер ячеек — сделать их больше или меньше. Для того чтобы сделать их одинаковыми в высоту и ширину, многие пользователи пытаются двигать ползунок «на глаз». Даже несмотря на то что при настройке показывается промежуток в цифрах, этот способ не очень удобный и занимает много времени.

    В некоторых случаях нужно выставить точные размеры полей

    Промежуток столбца в таблице Эксель может равняться любому значению в диапазоне от 0 до 255 единиц. От него зависит количество знаков, которые поместятся в объект, который отформатирован с применением базового шрифта. Базовая величина вертикального диапазона составляет 8,43 единицы. При выставлении нулевого показателя вертикальный ряд будет скрыт.

    Высота полосы в таблице Эксель может быть выставлена в диапазоне от 0 до 409 единиц. Как и с шириной колонки, при выставлении нулевого показателя полоса будет скрыта, только на этот раз — горизонтальный. Единица высоты горизонтального ряда соответствует примерно 0,035 сантиметра или 1/72 дюйма. Базовое значение — 12,75 пунктов.

    При работе в режиме разметки страницы вы можете указать величину полосы объектов в сантиметрах, миллиметрах или дюймах. Чтобы поменять меру, нажмите «Файл» — «Параметры» и в категории «Дополнительно» найдите раздел «Экран». В выпадающем меню «Единицы на линейке» установите систему мер, которая вам больше подходит.

    Как отредактировать ширину вертикального диапазона мышкой

    Промежуток ряда объектов по горизонтали настраивают для того, чтобы они вмещали более длинные цифры или предложения. Это делается по нескольким принципам:

    • Чтобы поменять величину одного столбца, перетащите его правую границу влево или вправо, устанавливая нужный показатель.
    • Чтобы настроить произвольное количество, выделите их и перетащите границу любого. Чтобы отредактировать два и более несмежных вертикальных диапазона, отметьте первый, зажмите Ctrl и кликните по остальным. Смежных — выделите крайний левый или правый, затем, удерживая Shift, выберите противоположный.
    • Для того чтобы применить редактирование ко всем колонкам, сначала отметьте их на соответствующую кнопку (на пересечении разметки из цифр и латинских букв) либо нажмите Ctrl + «A».

    Единственный недостаток варианта — он не очень точный.

    Как установить величину столбца через форматирование

    1. Выделите произвольное количество колонок;
    2. Во вкладке «Главная» найдите область «Ячейки» и кликните «Формат»;
    3. В «Размер ячейки» щёлкните «Ширина столбца»;
    4. Введите значение в поле.

    Как сделать расстояние между границами столбцов равным

    Если вам нужно поменять величину так, чтобы он равнялся показателю другой:

    1. Отметьте объект с желаемым показателем;
    2. В группе «Буфер» на основной вкладке щёлкните «Копировать»;
    3. Там же нажмите на выпадающее меню под «Вставить» и выберите ссылку «Специальная вставка» (в самом низу);
    4. В области «Вставить» щёлкните на пункт «Ширины столбцов».

    Вы также можете выделить две или несколько полос в таблице, после чего настроить любую из них указателем мыши. Редактирование будет применено ко всем.

    Как задать ширину всех вертикальных рядов по умолчанию

    Показатель размера полосы говорит о том, сколько примерно символов базового шрифта поместится в элементе. Вы можете указать собственное значение для колонки, которое будет применено по умолчанию:

    • Для одного листа — отметьте его левым кликом мыши;
    • Для нескольких страниц — выделите любую, затем кликните по другим, удерживая Ctrl;
    • Для всей книги — щёлкните по любой странице правой клавишей мыши и нажмите «Выбрать все листы».

    Далее сделайте настройку:

    1. Во вкладке «Главная» кликните «Формат»;
    2. В области «Размер ячейки» выберите «Ширина по умолчанию»;
    3. Введите новое значение в поле.
    Читайте также:  Excel горячая клавиша удалить строку

    Как сделать шаблон для создания листов и книг

    Для того чтобы задать параметры элементов в будущих листах и книгах Эксель, можно создать шаблоны. На их основе новые таблицы будут иметь пользовательские параметры. Для этого нужно:

    1. Открыть книгу, которую хотите использовать как шаблон;
    2. Кликнуть «Файл» — «Сохранить как»;
    3. Ввести имя шаблона в «Имя файла»;
    4. В выпадающем меню «Тип файла» щёлкнуть «Шаблон Excel» или его аналог «с поддержкой макросов», если они есть в книге и понадобятся в дальнейших;
    5. Нажмите «Сохранить».

    Документ будет перемещён в папку с шаблонами, где его нужно выбрать для создания книги в следующий раз.

    Как отредактировать промежуток горизонтального ряда мышкой

    Здесь, как и в случае с шириной, нужно отмечать произвольное количество вертикальных колонок, затем перетаскивать границу любой. Передвижение вверх сделает объект больше, а вниз — меньше.

    Как установить промежуток горизонтального диапазона через форматирование

    1. Отметьте произвольное количество колонок;
    2. Во вкладке «Главная» найдите область «Ячейки» и кликните «Формат»;
    3. В «Размер ячейки» щёлкните «Высота строки»;
    4. Введите значение в поле.

    Автоматическое изменение в зависимости от содержимого элементов

    Благодаря этой функции элементы сами будут редактировать величину в зависимости от того, сколько данных в них записано:

    1. Выберите произвольное количество колонок;
    2. В группе «Ячейки» на основной вкладке нажмите «Формат»;
    3. В «Размер ячейки» щёлкните «Автоподбор ширины столбца» (или высоты).

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

    Настройка промежутка элемента позволяет поменять величину, а соответственно — количество данных, которые он вмещает. Для этого в Эксель есть несколько способов редактирования и вариантов режима отображения.

    Источник: nastroyvse.ru

    Автоподбор в EXCEL ширины столбца и высоты строки по содержимому ячеек

    Наиболее быстрый способ добиться, чтобы содержимое ячеек отображалось полностью – это использовать механизм автоподбора ширины столбца/ высоты строки по содержимому.

    Пусть имеется таблица с ячейками заполненными текстовыми значениями.

    Автоподбор ширины столбца

    Как видно из рисунка выше, текстовые значения в ячейках А2 и А3 отображаются не полностью, т.к. мешает текст в столбце B . Нам необходимо, чтобы содержимое всех ячеек в столбце A отображалось полностью. Для этого необходимо сделать ширину столбца A достаточной для отображения самого длинного текста в столбце. Делается это элементарно: подводим указатель мыши к разделу столбцов А и B (на сером заголовке столбцов), курсор примет следующий вид:

    Делаем двойной клик мышкой и, Voila, ширина столбца стала достаточной для отображения значений во всех ячейках столбца (с учетом скрытых строк).

    Если нужно выровнять ширину по содержимому у сразу нескольких столбцов, то делаем следующее:

    • выделяем необходимые столбцы (за их серые заголовки);
    • подводим курсор к любому разделу выделенных столбцов и дважды кликаем.
    • Выберите столбец или столбцы, ширину которых нужно изменить;
    • На вкладке Главная в группе Ячейки выберите команду Формат ;
    • В группе Размер ячейки выберите пункт Автоподбор ширины столбца .

    Автоподбор высоты строки

    Если ячейки содержат значения с очень большой длиной строки (например, если длина текстовой строки без переносов сравнима с шириной видимой части листа), то ширина столбца может стать слишком большой, работать с данными будет не удобно. В этом случае нужно выделить ячейки и включить опцию Переносить по словам через Формат ячеек (или через меню Главная/ Выравнивание/ Перенос текста ).

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

    Иногда, не смотря на установленную опцию Переносить по словам , высоты строки не хватает, чтобы отобразить текстовую строку полностью (это могло произойти, если высота строки была уменьшена вручную). В этом случае нужно поступить также, как мы поступали в случае подбора ширины строки – дважды кликнуть на границе раздела, но теперь не столбцов, а строк:

    После этого текстовое значение будет отображено в ячейке полностью:

    Реальный пример

    Теперь применим рассмотренный метод в реальной ситуации – отредактируем таблицу, созданную путем копирования данных из MS ACCESS. Скопируем через Буфер обмена какую-нибудь таблицу из MS ACCESS на лист EXCEL.

    Обратите внимание, что у ячеек, в которые мы вставили значения из Буфера обмена , включена опция Переносить по словам, хотя, по умолчанию, она отключена (EXCEL сам включил ее при вставке). Кроме того, EXCEL не стал изменять ширину столбцов, установленную по умолчанию, а была изменена только высота строк, чтобы полностью отобразить все значения. Такое форматирование таблицы не всегда устраивает пользователя. Используя вставленную таблицу, решим 2 задачи.

    Задача1. Предположим, нам нужно, чтобы все значения отображались в таблице в одну строку.

    • выделите вставленные значения (для этого выделите любую ячейку таблицы и нажмите CTRL+A (выделится текущая область ), если таблица не содержит пустых строк и столбцов, то будут выделены все вставленные значения);
    • выключите опцию Переносить по словам (через меню Главная/ Выравнивание/ Перенос текста );
    • высота ячеек будет уменьшена так, чтобы отображать только одну строку, как следствие часть значений станет невидна;

    • выделите столбцы А , B и С за серые заголовки;
    • подведите указатель мыши к разделу столбцов А и B (на сером заголовке столбцов) и дважды кликните.

    Задача решена: содержимое всех ячеек полностью отображается.

    Задача2. Теперь предположим, что нам нужно, чтобы все столбцы имели определенную, заданную пользователем, ширину, а значения полностью бы отображались в ячейке. При этом высота строки должна быть минимальной.

    • задайте требуемую ширину столбцов А , B и С ;
    • опцию Переносить по словам не выключайте (включите);

    • выделите все строки, содержащие вставленные значения, или все ячейки листа (все ячейки листа можно выделить нажав кнопку Выделить все в левом верхнем углу листа или дважды нажав CTRL+A );
    • подведите указатель мыши к разделу любых двух заполненных строк (на сером заголовке столбцов) и дважды кликните.

    Задача решена: содержимое всех ячеек полностью отображается.

    Случай с объединенными ячейками

    В случае, если две или несколько ячеек объединены в одну, то рассмотренный подход не сработает. Можно ли осуществить автоподбор высоты строки в случае объединенных ячеек? Об этом читайте в одноименной статье Автоподбор высоты строки по содержимому при объединении ячеек .

    Источник: excel2.ru

    Три способа, как сделать ячейки в Excel одинакового размера

    Табличный процессор Excel очень удобен для работы с различного рода данными. Правда, некоторые на первый взгляд простые вещи в нем выполнить довольно трудно – пользователь попросту не знает, как это сделать. В частности, это относится к выравниванию ячеек. В статье будет рассказано, как сделать ячейки одинакового размера в Excel тремя различными методами.

    Читайте также:  Excel вставить в несколько строк

    Метод первый: выравнивание выбранной области

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

    1. Выделите на листе таблицы область ячеек, которые нужно выровнять.
    2. Нажмите по выпадающему списку «Формат», который расположен во вкладке «Главная».
    3. В появившемся меню кликните по разделу «Высота строки».
    4. В открывшемся окошке введите значение высоты строки и нажмите «ОК».

    После этого все выделенные ячейки станут одинакового размера, который вы задали. Если же вам необходимо выровнять не только высоту строки, но и ширину столбца, тогда сделайте следующее:

    1. Выделите нужную область ячеек.
    2. В выпадающем списке «Формат» выберите пункт «Ширина столбца».
    3. Введите нужное значение.
    4. Нажмите «ОК».

    Теперь у вас ячейки одинакового размера как по высоте, так и по ширине. А это означает, что вы освоили первый способ того, как сделать ячейки одинакового размера в Excel.

    Метод второй: выравнивание всего листа

    Второй способ используют в том случае, если необходимо задать размеры ячеек во всем листе, а не в определенном диапазоне. Инструкция по выполнению этой задачи практически идентична предыдущей:

    1. Выделите всю таблицу. Для этого нажмите на квадрат, расположенный на пересечении нумерации строк и ряда столбцов, или используйте сочетание горячих клавиш Ctrl+A.
    2. На главной вкладке из выпадающего списка «Формат» выберите опцию «Высота строки» и укажите желаемое значение.
    3. Из того же списка выберите пункт «Ширина столбца» и введите нужное значение.

    Метод третий: перетягивание границ

    Как быть, если вам нужно просто сделать размер строк или ширину столбцов одинаковыми, но нет нужды задавать им определенный размер? Нет смысла бродить по всем пунктам меню, можно просто задать размер вручную – на глаз.

    1. Выделите диапазон строк или столбцов таблицы.
    2. Установите курсор на стыке двух столбцов или строк.
    3. Нажмите левую кнопку мыши и, удерживая ее, измените размер ширины или высоты.

    В момент выполнения этого действия вы можете заметить, что размер изменяется не только в выбранном столбце или строке, а во всем заранее выделенном диапазоне. Это третий способ, как сделать ячейки в «Эксель» одинакового размера.

    Источник: fb.ru

    Подбор высоты строки/ширины столбца объединенной ячейки

    Для начала немного теории. Если в ячейках листа Excel записан некий длинный текст, то обычно устанавливают перенос на строки(вкладка Главная -группа ВыравниваниеПеренос текста), чтобы текст не растягивался на весь экран, а умещался в ячейке. При этом высота ячейки тоже должна измениться, чтобы отобразить все содержимое. Если речь идет всего об одной простой ячейке – проблем не возникает. Обычно, чтобы установить высоту строки на основании содержимого ячейки, достаточно навести курсор мыши в заголовке строк на границу строки(курсор приобретет вид направленных в разные стороны стрелок – ) и дважды быстро щелкнуть левой кнопкой мыши. Тоже самое можно сделать и для ширины столбцов.
    Но с объединенными ячейками такой фокус не прокатывает – ширина и высота для этих ячеек так не подбирается, сколько ни щелкай и приходится вручную подгонять каждую, чтобы текст ячейки отображался полностью:

    Стандартными средствами такой автоподбор не сделать, но вот при помощи VBA – без проблем. Ниже приведена функция, которая поможет подобрать высоту и ширину объединенных ячеек на основании их содержимого.

    ‘————————————————————————————— ‘ Procedure : RowHeightForContent ‘ Author : The_Prist(Щербаков Дмитрий) ‘ http://www.excel-vba.ru ‘ Purpose : Функция подбирает высоту строки/ширину столбца объединенных ячеек по содержимому ‘————————————————————————————— Function RowColHeightForContent(rc As Range, Optional bRowHeight As Boolean = True) ‘rc – ячейка, высоту строки или ширину столбца которой необходимо подобрать ‘bRowHeight – True – если необходимо подобрать высоту строки ‘ False – если необходимо подобрать ширину столбца Dim OldR_Height As Single, OldC_Widht As Single Dim MergedR_Height As Single, MergedC_Widht As Single Dim CurrCell As Range Dim ih As Integer Dim iw As Integer Dim NewR_Height As Single, NewC_Widht As Single Dim ActiveCellHeight As Single If rc.MergeCells Then With rc.MergeArea ‘если ячейка объединена ‘запоминаем кол-во столбцов iw = .Columns(.Columns.Count).Column – rc.Column + 1 ‘запоминаем кол-во строк. ih = .Rows(.Rows.Count).Row – rc.Row + 1 ‘Определяем высоту и ширину объединения ячеек MergedR_Height = 0 For Each CurrCell In .Rows MergedR_Height = CurrCell.RowHeight + MergedR_Height Next MergedC_Widht = 0 For Each CurrCell In .Columns MergedC_Widht = CurrCell.ColumnWidth + MergedC_Widht Next ‘запоминаем высоту и ширину первой ячейки из объединенных OldR_Height = .Cells(1, 1).RowHeight OldC_Widht = .Cells(1, 1).ColumnWidth ‘отменяем объединение ячеек .MergeCells = False ‘назначаем новую высоту и ширину для первой ячейки .Cells(1).RowHeight = MergedR_Height .Cells(1, 1).EntireColumn.ColumnWidth = MergedC_Widht ‘если необходимо изменить высоту строк If bRowHeight Then ‘.WrapText = True ‘раскомментировать, если необходимо принудительно выставлять перенос текста .EntireRow.AutoFit NewR_Height = .Cells(1).RowHeight ‘запоминаем высоту строки .MergeCells = True If OldR_Height ‘ .WrapText = True ‘раскомментировать, если необходимо принудительно выставлять перенос текста тогда код сам проставит переносы. Но тут следует учитывать, что в данном случае перенос будет выставлен для всех ячеек, что не всегда отвечает условиям

  • функция подбирает высоту и ширину исключительно для объединенных ячеек. Если ячейка не объединена – код оставит её без изменений
  • Теперь о том, как это работает и как применять. Для начала необходимо приведенный выше код функции вставить в стандартный модуль. Сама по себе функция работать не будет – её надо вызывать из другого кода, который определяет какие ячейки обрабатывать. В качестве такого кода я предлагаю следующий:

    Sub ChangeRowColHeight() Dim rc As Range Dim bRow As Boolean bRow = (MsgBox(“Изменять высоту строк?”, vbQuestion + vbYesNo, “www.excel-vba.ru”) = vbYes) ‘bRow = True: для изменения высоты строк ‘bRow = False: для изменения ширины столбцов Application.ScreenUpdating = False For Each rc In Selection RowColHeightForContent rc, bRow Next Application.ScreenUpdating = True End Sub

    Этот код также необходимо вставить в стандартный модуль. Теперь его можно будет вызвать из этой книги, нажатием клавиш Alt+F8 и выбрав ChangeRowColHeight , или создав на листе кнопку и назначив ей макрос. После этого достаточно будет выделить диапазон ячеек, среди которых есть объединенные и вызвать макрос ChangeRowColHeight. Для всех объединенных ячеек в выделенном диапазоне будет подобрана высота или ширина.
    Чтобы было нагляднее – я приложил пример, в котором помимо самих кодов есть вырезка из стандартной накладной. Именно в таких документах наиболее часто встречаются подобные казусы и необходимость подбирать высоту и ширину объединенных ячеек.
    Скачать пример:

    Tips_Macro_HeightWidthInMergeCell.xls (64,0 KiB, 1 845 скачиваний)

    Если подобную операцию приходится производить постоянно – советую коды записать в надстройку: Как создать свою надстройку?. Так же можно воспользоваться уже готовым решением в составе MulTEx – Высота/Ширина объединенной ячейки.

    Источник: www.excel-vba.ru