Вопрос или проблема
У меня есть таблица Excel с колонками A-U и строками 1-50. Когда я печатаю ее в читаемом масштабе, она печатается в формате шириной в три страницы: страница 1 имеет ширину колонок A-F и длину строк 1-20, страница 2 — колонок G-L и строк 1-20, а страница 3 — колонок M-U × строк 1-20. Затем страницы 4, 5 и 6 идут к строкам 21-40 и так далее. Я не хочу масштабировать печать так, чтобы она была шириной в 1 страницу и n страниц в высоту, потому что это сделает ячейки слишком маленькими. Я предпочел бы иметь формат шириной в один лист, в котором колонки A-U одной строки таблицы печатаются, используя две или три строки на печатной странице, но сохраняя формат таблицы Excel, если это возможно, а затем следующую строку таблицы и так далее.
Как я могу это сделать?
Используйте параметры настройки страницы, чтобы масштабировать печать так, чтобы она была шириной в 1 страницу и n страниц в высоту. Точный вид диалогового окна может зависеть от вашего принтера.
Один из способов настроить это: перейдите в Файл > Печать и выберите выпадающий список Масштабирование под Настройками. Выберите Пользовательское и на вкладке Страница установите “Подогнать” 1 страницу в ширину и 99 (или любое большое число) в высоту.
Редактировать: то, что вы описываете в своем последнем комментарии, невозможно. Excel печатает сетку. Он не может перераспределить отдельные строки и разделить их, чтобы вписаться на одну страницу.
Не используя опцию “экспорт в стороннюю программу”, у вас есть два выбора, каждый из которых имеет свои недостатки. Оба используют Файл ⇨ Сохранить как..
диалог
Первый вариант — сохранить как “Отформатированный текст (с разделителем пробелом)”. Это создаст файл .prn
, который вы можете переименовать в файл .txt
. Это создает хорошие колонны данных, которые относительно чистые. Проблема в том, что длина строки ограничена 240 символами (если я правильно помню), и затем строки продолжаются. Это странное поведение, так как продолжение первой строки начнется после первой части последней строки, а не будет завернуто непосредственно под первой строкой. Так что, если в листе 80 строк, строка 81 будет частью 2 строки 1, а 161 будет частью 3 строки 1.
Второй вариант — сохранить как “Текст (MS-DOS)”. Это создаст файл .txt
, расширение которого вы можете не увидеть, если включена опция “Скрыть известные расширения”. Даже если расширение скрыто, вы сразу поймете, что это обычный текстовый файл по значку, и Проводник Windows назовет его “текстовым файлом” в колонке “Тип”. Проблема с этим вариантом в том, что если колонки сильно отличаются по размеру, это становится довольно неаккуратным. Это размер данных в колонне, а не размер одной колонки по сравнению с другой. Если все данные в колонне имеют почти одинаковую длину, то они все равно будут хорошо выровнены. У этого варианта нет наложенного ограничения длины строки. Однако Блокнот ограничен 1024 символами в строке, если я правильно помню. Это вряд ли будет проблемой для вашего случая, так как он будет переносить строки нормально, и вы собираетесь это делать в любом случае.
После сохранения в соответствии с любым из двух вариантов выше и изменения расширения, если необходимо, для первого варианта, откройте файл в Блокноте. Включите перенос слов, если он отключен, выбрав Формат ⇨ Перенос слов
в меню. Теперь вы можете напечатать его из Блокнота, контролируя заголовок, нижний колонтитул и поля по вашему усмотрению.
Если ваш набор данных имеет колонку с сильно варьирующимися длинами содержимого, и если ваше использование распечаток это позволяет, попробуйте переместить эту колонку или колонки на far правую сторону таблицы. Колонки, такие как описание, адрес, фамилия, название продукта и т. д., являются кандидатами на такое перемещение. Даты, цены, номера телефонов и часто коды продуктов обычно имеют довольно постоянную длину и, следовательно, лучше всего подходят для нахождения ближе к началу строки.
Возможно сделать что-то подобное тому, что вы хотите. Это намного проще, если все ваши колонки имеют одинаковую ширину, и вы хотите разместить одинаковое количество колонок (например, 7; т.е. 21÷3) в каждой строке. Если это для вас приемлемо, и предполагая, что ваши данные находятся на Лист1
, A1:U50
, затем введите
=OFFSET(Sheet1!$A$1, INT((ROW()-1)/3), COLUMN()-1+7*MOD(ROW()-1,3))
в Лист2!A1
, перетащите/заполните вправо до колонки G
(т.е. 7-я колонка) и перетащите/заполните вниз до строки 150 (3×50). Ячейки Лист2!A1:G1
будут отображать Лист1!A1:G1
. (Возможно, вам потребуется выполнить некоторые действия, чтобы правильно отформатировать.) Но затем Лист2!A2:G2
(строка 2) отобразит Лист1!H1:N1
, а Лист2!A3:G3
(строка 3) отобразит Лист1!O1:U1
. А строки Лист2
4-6 будут отображать строку Лист1
2 и так далее.
Например, этот Лист1
:
дает этот Лист2
:
Затем просто распечатайте Лист2.
Это основано на моем ответе на Как разбить одну колонку в Excel на несколько колонок по 55 строк.
Ответ или решение
При печати таблицы Excel с целью обеспечить удобочитаемый результат, важно правильно настроить параметры печати, чтобы строки таблицы выводились построчно на одном листе. С учетом вашего описания, я предлагаю несколько стратегий, которые помогут вам достичь нужного формата.
1. Настройка параметров страницы
Первое, что вы можете сделать, это изменить настройки страницы в Excel. Для этого выполните следующие шаги:
- Откройте Excel и выберите лист, который хотите напечатать.
- Перейдите в Файл > Печать.
- В разделе настроек печати найдите параметры масштабирования. Выберите Произвольный (Custom).
- В разделе Масштабирование установите "Уместить на" 1 страницу шириной и n страниц высотой (вместо n pages tall установите, например, 99). Это даст вам возможность печатать таблицу шириной в один лист, в то время как высота будет автоматически рассчитываться.
Этот подход может уменьшить размер шрифта, поэтому важно следить за тем, чтобы текст был всё равно читаем.
2. Создание нового листа для переупорядочивания данных
Если первый метод не подходит, вы можете создать новый лист в Excel для повторного упорядочивания данных. Вот как это можно сделать:
- Создайте новый лист в вашей книге Excel (например, Sheet2).
- В ячейке A1 нового листа введите следующую формулу:
=OFFSET(Sheet1!$A$1, INT((ROW()-1)/3), COLUMN()-1+7*MOD(ROW()-1,3))
- Протяните формулу вправо до колонки G (7-ая по счету) и вниз до строки 150 (это достаточно, чтобы отобразить все данные с учетом трех строк на каждую исходную строку).
Эта формула переходит от одной строки к другой в зависимости от вашего исходного листа (Sheet1), и обеспечивает вывод данных так, чтобы каждая печатаемая строка содержала данные из трех строк исходного листа.
3. Печать из текстового редактора
Если вам нужно обеспечить полный контроль над форматом при печати, вы можете сохранить таблицу в текстовом формате и распечатать из текстового редактора, такого как Блокнот:
- Перейдите в Файл > Сохранить как и выберите формат "Текст (MS-DOS)".
- Откройте полученный файл в Блокноте, чтобы он сохранил нужное отображение ваших данных.
- Убедитесь, что включен перенос строк, выбрав Формат > Перенос по словам.
- Теперь вы можете напечатать файл, настроив заголовки, нижние колонтитулы и поля по вашему желанию.
Заключение
В зависимости от ваших предпочтений и требований к печати, вы можете выбрать любой из предложенных методов. Они обеспечат вам не только удобочитаемость, но и сохранение формата данных, что особенно важно для анализа и представления информации. Если у вас есть дополнительные вопросы или нужно больше деталей по конкретному методу, не стесняйтесь обращаться.