![]() |
|
Модераторы: Akina |
![]()
|
|
| kokos |
|
|||
|
Unregistered |
Помогите пожалуйста! Использую в работе большие таблицы по несколько тысяч строк и 300 столбцов. Возникает необходимость скрывать столбцы не содержащие данных (для разных строк их бывает по 50 подряд, а затем опять данные) для удобства чтения. При этом первая строка содержит наименование столбцов (все проименованы). Нужны пара кнопок для скрытия и отображения столбцов чтобы данные шли подряд. Например с помощью автофильтра выбрано 20 строк и для них нужно скрыть те столбцы в которых нет ни одной записи кроме наименования столбца. Информацию считываем, затем возвращаем как было. Спасибо!
|
|||
|
||||
| ~FoX~ |
|
|||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 10 Всего: 68 |
ActiveCell.ColumnWidth = 0 'скрыть
ActiveCell.ColumnWidth = 100 ' показать Можно прям на панель кнопки две вытащить и на них макросы навесить |
|||
|
||||
| Alles |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 26.6.2003 Где: RUSSIA Репутация: 2 Всего: 2 |
Вопрос тебе понятен? ему нужен цикл на обработку и если столбец содержит только название то тогда скрыть. kokos посмотри пример кода у iNot там цикл на поиск определенного значения по шаблону. ты можеш изменить условия и оставить только один цикл (там перебираются все листы книги) на один лист. А в условии поставь : если значений нет - тогда уже используй то что тебе предложил FoX. |
|||
|
||||
| ~FoX~ |
|
|||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 10 Всего: 68 |
Private sub CommandButton1_Click()
dim x,y, as integer For a = 2 to 100 - по количеству строк for b = 2 to 300 - по кличеству столбцов if Cells(a,b) <> "" then exit sub else ActiveCell.ColumnWidth = 0 'скрыть ActiveCell.ColumnWidth = 100 ' показать end if next b next a end sub Приблизительно так - хотя не проверял на практике )))) Удачи |
|||
|
||||
| Alles |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 26.6.2003 Где: RUSSIA Репутация: 2 Всего: 2 |
Ну я так думаю , что если давать код то нужно самому его обкатать ( каюсь и у меня такие грехи были) Ну а вообще направление правильное, я так думаю что и автор уже понял как эту проблему решить. Удачи Вам !!! |
|||
|
||||
| ~FoX~ |
|
|||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 10 Всего: 68 |
Alles Да знаю-знаю.......у меня просто времени не было.......ди и в конце-концов просто идею (алгоритм) хотел показать.......))))
|
|||
|
||||
| Alles |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 26.6.2003 Где: RUSSIA Репутация: 2 Всего: 2 |
|
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |