Как сделать текст по ширине ячейки в excel?
Как и в любом визуальном редакторе данных от Microsoft в Excel можно и нужно выравнивать данные под нужные условия. В зависимости от ваших задач вы можете задать принудительное выравнивание или установить автоматические возможности выравнивания. Как правильно выровнять в Excel текст вы сможете про:
Общие понятия. Выровнять в Excel
Команды выравнивания доступны на ленте действий Главная — раздел Выравнивание
Или выбрав раздел Формат ячеек, горячая клавиша ctrl+1 (или кликнув правой кнопкой мыши и выбрав Формат ячеек)
Откроется окно, как на первой картинке, подробнее о доступных возможностях.
Выровнять в Excel. По центру, слева, справа
В разделе Выравнивание по горизонтали, чтобы текст начинался от правого или левого края, следует активировать команды соответственно «По правому краю» и «По левому краю». Если необходимо симметрично центрировать содержимое строк, то применяется кнопка «По центру».
Вы можете выбрать величину отступа текст. Выстраивая значения по левому краю, вы можете задать конкретную величину отступа от края (изначально она всегда равна 0). Каждая добавленная единица сдвигает текст на один шаг вправо. Ширина смещения ориентировочно равняется заглавной «Х»
С заполнением
Интересная опция. Выбрав «С заполнением» вы сможете дублировать прописанное в ячейках значение, чтобы столбец полностью был наполнен по ширине. Допустим, что вам необходимо заполнить всю ячейку значением 0. В случае изменения ширины ячейки количество нулей должно увеличится. Эта функция как раз для этого. Дело в том, что, как и прочие опции, формат «С заполнением» меняет сугубо внешнее отображение ячейки, а не сохраняемые данные внутри нее. Символы дублируются по всему диапазону без пробелов между областями. Два существенных плюса.
Первый – Excel автоматом подгонит количество знаков ячейки, если вам важны настройки ширины столбца.
Второй – символы легко можно размножить в полях сразу целого ряда смежных ячеек.
На примере на картинке в ячейку введено только число 1. При использование данной функции получается такое отображение.
Формат по ширине
Подключив команду выравнивания «По ширине», вы добьетесь того, что надпись в выбранной ячейке не только уместится ровно по краям, но автоматически выровняется по левому, правому боку и в высоту.
Выравнивание по вертикали
Excel предлагает 4 вида вертикального форматирования значений: по верхней кромке, центру, нижнему краю, высоте.
Выравнивание по центру, нижнему и верхнему краю аналогичны таким же функциям для выравнивания по вертикали. Команда «По высоте» — это аналог опции «По ширине», только здесь происходит выравнивание по верхним и нижним параметрам, а не с боку. Вертикальное выравнивание, расположение текста
Галочка автоподбор ширины
Данное решение выручает тогда, когда нужно полностью уместить содержимое ячейки в определенном столбце. Команда чаще всего используется тогда, когда нет возможности настроить ширину столбца по содержимому, не испортив при этом соседние столбцы Или когда не подходят остальные виды выравнивания (вертикальное, наклонное, перенос слов). Символы в ячейке будут сжиматься или увеличиваться в зависимости от изменений размеров столбца.
Перенос слов
Заполняя ячейку слишком длинной текстовой строкой, вы обнаружите, что Excel выводит надпись за границу ячейки, если соседние поля не заполнены. Чтобы вернуть текст в нужные пределы, отметьте галочкой квадратик «Переносить по словам» из блока «Отображение». Далее редактор самостоятельно подберет нужную высоту для заполняемого сегмента таблицы, и текст будет разбит на строки, не нарушающие заданных границ.
Ориентация
Предназначение раздела – располагать содержимое элементов таблицы под нужным градусом: сверху вниз, под прямым углом, по часовой, против часовой стрелки. Если высота строчки при этом не обозначена пользователем, Excel подбирает и выставляет ее самостоятельно.
Поделитесь нашей статьей в ваших соцсетях:
(Visited 14 610 times, 16 visits today)
Довольно часто содержимое ячейки в таблице не умещается в границы, которые установлены по умолчанию. В этом случае актуальным становится вопрос их расширения для того, чтобы вся информация уместилась и была на виду у пользователя. Давайте выясним, какими способами можно выполнить данную процедуру в Экселе.
Реальный пример
Теперь применим рассмотренный метод в реальной ситуации – отредактируем таблицу, созданную путем копирования данных из MS ACCESS. Скопируем через Буфер обмена какую-нибудь таблицу из MS ACCESS на лист EXCEL.
Обратите внимание, что у ячеек, в которые мы вставили значения из Буфера обмена , включена опция Переносить по словам, хотя, по умолчанию, она отключена (EXCEL сам включил ее при вставке). Кроме того, EXCEL не стал изменять ширину столбцов, установленную по умолчанию, а была изменена только высота строк, чтобы полностью отобразить все значения
Такое форматирование таблицы не всегда устраивает пользователя. Используя вставленную таблицу, решим 2 задачи.
Задача1. Предположим, нам нужно, чтобы все значения отображались в таблице в одну строку.
- выделите вставленные значения (для этого выделите любую ячейку таблицы и нажмите CTRL+A (выделится текущая область ), если таблица не содержит пустых строк и столбцов, то будут выделены все вставленные значения);
- выключите опцию Переносить по словам (через меню Главная/ Выравнивание/ Перенос текста );
- высота ячеек будет уменьшена так, чтобы отображать только одну строку, как следствие часть значений станет невидна;
- выделите столбцы А , B и С за серые заголовки;
- подведите указатель мыши к разделу столбцов А и B (на сером заголовке столбцов) и дважды кликните.
Задача решена: содержимое всех ячеек полностью отображается.
Задача2. Теперь предположим, что нам нужно, чтобы все столбцы имели определенную, заданную пользователем, ширину, а значения полностью бы отображались в ячейке. При этом высота строки должна быть минимальной.
- задайте требуемую ширину столбцов А , B и С ;
- опцию Переносить по словам не выключайте (включите);
- выделите все строки, содержащие вставленные значения, или все ячейки листа (все ячейки листа можно выделить нажав кнопку Выделить все в левом верхнем углу листа или дважды нажав CTRL+A );
- подведите указатель мыши к разделу любых двух заполненных строк (на сером заголовке столбцов) и дважды кликните.
Задача решена: содержимое всех ячеек полностью отображается.
Использование макроса для редактирования ширины и высоты
Если приходится часто делать так, чтобы ширина и высота ячеек были одинаковыми, лучше написать небольшой макрос. Для этого необходимо отредактировать с помощью языка VBA значения свойств RowHeight и ColumnWidth.
Если говорить о теории, то для редактирования высоты и ширины ячейки необходимо управлять этими параметрами строк и колонок.
Макрос позволяет регулировать высоту лишь в пунктах, а ширину – в символах. Невозможно настроить те единицы измерения, которые необходимы.
Для коррекции высоты строки необходимо воспользоваться свойством RowHeight объекта Range. Например, так.
ActiveCell.RowHeight = 10
Здесь высота строки, где расположена активная ячейка, будет составлять 10 пунктов.
Если ввести такую строку в редактор макросов, изменится высота третьей строки, которая в нашем случае будет составлять 30 пунктов.
Rows(3).RowHeight = 30
Согласно нашей теме, вот так можно изменить высоту всех ячеек, входящих в определенный диапазон:
Range(“A1:D6”).RowHeight = 20
А вот так – целого столбца:
Columns(5).RowHeight = 15
В скобках приводится номер столбца. Точно так же и со строками – в скобках приводится номер строки, который эквивалентен соответствующей по номеру букве алфавита.
Для редактирования ширины столбца необходимо использовать свойство ColumnWidth объекта Range. Синтаксис аналогичен. То есть, в нашем случае нужно определиться с диапазоном, который нужно изменить. Пусть это будет A1:D6. И далее – написать следующую строку кода:
Range(“A1:D6”).ColumnWidth = 25
Как следствие, ширина каждой ячейки, входящей в этот диапазон, составляет 25 символов.
Автоподбор ширины
Включение автоподбора высоты строки в Microsoft Excel
Каждый пользователь, работающий в Экселе, рано или поздно встречается с ситуацией, когда содержимое ячейки не вмещается в её границы. В таком случае существует несколько выходов из сложившегося положения: сократить размер содержимого; смириться с существующей ситуацией; расширить ширину ячеек; расширить их высоту. Как раз о последнем варианте, а именно об автоподборе высоты строки мы и поговорим дальше.
Применение атоподбора
Автоподбор – это встроенный инструмент Excel, который помогает произвести расширение ячеек по содержимому. Сразу нужно отметить, что несмотря на название эта функция не применяется автоматически. Для того, чтобы расширить конкретный элемент, нужно выделить диапазон и применить к нему указанный инструмент.
Кроме того, нужно сказать, что автоподбор высоты применим в Эксель только для тех ячеек, у которых в форматировании включен перенос по словам. Для того чтобы включить это свойство выделяем на листе ячейку или диапазон. Кликаем по выделению правой кнопкой мыши. В запустившемся контекстном списке выбираем позицию «Формат ячеек…».
Происходит активация окна форматирования. Переходим во вкладку «Выравнивание». В блоке настроек «Отображение» устанавливаем флажок напротив параметра «Переносить по словам». Чтобы сохранить и применить изменения конфигурации настроек, жмем на кнопку «OK», которая размещена внизу этого окна.
Теперь на выделенном фрагменте листа включен перенос по словам и к нему можно применять автоподбор высоты строки. Рассмотрим, как это сделать различными способами на примере версии Excel 2010. Вместе с тем нужно заметить, что полностью аналогичный алгоритм действий можно использовать как для более поздних версий программы, так и для Excel 2007.
Способ 1: панель координат
Первый способ предполагает работу с вертикальной панелью координат, на которой располагаются номера строк таблицы.
- Кликаем по номеру той строки на панели координат, к которой нужно применить автоподбор высоты. После этого действия вся строчка будет выделена.
Способ 2: включение автоподбора для нескольких строк
Вышеуказанный способ хорош, когда нужно включить автоподбор для одной или двух строк, но что делать, если подобных элементов много? Ведь, если действовать по тому алгоритму, который был описан в первом варианте, то на процедуру придется потратить большое количество времени. В этом случае существует выход.
- Выделяем на панели координат весь диапазон строк, к которым нужно подключить указанную функцию. Для этого зажимаем левую кнопку мыши и проводим курсором по соответствующему отрезку панели координат.
Способ 3: кнопка на ленте инструментов
Кроме того, для включения автоподбора по высоте ячейки можно использовать специальный инструмент на ленте.
- Выделяем диапазон на листе, к которому нужно применить автоподбор. Находясь во вкладке «Главная», производим щелчок по кнопке «Формат». Данный инструмент размещен в блоке настроек «Ячейки». В появившемся списке в группе «Размер ячейки» выбираем пункт «Автоподбор высоты строки».
Способ 4: подбор высоты для объединенных ячеек
В то же время, нужно заметить, что функция автоподбора не работает для объединенных ячеек. Но и в этом случае тоже имеется решение данной проблемы. Выход заключается в применении алгоритма действий, при котором реального объединения ячейки не происходит, а только видимое. Поэтому мы сможем применить технологию автоподбора.
- Выделяем те ячейки, которые нужно объединить. Кликаем по выделению правой кнопкой мыши. В меню переходим по пункту «Формат ячеек…».
Чтобы вручную не выставлять высоту каждой строки в отдельности, тратя на это уйму времени, особенно если таблица большая, лучше воспользоваться таким удобным инструментом Excel, как автоподбор. С его помощью можно автоматически скорректировать размер строчек любого диапазона по содержимому. Единственная проблема может возникнуть, если вы работаете с областью листа, в которой расположены объединенные ячейки, но и в этом случае тоже можно найти выход из сложившейся ситуации путем выравнивания содержимого по выделению.
Мы рады, что смогли помочь Вам в решении проблемы.
Объединение ячеек
Выравнивание текста в ячейках в Excel.
Казалось бы, нет ничего проще, как создать таблицу, вбить данные и вести учет. Ну, про учет, это уже о предназначении таблицы, у каждого она будет преследовать свои цели.
Для примера приведу свою таблицу:
Ничего красивого и ничего понятно я не вижу в этой таблице. А хотя вроде хотелось сделать, что то красивое и как минимум понятное для тех, кто увидит мой документ.
Для того что бы придать нашему документу профессиональный вид, нужно:
1- выделить область ячеек, в которых мы будем вести работу. В нашем случае это – таблица
2 – вторым шагом, определяемся с масштабом текста в таблице и стилем шрифта. В моем случае 14 пт.- размер шрифта, Arial– стиль шрифта.
Рисунок:
3 – кликаем правой клавишей мыши по выделенной области, в контекстном меню выбираем пункт – «Формат ячеек». Смотри рисунок, и выставляем параметры те, которые показаны у меня:
Рисунок:
В окне инструментов формат ячеек выбираем вкладку выравнивание. Выравнивание по горизонтали и вертикали ставим по центру, смотря какое значение ячеек и ваши предпочтения, экспериментируйте. В пункте «Отображение» ставим галочку – «Переносить по словам». При этом отображении не будет меняться размер шрифта и ячейки останутся цельными.
4 – Проверяем результат. Должно получиться, читаемый текст внутри каждой ячейки и исходный формат текста без изменений.
Рисунок:
Высота строки в Excel
Этот параметр регулируется несколькими способами. Самый удобный и простой — это изменить высоту с помощью мыши. Курсор необходимо поместить на нумерации строк, а затем, удерживая кнопку, растягивать или сжимать ее до нужного размера.
Изменять высоту также можно посредством панели управления. Во вкладке «Главная» нужно выбрать пункт «Формат», а затем кликнуть «Высота строки». В открывшемся окошке нужно задать то значение, которое требуется в конкретном случае.
Обе версии программы предполагают автоматический подбор высоты строк. Это необходимо в том случае, когда нужно изменить параметры в соответствии с текстом, который там находится. Однако при использовании этой функции нужно знать, что команда будет выполняться только тогда, когда установлена галочка «Переносить по словам» во вкладке «Выравнивание». Максимальная высота, которую можно задать, — это 409 значений.
Автоподбор в 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 );
- подведите указатель мыши к разделу любых двух заполненных строк (на сером заголовке столбцов) и дважды кликните.
Задача решена: содержимое всех ячеек полностью отображается.
Случай с объединенными ячейками
В случае, если две или несколько ячеек объединены в одну, то рассмотренный подход не сработает. Можно ли осуществить автоподбор высоты строки в случае объединенных ячеек? Об этом читайте в одноименной статье Автоподбор высоты строки по содержимому при объединении ячеек .
Каким способами можно задать высоту строки
Бывают случаи, когда пользователь из эстетических соображений хочет, чтобы все ячейки в таблице имели одинаковую высоту. Такое форматирование часто применяется для не слишком громоздких таблиц, которые содержат небольшое количество текста.
Желаемый параметр можно задать, используя функцию «Высота строки», которая находится в пункте меню: «Формат». При этом все выделенные заранее строки будут иметь установленный вручную параметр. Одновременно с указанной выше функцией пользователи часто прибегают к ручному подбору высоты ячейки. Для этого необходимо нажать левую клавишу мыши на нижней границе ячейки и потянуть курсор в нужную сторону. Если необходимо изменить высоту сразу нескольких строк, то первоначально их следует выделить, а затем выбирать требуемую высоту строки при помощи курсора.
Описанные выше способы корректировки параметров ячеек используются довольно редко. Пользователи более активно применяют функцию MS Excel «Автоподбор высоты строки», подробности применения которой будут описаны ниже.
Отметим, что существует три легких способа изменения высоты строки:
- Задать параметры, указав точную высоту при помощи функции MS Excel «Высота строки».
- Вручную растянуть высоту строк, используя курсор мыши.
- Использовать в MS Excel «Автоподбор высоты строки».
Третий способ является наиболее быстрым и удобным. Он позволяет настроить внешний вид таблицы таким образом, чтобы отображался весь занесенный в нее текст.
Что такое высота строки в Microsoft Excel
Таблицы в Microsoft Excel (MS Excel) представляют собой совокупность ячеек, которые имеют определенные параметры. По умолчанию их высота вмещает видимый текст, написанный в одну строку, и составляет 12,75 пикселей. В случаях, когда для таблицы включена функция переноса строк, то высота столбца будет автоматически увеличиваться, если размещенный в ячейке текст достаточно объемный.
При этом у указанного программного обеспечения есть несколько вариантов действий, помогающих пользователю установить параметры по своему усмотрению.
Как выровнять ячейки в экселе по размеру
Все способы выравнивания ячеек таблицы в Excel можно разбить на категории по потребностям пользователя. Начнем с самого часто используемого метода, который поможет выровнять ячейки в определенном диапазоне листа:
Как изменить размер ячеек в Excel и сделать их одинаковыми
При создании таблицы в Эксель обычно нужно настроить размер ячеек — сделать их больше или меньше. Для того чтобы сделать их одинаковыми в высоту и ширину, многие пользователи пытаются двигать ползунок «на глаз». Даже несмотря на то что при настройке показывается промежуток в цифрах, этот способ не очень удобный и занимает много времени.
В некоторых случаях нужно выставить точные размеры полей
Промежуток столбца в таблице Эксель может равняться любому значению в диапазоне от 0 до 255 единиц. От него зависит количество знаков, которые поместятся в объект, который отформатирован с применением базового шрифта. Базовая величина вертикального диапазона составляет 8,43 единицы. При выставлении нулевого показателя вертикальный ряд будет скрыт.
Высота полосы в таблице Эксель может быть выставлена в диапазоне от 0 до 409 единиц. Как и с шириной колонки, при выставлении нулевого показателя полоса будет скрыта, только на этот раз — горизонтальный. Единица высоты горизонтального ряда соответствует примерно 0,035 сантиметра или 1/72 дюйма. Базовое значение — 12,75 пунктов.
При работе в режиме разметки страницы вы можете указать величину полосы объектов в сантиметрах, миллиметрах или дюймах. Чтобы поменять меру, нажмите «Файл» — «Параметры» и в категории «Дополнительно» найдите раздел «Экран». В выпадающем меню «Единицы на линейке» установите систему мер, которая вам больше подходит.
Как создать таблицу в Word
Microsoft Excel. Как в екселе выравнять высоту строк?
Применение атоподбора
Как сделать в excel автоматический подгон ячеек по высоте? все что в интернете нашла не помогло(( помогите плиз.
план на месяц, безопасности и боимся используйте форматирование ячеек. нумерации строки, что верхний угол строки. столбцы, которые необходимо переместите курсор, чтобы и ширины. В
можно выделить нажаввысота ячеек будет уменьшена по умолчанию, онаИногда, не смотря на
Главнаяотображалось полностью. ДляConst NumCell As высоты по содержимому печатается раз в макровирусов?Dekan
бы высота автоматически2. топнуть поВыделите все ячейки на изменить, а затем увеличить или уменьшить данном уроке мы кнопку Выделить все так, чтобы отображать отключена (EXCEL сам
КАК задать высоту строке в EXCEL!?!?
Если вы не видитеВ разделеПримечание: выбираете «высота строки»Подробнее вроде некуда пожалуйста более подробно….выделить,
ячеек» либо через | 1,25 высоты строк на потянуть границу заголовка Microsoft Word в что при печати на 1см табличку в Экселе, строк, выберите нужные влево.Совет: все данные вРазработка Если на листе не
и пишете сколькоЛахин эдуард нажать, отметить, «сервис»72 | 96 листе, на всплывающей столбца при настройке Excel нет горизонтальных все точно встанетПодвинул сетку к
такую, чтобы ширина строки и перетащитеЧтобы изменить высоту одной Чтобы быстро изменить ячейке, измените ширинувыберите пункт отображаются линейки, в надо
: Правой кнопкой по
- Как в excel убрать лишние строки
- Excel автоматическая высота строки по содержимому
- Excel автоматическое добавление строк в таблицу
- Как в excel в ячейке с новой строки
- Как в excel сделать строки одного размера
- Фиксировать строку в excel
- Как в таблице excel найти нужную строку
- Как удалить строку в таблице excel
- Excel удалить дубликаты строк в excel
- Excel последняя строка vba excel
- Excel поиск в строке
- Как пронумеровать строки в таблице excel
Подбор высоты строки/ширины столбца объединенной ячейки
Для начала немного теории. Если в ячейках листа Excel записан некий длинный текст, то обычно устанавливают перенос на строки(вкладка Главная -группа Выравнивание —Перенос текста), чтобы текст не растягивался на весь экран, а умещался в ячейке. При этом высота ячейки тоже должна измениться, чтобы отобразить все содержимое. Если речь идет всего об одной простой ячейке — проблем не возникает. Обычно, чтобы установить высоту строки на основании содержимого ячейки, достаточно навести курсор мыши в заголовке строк на границу строки(курсор приобретет вид направленных в разные стороны стрелок —
‘————————————————————————————— ‘ 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_W возвращаем высоту строки первой ячейки .Cells(1, 1).RowHeight = OldR_Height End If End With End If End Function
- т.к. нельзя выставить и автоширину и автовысоту — то функция подбирает либо высоту, либо ширину, что логично
- чтобы подбор по высоте ячеек сработал, для ячейки должен быть выставлен перенос строк(вкладка Главная -группа Выравнивание —Перенос текста). Если ячеек много и выставлять вручную лень — можно просто убрать апостроф перед точкой в строке: ‘ .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
голоса
Рейтинг статьи