Скрытие строк Excel

Программирование на Visual Basic for Applications
Malone32®
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 116
Зарегистрирован: 23.01.2005 (Вс) 21:19
Откуда: Оттуда

Скрытие строк Excel

Сообщение Malone32® » 16.10.2006 (Пн) 10:50

Как можно скрыть строки определенного диапозона?

Annushka
Обычный пользователь
Обычный пользователь
 
Сообщения: 81
Зарегистрирован: 17.05.2005 (Вт) 12:44
Откуда: Украина

Сообщение Annushka » 16.10.2006 (Пн) 12:16

Код: Выделить всё
Rows("1:10").EntireRow.Hidden = True

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 16.10.2006 (Пн) 14:02

или так:

Rows("1:10").Hidden = True

:D

KL
[MVP - Microsoft Excel]
Привет,
KL

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 16.10.2006 (Пн) 16:06

KL писал(а):или так:

Rows("1:10").Hidden = True

:D

KL
[MVP - Microsoft Excel]

Требовалось: ...строки определенного диапозона...
Поэтому направление мыслей Annushka имхо правильнее

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 16.10.2006 (Пн) 19:03

Nicky писал(а):
KL писал(а):или так:

Rows("1:10").Hidden = True

:D

KL
[MVP - Microsoft Excel]

Требовалось: ...строки определенного диапозона...
Поэтому направление мыслей Annushka имхо правильнее


И...???

Интересно, а чем направление моих мыслей отличается от Annushkи, кроме того, что я убрал тафталогию (масло масляное). Может сначала подумать, а потом приговор выносить? :-)
Привет,
KL

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 17.10.2006 (Вт) 7:20

Вот сам и подумай :)
Код: Выделить всё
Sub Макрос2()
  On Error GoTo er
 
  With Range("C5:C8,E15:E18,G24:G26,K7:K14,M20:N24,B18:B24")
    .Hidden = True 'закомментировать
    .EntireRow.Hidden = True
  End With
  GoTo ok
 
er:
  MsgBox Err.Description
ok:
End Sub

Malone32®
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 116
Зарегистрирован: 23.01.2005 (Вс) 21:19
Откуда: Оттуда

Сообщение Malone32® » 17.10.2006 (Вт) 8:32

Спасибо!

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 17.10.2006 (Вт) 15:54

Nicky писал(а):Вот сам и подумай :)


Спасибо, подумал:

1) учи русский язык или покажи мне в нижеследующем строки НЕопределенного диапазона:

Rows("1:10").Hidden = True

2) иди к оккулисту (найди отличия):

Rows("1:10").Hidden = True
Rows("1:10").EntireRow.Hidden = True
Range("C5:C8,E15:E18,G24:G26,K7:K14,M20:N24,B18:B24").EntireRow.Hidden = True

Ты бы сразу спросил, есть ли у объекта Range свойство Hidden, и я бы тебе объяснил, что нет. А так тебе пришлось код писать, что бы это понять :-(

Да, и если хочешь то же, что у тебя, но короче, то:

[C5:C8,E15:E18,G24:G26,K7:K14,M20:N24,B18:B24].Rows.Hidden = True
Привет,
KL

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 17.10.2006 (Вт) 16:19

Учи английский!
Range - это диапазон.
Строки определенного диапазона (читай Range) скрыть через Hidden не получится, ты сам сказал. Получается, ты себе противоречишь. Rows("1:10") упоминались не автором, что ты их везде таскаешь? Я тебе скромно указал на EntireRow. И не надо демагогии.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 17.10.2006 (Вт) 16:26

А давайте жить дружно.
Lasciate ogni speranza, voi ch'entrate.

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 17.10.2006 (Вт) 17:21

Nicky писал(а):Учи английский!
Range - это диапазон.
Строки определенного диапазона (читай Range) скрыть через Hidden не получится, ты сам сказал. Получается, ты себе противоречишь. Rows("1:10") упоминались не автором, что ты их везде таскаешь? Я тебе скромно указал на EntireRow. И не надо демагогии.
Ууууу, как все запущено!!!

1) Тебя не доучили английскому, детка! Я всегда не доверял английским средним школам :-)
Диапазон - это Range или range (не знаю, способен/на ли ты уловить разницу, но не думаю, что для этого требуется закончить Инъяз и жить 10 лет в Лондоне, как это сделал я). Отсюда "1:10" есть диапазон. Так что не учи отца...

2) И что характерно, если ты утверждаешь, что Rows("1:10") не есть диапазон, то здесь: "Поэтому направление мыслей Annushka имхо правильнее" противоречишь себе ты. Или все же забыл сходить к оккулисту?

И не надо демагогии, тем более основанной на невежестве.
Привет,
KL

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 17.10.2006 (Вт) 17:43

Во-первых:
Nicky писал(а):...Rows("1:10") упоминались не автором, что ты их везде таскаешь?...

Во-вторых:
где я утверждал, что Rows("1:10") - не диапазон? Я лишь указал (хотя ты мог этого и не понять, но в этом нет моей вины), что диапазоны бывают разные. И хватит об этом

PS: И не надо фамильярностей

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 17.10.2006 (Вт) 18:40

Nicky писал(а):Во-первых:
Nicky писал(а):...Rows("1:10") упоминались не автором, что ты их везде таскаешь?...
Прекрасно, согласен. Но автор ни разу не употребил слова Range, которое везде таскаешь ты, и из-за которого весь сыр-бор и даже не употребил EntireRow, с помощью которого ты определяешь правилность решения (и направления мыслей). Даже если отбросить твои ограниченные познания в английском, оба выражения:

Range("A1:A10")
Rows("1:10")

возвращают объект диапазон (читай Range), так что и со знанием объектной системы Excel у тебя, по-видимому, не все в порядке.

Nicky писал(а):Во-вторых:
где я утверждал, что Rows("1:10") - не диапазон?
Здесь: "Строки определенного диапазона (читай Range) " И вообще, ты строишь все твои рассуждения на собственном предположении, что автор имел ввиду свойство Range, при этом исключая то, что точно так же могло иметься ввиду свойство Rows (и еще уйма других) также возвращающее объект Range, а это отдает незнанием разницы между Property и Object.

Nicky писал(а): Я лишь указал (хотя ты мог этого и не понять, но в этом нет моей вины), что диапазоны бывают разные.
Этого ты как раз не сделал, да и не мог, т.к. узнал только что ;-)

Nicky писал(а):PS: И не надо фамильярностей
Не буду.

Nicky писал(а):И хватит об этом
Ну хватит, так хватит.
Привет,
KL

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 18.10.2006 (Ср) 14:47

:?
Nicky писал(а): Я лишь указал (хотя ты мог этого и не понять, но в этом нет моей вины), что диапазоны бывают разные.

Самое время процитировать подпись Amed

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 18.10.2006 (Ср) 15:04

Nicky писал(а)::?
Nicky писал(а): Я лишь указал (хотя ты мог этого и не понять, но в этом нет моей вины), что диапазоны бывают разные.

Самое время процитировать подпись Amed


Учите матчасть, профессор!

Подпись: Развалинами Рейхстага удовлетворен!
Привет,
KL


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 66

    TopList