Here is a stab at the code you require. Hiding and unhiding rows is easy if you know how. I printed a worksheet with the macro recorder on so you can see how you could tailor the printing if you wish. I would set a shortcut key to run this macro.
Option Explicit
Sub PrintNonBlankColA()
Dim RowCrnt As Integer
Dim RowLast As Integer
' Note: This operates on the active worksheet
Application.ScreenUpdating = False
RowLast = Cells.SpecialCells(xlCellTypeLastCell).Row
' Hide all rows with a used cell and column "A" empty
For RowCrnt = 1 To RowLast
If IsEmpty(Cells(RowCrnt, "A")) Then
Range(RowCrnt & ":" & RowCrnt).EntireRow.Hidden = True
End If
Next
' For the following statements, I switched on the macro recorder,
' printed a sheet with all the headers and footers I wanted,
' switched off the macro recorder and copied the code out of the
' saved macro.
' Consider: .CenterHeader = "Activities for Acme Inc"
' If you name the worksheets for the client, the following would
' give you a heading for the appropriate client:
' .CenterHeader = "Activities for " & ActiveSheet.Name
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = "Activities for Acme Inc"
.RightHeader = ""
.LeftFooter = "&D"
.CenterFooter = "Page &P of &N"
.RightFooter = "Copyright Nadir Co."
.LeftMargin = Application.InchesToPoints(0.75)
.RightMargin = Application.InchesToPoints(0.75)
.TopMargin = Application.InchesToPoints(1)
.BottomMargin = Application.InchesToPoints(1)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
' Unhide all rows
Cells.EntireRow.Hidden = False
End Sub
Loading above code to a module
From within Excel:
- Select
Tools
thenMacro
thenVisual Basic Editor
. Alternatively, clickAlt+F11
. You will probably see the Project Explorer down the left, the Immediate window in the bottom with the bulk of the screen grey. - Select
Insert
thenModule
. The grey section will go white. - Copy and paste my code into the now white section. The macro can now be run against any sheet.
Using macro
- Switch to Excel.
- Select
Tools
thenMacro
thenMacros...
. Alternatively, clickAlt+F8
. A small Macro window will be displayed. You will only have one macro so it will be selected and theRun
button will be active.
You can run the macro by clicking Alt+F8
then Enter
but you might find the following more convenient.
- From the Macro window, select
Options
. You will now see a small Macro Options window. - Enter a letter (I always use q) into the little box and click
OK
. - Close the Macro Window.
You can now switch to the appropriate client’s work sheet and click Ctrl+q
to run the macro.
Adjust the macro to your requirements
In the middle of my code is my idea of how you might set up a report with «Activities for Acme Inc» at the top and date, page number and copyright at the bottom.
Replace this code as follows:
- From Excel, select
Tools
thenMacro
thenRecord New macro
. You see a small Record Macro window. - Make sure the text box under «Store macro in:» says «This Workbook».
- Click
OK
. The window disappears. You may see a very small window with a square button labelled Stop recording. If this window is visible, ignore it for the moment. - Print a client report with whatever headings, footers, margins, etc. you require.
- If you can see the small window, click it. If you cannot see it, select
Tools
thenMacro
thenStop Recording
. - Switch to the Visual Basic Editor. There will be a new Module. Click on it in the Project Explorer Window.
- You will see
Sub Macro1()
all the statements to print a client report the way you like andEnd Sub
. - Copy those statements (not sub and end sub) and paste them over the top of the equivalent statements in my macro.
If you do not include anything like client name in your report headers and footers, your macro will be ready for use. I give one example in my code where I use the worksheet name the report header. Without knowing your exact requirements I cannot be more precise but I hope this gives you a start.
Скрытие и отображение строк и столбцов
Скрывайте или отображайте столбцы в электронной таблице, чтобы в ней отображались только нужные данные для просмотра или печати.
Скрытие столбцов
-
Выделите один или несколько столбцов и нажмите клавишу CTRL, чтобы выделить другие несмежные столбцы.
-
Щелкните выделенные столбцы правой кнопкой мыши и выберите команду Скрыть.
Примечание: Двойная линия между двумя столбцами свидетельствует о наличии скрытых столбцов.
Отображение скрытых столбцов
-
Выделите столбцы, смежные со скрытыми.
-
Щелкните выделенные столбцы правой кнопкой мыши и выберите команду Показать.
Можно также дважды щелкнуть двойную линию между двумя столбцами в том месте, где находятся скрытые столбцы.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Отображение первого столбца или строки на листе
Нужна дополнительная помощь?
Excel позволяет скрывать строки и столбцы. Это может понадобиться при печати итогового отчета, в котором не нужно приводить все имеющиеся данные, или при необходимости скрыть пустые строки и столбцы, чтобы сосредоточиться только на используемой области листа.
Формулы, которые ссылаются на данные в скрытых столбцах или строках, продолжат нормально функционировать. Исключением является функция ПРОМЕЖУТОЧНЫЕ.ИТОГИ. Если первый аргумент данной функции больше 100, то она игнорирует данные в скрытых строках или столбцах в результате фильтрации или структурирования. Кроме того, в новой функции АГРЕГАТ есть параметр, позволяющий игнорировать скрытые данные в строках, даже если строки скрыты вручную. Узнать больше об этих функциях можно в Справке — на самом деле они могут намного больше, чем просто складывать числа.
Скрытие столбцов или строк
Чтобы скрыть один или несколько столбцов, используйте любой из следующих способов.
- Выделите ячейку в столбце (или ячейки в столбцах), который нужно скрыть. Затем выберите команду Главная ► Ячейки ► Формат ► Скрыть или отобразить ► Скрыть столбцы.
- Выделите столбцы и щелкните правой кнопкой мыши на заголовках этих столбцов, а потом в открывшемся контекстном меню выберите команду Скрыть.
- Выделите ячейку в столбце (или ячейки в столбцах), который нужно скрыть, и нажмите Ctrl+0.
Для скрытия одной или нескольких строк используйте любой из приведенных ниже способов.
- Выделите ячейку в строке (или ячейки в строках), которую нужно скрыть. Затем выберите команду Главная ► Ячейки ► Формат ► Скрыть или отобразить ► Скрыть строки.
- Выделите строки и щелкните правой кнопкой мыши на заголовках этих строк, а потом в открывшемся контекстном меню выберите команду Скрыть.
- Выделите ячейку в строке (или ячейки в строках), которую нужно скрыть, и нажмите Ctrl+9.
Возвращение на экран скрытых столбцов или строк
То, что было скрыто, можно снова отобразить. Чтобы показать один или несколько скрытых столбцов, используйте любой из следующих способов. Замечу: вернуть на экран скрытый столбец или строку не так просто, как скрыть их, поскольку нельзя выделить столбец или строку, которые скрыты.
- Выделите ячейки, прилегающие с двух сторон к скрытому столбцу, затем выберите команду Главная ► Ячейки ► Формат ► Скрыть или отобразить ► Отобразить столбцы;
- Выделите столбцы, прилегающие с двух сторон к скрытому столбцу, потом щелкните правой кнопкой мыши на заголовках этих столбцов и в открывшемся контекстном меню выберите команду Показать.
Для отображения одной или нескольких скрытых строк используйте любой из приведенных ниже способов.
- Выделите ячейки, прилегающие сверху и снизу к скрытой строке. Затем выберите команду Главная ► Ячейки ► Формат ► Скрыть или отобразить ► Отобразить строки.
- Выделите строки, прилегающие с двух сторон к скрытой строке, потом щелкните правой кнопкой мыши на заголовках этих строк и в появившемся контекстном меню выберите Показать.
- Выделите ячейки, прилегающие сверху и снизу к скрытой строке, и нажмите Ctrt+Shift+9.
По теме
Новые публикации
В некоторых случаях, когда вы распечатываете рабочий лист, вы можете не захотеть печатать какое-то содержимое ячеек, здесь в этом руководстве рассказывается о нескольких способах предотвратить печать определенного содержимого ячеек в Excel.
Предотвратить печать содержимого ячеек, изменив цвет шрифта
Предотвратить печать содержимого ячеек, скрывая
Запретить печать содержимого ячеек с помощью Kutools for Excel
Содержание
- Запретить ячейку содержимое от печати путем изменения цвета шрифта
- Запретить печать содержимого ячеек путем скрытия
- Запретить печать содержимого ячеек с помощью Kutools for Excel
- Запретить печать содержимого ячеек
Запретить ячейку содержимое от печати путем изменения цвета шрифта
Чтобы предотвратить печать содержимого ячейки, вы можете изменить цвет шрифта ячейки, чтобы его нельзя было увидеть при печати.
1. Выберите ячейки, которые вы не хотите печатать, затем нажмите Главная > Цвета шрифта , затем выберите цвет, который совпадает с цветом вашего фона из списка. . См. Снимок экрана:
Здесь мой фон белый, я выбираю белый цвет шрифта. Теперь вы можете видеть мои данные, как показано на скриншоте ниже:
2. Теперь вы можете нажать Файл или Office Button > Печать , чтобы просмотреть рабочий лист.
Запретить печать содержимого ячеек путем скрытия
Есть несколько способов скрыть содержимое ячейки, чтобы оно не было напечатано.
Метод 1 Форматирование ячеек как “”; “”; “”; “”
1. Выберите ячейки, которые вы не будете печатать, и щелкните правой кнопкой мыши, чтобы выбрать Форматировать ячейки в контекстном меню.
2. В диалоговом окне Формат ячеек на вкладке Число нажмите Пользовательский в списке Категория , введите “”; “”; “”; “” в текстовое поле Тип в правом разделе. См. Снимок экрана:
3. Нажмите OK , теперь содержимое ячейки скрыто
Способ 2 Щелкните правой кнопкой мыши, чтобы скрыть весь столбец или строку
Если вы не печатаете весь столбец или строку, вы можете щелкнуть заголовок строки или столбца, чтобы выбрать всю строку или столбец, затем щелкните правой кнопкой мыши, чтобы выбрать Скрыть из контекстного меню. См. Снимок экрана:
Метод 3 Используйте Сгруппировать, чтобы скрыть весь столбец или строку
1. Выберите столбец или строку, которую хотите скрыть, а затем нажмите Данные > Группа .. См. Снимок экрана:
2. Затем появится диалоговое окно Группа , если вы хотите скрыть строки, установите флажок Строки , если вы хотите скрыть столбцы, установите флажок Столбцы и нажмите OK .
Примечание : если вы выбрали для группировки целые столбцы или целые строки, просто пропустите этот шаг.
3. Затем отметьте кнопку «минус», чтобы скрыть столбцы или строки. См. Скриншоты:
Запретить печать содержимого ячеек с помощью Kutools for Excel
Kutools for Excel , с более чем 300 удобными функциями, упрощает вашу работу. |
Бесплатная загрузка |
После бесплатной установки Kutools for Excel, сделайте следующее:
1. Нажмите Kutools Plus > Инструменты печати > Мастер печати множественного выбора . См. Снимок экрана:
2. В появившемся диалоговом окне нажмите кнопку с плюсом, чтобы добавить выделение для печати. См. Снимок экрана:
3. Затем появится диалоговое окно для выбора вариантов, вы можете нажать клавишу Ctrl , чтобы выбрать сразу несколько вариантов. См. Снимок экрана:
4. Нажмите OK , после чего вы увидите, что несколько вариантов добавлены в Диапазон для печати , теперь нажмите Далее . См. Снимок экрана:
4. Затем в диалоговом окне Шаг 2 из 3 отметьте нужный параметр настройки печати и нажмите Далее.
5. На последнем шаге выберите нужный вариант, здесь я просто выбираю Активировать лист, но не печатать его , нажимаю Готово .
Теперь он создаст новый рабочий лист перед всеми листами. , чтобы отобразить все диапазоны, выбранные в диалоговом окне Шаг 1 из 3, и распечатать его. См. Снимок экрана:
Совет: Может быть, иногда данные не в порядке, вы можете перетащить их в нужное место, а затем распечатать. Щелкните здесь, чтобы получить дополнительные сведения о мастере печати множественного выбора.
Запретить печать содержимого ячеек
- Запретить текст в столбец при вставке данных в Excel
- Предотвратить перетекание текста в следующие ячейки в Excel
OlgaNN Пользователь Сообщений: 4 |
всем привет! помогите, пожалуйста. мне руководство заявило что в эксель есть функция, позволяющая выделить ячейку на экране, чтобы пользователь видел в какие ячейки нужно вводит данные, но чтобы при печати эти ячейки печатались как обычно, без выделения что-то я не могу найти такого, никто не знает такую фишку? |
Возможно условный формат: если в ячейке нет нужных данных, то она выделена цветом (наприм. кравным), если нужные данные внести, то ее цвет меняется (наприм без цвета). Но при этом если данные не вносили, то на печать выводится тот цвет, который выбран при отсутствии необходимых данных (т.е. красный). |
|
webley Пользователь Сообщений: 1995 |
это можно реализовать с помощью примечаний. По-моему, примечания на печать не выводятся |
OlgaNN Пользователь Сообщений: 4 |
{quote}{login=}{date=10.12.2010 03:15}{thema=}{post}Возможно условный формат: если в ячейке нет нужных данных, то она выделена цветом (наприм. кравным), если нужные данные внести, то ее цвет меняется (наприм без цвета). Но при этом если данные не вносили, то на печать выводится тот цвет, который выбран при отсутствии необходимых данных (т.е. красный).{/post}{/quote} не подскажете как правильно ввести формулу в условное форматирование на проверку данных |
webley Пользователь Сообщений: 1995 |
А еще можно попробовать в Параметрах страницы на вкладке Лист поставить галочку Черно-белая печать — тогда похоже тоже заливка ячеек игнорируется |
Hugo Пользователь Сообщений: 23257 |
Можно ячейки автофигурами помечать, а в свойствах фигур есть опция «не выводить на печать». |
OlgaNN Пользователь Сообщений: 4 |
{quote}{login=webley}{date=10.12.2010 03:24}{thema=}{post}А еще можно попробовать в Параметрах страницы на вкладке Лист поставить галочку Черно-белая печать — тогда похоже тоже заливка ячеек игнорируется{/post}{/quote} спасибо, это действительно так решается! заливка игнорируется с этой галочкой! ларчик просто открывается |
OlgaNN Пользователь Сообщений: 4 |
{quote}{login=}{date=10.12.2010 03:26}{thema=}{post}в файле{/post}{/quote} спасибо! |
webley Пользователь Сообщений: 1995 |
#10 10.12.2010 16:20:13 {quote}{login=OlgaNN}{date=10.12.2010 03:36}{thema=Re: }{post}{quote}{login=webley}{date=10.12.2010 03:24}{thema=}{post}А еще можно попробовать в Параметрах страницы на вкладке Лист поставить галочку Черно-белая печать — тогда похоже тоже заливка ячеек игнорируется{/post}{/quote} спасибо, это действительно так решается! заливка игнорируется с этой галочкой! ларчик просто открывается :-){/post}{/quote} Только при этом, к сожалению, еще и цвета диаграмм, например, игнорируются |
Настройка области печати в страничном режиме
Страничный режим позволяет нам зафиксировать границы области печати документа на всех страницах одновременно. Он позволяет настроить и оптимизировать таблицы под размеры и ориентацию бумажных листов.
Кроме того в этом режиме самый удобный предварительный просмотр перед печатью. Ведь видны все страницы с оптимальным масштабом, как миниатюры среднего размера. Ситуация полностью под контролем пользователя. Рассмотрим, как задать изменить увеличить, уменьшить или удалить области печати.
Как задать область печати в Excel?
Чтобы перейти в режим для управления границами и областями, нужно зайти на вкладку «Вид» и в разделе режим просмотра книги, выбрать инструмент «Страничный режим»
Второй вариант это щелкнуть на третий переключатель в правой стороне строки состояния окна.
Как изменить область печати в Excel?
Чтобы задать область печати нужно установить и зафиксировать границы разметки страниц, которые и будут отделять все области. Для этого необходимо в страничном режиме щелкнуть по синей пунктирной линии, удерживая левую клавишу мыши, переместить синюю линию в нужное положение.
Если таблица выходит за белую область, то все что находиться в серой области не будет выведена на принтер. Если у вас в страничном режиме все данные находятся на серой области, то при печати из Excel выходит пустая страница. Можно принудительно убрать область печати, перемещая границы между серым и белым полем.
Для того, чтобы задать область печати необходимо установить и настроить границы. Как добавить границы? Кликаем по ячейке, которая находится в месте, где должен быть разрыв на страницы и выбираем опцию «Вставить разрыв страницы».
Как добавить только вертикальную границу? Щелкаем правой кнопкой мышки по столбцу, где будет проложена граница, выбираем туже опцию: «Вставить разрыв страницы». При вставке горизонтальной границе действуем аналогично, только кликаем по заголовку строки.
Примечание. Заметьте, в контекстном меню есть опция «Сброс разрывов страниц». Она позволяет удалить все границы и сделать настройки по умолчанию. Используйте ее, чтобы начать все заново.
Как сохранить настройки областей печати?
Все настройки областей можно сохранять в шаблоны, так называемые «Представления». Этот инструмент находится под страничным режимом.
При выборе инструмента «Представления» загружается менеджер представлений.
Чтобы сохранить данную настройку нажимаем кнопку добавить. Вводим имя и вот он уже в списке представлений.
Новые версии Excel начиная с 2007-го года, обладают эффективными средствами для подготовки документов на печать. Документ Excel более специфический с точки зрения организации данных для вывода на принтер, чем документ Word. Поэтому в Excel инструменты по настройке и подготовки документов на печать обладают большим количеством функций.