Работа с шириной столбцов в Microsoft Excel — казалось бы, простая задача. Но когда требуется задать точные размеры в сантиметрах, а не в стандартных символах, многие пользователи сталкиваются с трудностями. По умолчанию Excel измеряет ширину столбцов в "символах" (приблизительно равных ширине цифры 0 в стандартном шрифте Calibri 11 pt), что не всегда удобно для печати или создания профессиональных отчётов.
В этой статье вы найдёте 5 проверенных способов установить ширину столбца в сантиметрах — от ручных настроек до автоматизации через VBA. Мы разберём нюансы для разных версий Excel (2010–2023, Office 365), объясним, почему иногда значения "плывут" при печати, и дадим советы по точной калибровке. А если вам нужно не только задать ширину, но и зафиксировать её для всего документа — здесь тоже есть решение.
Спойлер: самый надёжный метод (через параметры страницы) работает даже в Excel Online, где многие функции ограничены. Но обо всём по порядку.
Почему Excel не показывает ширину столбца в сантиметрах?
По умолчанию Microsoft Excel использует собственную систему единиц для измерения ширины столбцов — "символы". Один "символ" примерно равен ширине цифры 0 в шрифте Calibri 11 pt, но это значение может варьироваться в зависимости от:
- 📝 Шрифта и его размера (например,
Arial 10 ptдаст другую ширину, чемTimes New Roman 12 pt) - 🖨️ Настроек принтера (поля, масштаб печати)
- 📏 Версии Excel (в Excel 2013 и новее алгоритм расчёта немного изменился)
Это создаёт проблемы, когда нужно:
- 📄 Подготовить таблицу для печати с точными полями (например, для бланков строгой отчётности).
- 🔄 Создать шаблон, где ширина столбцов должна совпадать с другими документами (например, в Word или Google Sheets).
- 📊 Визуально выровнять данные по сетке с фиксированным шагом (например, для диаграмм или графиков).
К сожалению, в интерфейсе Excel нет прямой опции "установить ширину в см". Но обойти это ограничение можно — и далее мы покажем как.
Способ 1: Ручное задание ширины через параметры страницы (самый точный)
Этот метод позволяет привязать ширину столбцов к физическим единицам (сантиметрам) через настройки печати. Он работает во всех версиях Excel, включая Office 365 и Excel Online (с ограничениями).
Алгоритм действий:
- Выделите столбец (или несколько столбцов), ширину которого нужно задать.
- Перейдите на вкладку
Разметка страницы(в Excel 2007–2019) илиВид → Разметка страницы(в Excel 365). - В группе
Параметры страницынажмите на маленькую стрелку в правом нижнем углу (откроется окноПараметры страницы). - Перейдите на вкладку
Страницаи в разделеМасштабвыберитеРазместить не более чем на:→ укажите1 страницу в ширину. - Нажмите
ОКи вернитесь на лист. Теперь ширина столбца будет привязана к физическим размерам страницы.
Чтобы задать конкретное значение в сантиметрах, выполните дополнительные шаги:
- 📏 Измерьте ширину столбца линейкой на экране (или используйте инструмент
Линейкав Windows —Win + Shift + S). - 🔄 Подстройте ширину вручную (потянув за правую границу заголовка столбца), пока не получите нужное значение.
- 🔒 Зафиксируйте результат, нажав правой кнопкой на заголовок столбца →
Ширина столбца→ запишите полученное число (например,8.43).
Выбрать столбец(ы) для изменения|
Активировать режим "Разметка страницы"|
Установить масштаб "1 страница в ширину"|
Измерить ширину линейкой или экранным инструментом|
Зафиксировать значение в настройках столбца-->
Преимущества метода:
- ✅ Точность до миллиметра при правильной калибровке.
- ✅ Работает даже в Excel Online (без VBA).
- ✅ Сохраняет пропорции при печати.
⚠️ Внимание: Если после настройки вы измените поля страницы или ориентацию (с книжной на альбомную), ширину столбцов придётся перенастраивать. Этот метод привязан к текущим параметрам печати.
Способ 2: Использование линейки для визуальной настройки
Если вам не нужна абсолютная точность, а требуется просто приблизиться к заданному размеру (например, 5 см), можно воспользоваться визуальной линейкой в режиме разметки.
Как включить линейку:
- Перейдите на вкладку
Вид. - Поставьте галочку напротив
Линейка(если опция неактивна, сначала включитеРазметка страницы). - Теперь над таблицей появится горизонтальная линейка с делениями в сантиметрах.
Далее действуйте так:
- 🖱️ Подведите курсор к правой границе заголовка столбца (он превратится в двойную стрелку ↔).
- 📏 Перетаскивайте границу, ориентируясь на деления линейки.
- 🔍 Для большей точности увеличьте масштаб листа (
Ctrl + колесо мыши).
Нюансы:
- Линейка показывает приблизительные значения — погрешность может достигать
±2–3 мм. - В Excel 365 линейка по умолчанию скрыта. Чтобы её включить, может потребоваться сначала перейти в
Файл → Параметры → Дополнительнои поставить галочкуПоказывать горизонтальную линейку. - Если линейка отображает пиксели вместо сантиметров, измените единицы измерения в параметрах Windows (
Пуск → Параметры → Система → Дисплей → Масштаб и разметка).
| Версия Excel | Поддерживает линейку? | Точность (см) | Примечания |
|---|---|---|---|
| Excel 2010–2019 | Да | ±0.2 см | Требуется режим Разметка страницы |
| Excel 365 (десктоп) | Да | ±0.1 см | Линейка скрыта по умолчанию |
| Excel Online | Нет | — | Альтернатива: использовать Печать → Предварительный просмотр |
| Excel для Mac | Да | ±0.3 см | Единицы измерения настраиваются в системных параметрах macOS |
Способ 3: Макрос VBA для автоматической установки ширины в см
Для тех, кто готов использовать Visual Basic for Applications, есть универсальный макрос, который преобразует сантиметры в внутренние единицы Excel. Этот метод точнее ручной настройки и работает во всех версиях, включая Excel 2010.
Код макроса:
Sub SetColumnWidthInCM(columnLetter As String, widthCM As Double)
' Преобразуем сантиметры в пункты (1 см ≈ 28.35 пунктов)
Dim widthPoints As Double
widthPoints = widthCM * 28.35
' Преобразуем пункты во внутренние единицы Excel
Dim widthExcel As Double
widthExcel = widthPoints / 7.21
' Применяем ширину к столбцу
Columns(columnLetter).ColumnWidth = widthExcel
End Sub
' Пример использования: установить ширину столбца A в 3 см
Sub Example()
SetColumnWidthInCM "A", 3
End Sub
Как использовать:
- Нажмите
Alt + F11, чтобы открыть редактор VBA. - Вставьте код выше в новый модуль (
Insert → Module). - Запустите макрос
Example(или измените его под свои нужды).
Преимущества:
- ✅ Абсолютная точность — погрешность не превышает
0.1 мм. - ✅ Работает для любого количества столбцов (можно модифицировать код для диапазона, например,
"A:C"). - ✅ Сохраняет настройки при изменении шрифта или масштаба.
⚠️ Внимание: В Excel Online и мобильной версии Excel макросы не работают. Также убедитесь, что в настройках безопасности разрешено выполнение макросов (Файл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Настройки макросов).
Модификации кода:
- 🔄 Чтобы задать ширину для нескольких столбцов, замените
Columns(columnLetter)наRange("A:C"). - 📊 Для автоматического применения ко всем столбцам листа используйте цикл:
Dim i As IntegerFor i = 1 To Columns.Count
SetColumnWidthInCM Cells(1, i).Address(False, False), 2.5 ' 2.5 см для всех столбцов
Next i
Почему коэффициент 28.35 и 7.21?
В Excel используется сложная система преобразования единиц:
1 см ≈ 28.35 пунктов (типографских единиц),
а 1 символ ширины Excel ≈ 7.21 пункта при стандартном шрифте Calibri 11 pt.
Формула widthExcel = (widthCM * 28.35) / 7.21 даёт точное соответствие.
Способ 4: Привязка к размеру ячейки (для печати)
Если ваша цель — подготовить таблицу к печати с фиксированными размерами, можно пойти от обратного: задать размер ячейки в сантиметрах, а затем подогнать под него ширину столбца.
Пошаговая инструкция:
- Выделите ячейку, ширину которой хотите использовать как эталон.
- Перейдите в
Главная → Формат → Формат ячейки(или нажмитеCtrl + 1). - На вкладке
ВыравниваниенажмитеПеренос текста(это позволит ячейке растягиваться по ширине). - Введите в ячейку текст (например,
XXXXXXXXXX) и растяните столбец так, чтобы текст занимал ровноN см(измерьте линейкой). - Запомните полученную ширину столбца в символах (правый клик по заголовку →
Ширина столбца). - Применяйте это значение к другим столбцам.
Когда этот метод полезен:
- 📄 При создании бланков с фиксированными полями (например, для заполнения от руки).
- 📊 Для выравнивания графиков и диаграмм по сетке.
- 🔄 Когда нужно синхронизировать ширину с другими программами (например, Word или AutoCAD).
Ограничения:
- ❌ Точность зависит от размера шрифта — при изменении шрифта придётся повторять настройку.
- ❌ Не работает, если в ячейках используется объединение (
Объединить и поместить в центре).
Способ 5: Использование надстройки (для новичков)
Если работа с VBA или ручные расчёты кажутся сложными, можно воспользоваться готовыми надстройками. Они добавляют в Excel кнопки для прямого задания ширины в сантиметрах.
Популярные надстройки:
- 🛠️ Kutools for Excel — плагин с функцией
Adjust Column Width/Row Height, где можно указать размер в см, мм или пикселях.- Стоимость: от $39 (однократная покупка).
- Сайт:
https://www.extendoffice.com
- 📦 Ablebits — пакет инструментов с опцией
Resize Table, поддерживающей метрические единицы.- Стоимость: $59/год.
- Сайт:
https://www.ablebits.com
- 🆓 Excel Column Width in CM — бесплатный макрос от независимых разработчиков (доступен на
GitHub).
Как установить надстройку (на примере Kutools):
- Скачайте установщик с официального сайта.
- Запустите файл и следуйте инструкциям (потребуются права администратора).
- Откройте Excel → вкладка
Kutools→Format → Adjust Column Width/Row Height. - Введите нужное значение в сантиметрах и примените к выбранным столбцам.
Плюсы надстроек:
- ✅ Нет нужды писать код — всё настраивается через графический интерфейс.
- ✅ Поддержка дробных значений (например,
2.75 см). - ✅ Дополнительные функции (например, массовое изменение высоты строк).
⚠️ Внимание: Перед установкой надстроек отключите защиту макросов в Excel (Файл → Параметры → Центр управления безопасностью → Параметры центра → Включить все макросы). После установки верните настройки безопасности обратно!
Сравнение методов: какой выбрать?
Выбор способа зависит от ваших задач и уровня подготовки. Ниже — сравнительная таблица с рекомендациями.
| Метод | Точность | Сложность | Подходит для | Ограничения |
|---|---|---|---|---|
| Параметры страницы | Высокая | Низкая | Печать, фиксированные шаблоны | Привязан к текущим настройкам принтера |
| Линейка | Средняя (±0.2 см) | Низкая | Быстрая правка, визуальная оценка | Не работает в Excel Online |
| Макрос VBA | Максимальная | Средняя | Автоматизация, массовая обработка | Не работает в Excel Online/Mac |
| Привязка к ячейке | Средняя | Низкая | Печатные бланки, статичные таблицы | Зависит от шрифта |
| Надстройки | Высокая | Низкая | Новички, частая работа с см | Платные, требуют установки |
Рекомендации по выбору:
- 📄 Для печати: используйте параметры страницы или привязку к ячейке.
- 🔄 Для динамических таблиц: макрос VBA или надстройки.
- 🆓 Для разовых задач: линейка или ручная настройка.
Частые ошибки и как их избежать
Даже опытные пользователи Excel иногда сталкиваются с проблемами при настройке ширины столбцов в сантиметрах. Вот самые распространённые ошибки и способы их решения:
1. Ширина "плывёт" при печати
- Причина: В настройках принтера установлен масштаб
Подогнать под:или изменены поля. - Решение: Перейдите в
Файл → Печать → Параметры принтераи установитеФактический размер.
2. Макрос не работает в Excel для Mac
- Причина: В Excel для Mac другая модель объектов VBA, и некоторые команды не поддерживаются.
- Решение: Используйте альтернативный код:
Sub SetColumnWidthInCM_Mac(columnLetter As String, widthCM As Double)Columns(columnLetter).ColumnWidth = widthCM * 2.83 ' Упрощённая формула для Mac
End Sub
3. Линейка показывает пиксели вместо сантиметров
- Причина: В системных настройках Windows или macOS установлены неметрические единицы.
- Решение:
- Для Windows:
Пуск → Параметры → Время и язык → Регион → Дополнительные параметры даты, времени и региональных стандартов → Изменить форматы → Дополнительно → Единицы измерения→ выберитеМетрическая система. - Для Mac:
Системные настройки → Язык и регион → Дополнительно → Единицы измерения→Сантиметры.
- Для Windows:
4. После изменения шрифта ширина столбцов сбивается
- Причина: Ширина в символах зависит от размера шрифта.
- Решение: Используйте макрос VBA или зафиксируйте шрифт для всего листа (
Главная → Шрифт → Выбрать шрифт и размер).
5. В Excel Online нет линейки и макросов
- Решение: Используйте параметры страницы (способ 1) или подготовьте файл в десктопной версии, а затем загрузите в Excel Online.
FAQ: Ответы на частые вопросы
Можно ли задать ширину столбца в сантиметрах без макросов?
Да, для этого используйте способ 1 (параметры страницы) или способ 4 (привязка к ячейке). Оба метода не требуют знания VBA и работают в большинстве версий Excel.
Почему при печати столбцы получаются уже, чем на экране?
Это происходит из-за:
- 🖨️ Полей страницы (уменьшите их в
Разметка страницы → Поля). - 🔍 Масштаба печати (установите
100%в настройках принтера). - 📄 Ориентации страницы (попробуйте поменять с книжной на альбомную).
Чтобы избежать проблем, всегда используйте предварительный просмотр (Файл → Печать).
Как задать ширину в сантиметрах для всех столбцов на листе?
Самый быстрый способ — использовать макрос VBA с циклом (см. способ 3). Альтернативно:
- Выделите все столбцы (клик по треугольнику между заголовками строк и столбцов).
- Задайте ширину для одного столбца вручную (например, растяните до 5 см).
- Скопируйте ширину на остальные столбцы через
Формат по образцу(кисть в группеБуфер обмена).
В Excel для Mac нет вкладки "Разметка страницы". Как быть?
В Excel для Mac режим разметки включается иначе:
- Перейдите в
Вид → Макет страницы. - Далее действуйте как в способе 1 (через
Параметры страницы).
Для точной настройки ширины в см используйте макрос (см. способ 3, раздел про Excel для Mac).
Можно ли сохранить ширину столбцов в см при экспорте в PDF?
Да, если вы использовали способ 1 (параметры страницы) или способ 4 (привязка к ячейке). При экспорте в PDF:
- Перейдите в
Файл → Экспорт → Создать PDF/XPS. - Убедитесь, что в настройках выбрано
Оптимизировать для: Стандарт (издание в сети и печати). - Нажмите
Опубликовать.
Если ширина сбивается, проверьте:
- 📏 Масштаб в настройках PDF (должен быть
100%). - 🖼️ Формат страницы (должен совпадать с настройками в Excel).