Управление областью печати в Exel

KelWin

Местный
Регистрация
3 Сен 2006
Сообщения
260
Реакции
82
Credits
0
Exсel 2007, вот такая возникла проблема:
Имеем некоторое количество строк имеющих 3 поля: "Название", "Количество", "Стоимость".

Задача: на печать вывести только те строки, поле "Количество" которых содержит ненулевое значение.

Кто знает как это сделать?
 
Последнее редактирование модератором:

Veda

Местный
Регистрация
12 Май 2005
Сообщения
1,285
Реакции
564
Credits
0
Если я верно понял суть проблемы, то включаешь автофильтры (остались они ещё в 2007?), отфильтровываешь поле "Количество" по нужным значениям и печатай...
 

KelWin

Местный
Регистрация
3 Сен 2006
Сообщения
260
Реакции
82
Credits
0
Тут проблема есть, структуру документа менять нельзя, поэтому фильтры не пойдут. Я придумал вариант скрывать строки с нулем, вылезла другая фишка - лист защищен под пароль - нельзя изменить свойство Hidden. Как программно сначала отключить защиту а в конце включить с установкой пароля?
 

a.n.onim

Местный
Регистрация
26 Окт 2004
Сообщения
97
Реакции
13
Credits
196
Процедура защиты всех листов:
Public Sub ProtectSheets()
Dim V_I1 As Integer 'переменная цикла
'begin
ActiveWorkbook.Protect Structure:=True, Windows:=False
For V_I1 = 1 To ActiveWorkbook.Sheets.Count
Worksheets(V_I1).Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Next V_I1
End Sub


Процедура снятия защиты со всех листов:
Public Sub UnprotectSheets()
Dim V_I1 As Integer 'переменная цикла
'begin
ActiveWorkbook.Unprotect
For V_I1 = 1 To ActiveWorkbook.Sheets.Count
Worksheets(V_I1).Unprotect
Next V_I1
End Sub


Пароль не используется. Если надо с использованием пароля - добавляется параметр Password:="пароль" к командам Worksheets(V_I1).Protect и Worksheets(V_I1).Unprotect
 

ZeVS

Специалист
Местный
Регистрация
2 Окт 2005
Сообщения
220
Реакции
77
Credits
10
Тут проблема есть, структуру документа менять нельзя, поэтому фильтры не пойдут...
:eek: Фильтрация не меняет структуру, а скрывает строки, не удовлетворяющие условию отбора.
 

KelWin

Местный
Регистрация
3 Сен 2006
Сообщения
260
Реакции
82
Credits
0
Пришлось слегка поучить VBA и немного непоспать :), все оказалось довольно прозаично. Как там говорят: "нетрудно заметить что..." :). Респект всем за помощь!