Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Сделайте плиз макрос. Платно. Бюджет 300р. Оплата Яндекс.Ден - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин  
Сделайте плиз макрос. Платно. Бюджет 300р. Оплата Яндекс.Ден
nechaevm Дата: Суббота, 10.08.2013, 21:34 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Посмотрите плиз,
у меня почему-то не выполняется сравнение.

В общем смысл задачи:
1.Макрос запускается автоматом при открытии документа.
При выборе значения в фильтре в колонке один макрос берет значение фильтра и сравнивает со значением в строке 2 в колонках с 4 по 9.
после оставляет чего скрывает колонки с 4 по 9 во второй строке которых значение не совпадает со значением фильтра.
При изменеиии фильтра, колонки снова отображаются все и скрываются уже колонки в которых во второй строке не совпадает значение новой выборки из фильтра и так до тех пор, пока открыт файл.

С уважением,
Михаил.

[vba]
Код
Sub Фильтр()
If ThisWorkbook.Worksheets(1).AutoFilter.Filters(1).On Then
filter_string = ThisWorkbook.Worksheets(1).AutoFilter.Filters(1).Criteria1

For i = 4 To 9
If Cells(2, i) = filter_string Then
Columns(i).EntireColumn.Hidden = False
Else
Columns(i).EntireColumn.Hidden = True
End If
Next
End If
End Sub
[/vba]


Сообщение отредактировал nechaevm - Воскресенье, 11.08.2013, 07:51
 
Ответить
СообщениеПосмотрите плиз,
у меня почему-то не выполняется сравнение.

В общем смысл задачи:
1.Макрос запускается автоматом при открытии документа.
При выборе значения в фильтре в колонке один макрос берет значение фильтра и сравнивает со значением в строке 2 в колонках с 4 по 9.
после оставляет чего скрывает колонки с 4 по 9 во второй строке которых значение не совпадает со значением фильтра.
При изменеиии фильтра, колонки снова отображаются все и скрываются уже колонки в которых во второй строке не совпадает значение новой выборки из фильтра и так до тех пор, пока открыт файл.

С уважением,
Михаил.

[vba]
Код
Sub Фильтр()
If ThisWorkbook.Worksheets(1).AutoFilter.Filters(1).On Then
filter_string = ThisWorkbook.Worksheets(1).AutoFilter.Filters(1).Criteria1

For i = 4 To 9
If Cells(2, i) = filter_string Then
Columns(i).EntireColumn.Hidden = False
Else
Columns(i).EntireColumn.Hidden = True
End If
Next
End If
End Sub
[/vba]

Автор - nechaevm
Дата добавления - 10.08.2013 в 21:34
vikttur Дата: Суббота, 10.08.2013, 22:25 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

лишнее, прошу удалить


Сообщение отредактировал vikttur - Суббота, 10.08.2013, 22:47
 
Ответить
Сообщениелишнее, прошу удалить

Автор - vikttur
Дата добавления - 10.08.2013 в 22:25
vikttur Дата: Суббота, 10.08.2013, 22:26 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Как понял:
После фильтрации по первому столбцу нужно сравнить значение первого столбца (критерий фильтра) и значения 4-9 столбцов. При несовпадении столбец 4-9 скрыть.
Сравнивать только во второй строке. Первая, надо понимать - шапка таблицы.

Пишите в личку.
 
Ответить
СообщениеКак понял:
После фильтрации по первому столбцу нужно сравнить значение первого столбца (критерий фильтра) и значения 4-9 столбцов. При несовпадении столбец 4-9 скрыть.
Сравнивать только во второй строке. Первая, надо понимать - шапка таблицы.

Пишите в личку.

Автор - vikttur
Дата добавления - 10.08.2013 в 22:26
nechaevm Дата: Воскресенье, 11.08.2013, 07:48 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Да, именно так! Лишнее удалил.

Skype: nechaevmy


Сообщение отредактировал nechaevm - Воскресенье, 11.08.2013, 07:51
 
Ответить
СообщениеДа, именно так! Лишнее удалил.

Skype: nechaevmy

Автор - nechaevm
Дата добавления - 11.08.2013 в 07:48
vikttur Дата: Воскресенье, 11.08.2013, 09:33 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

К сожалению, временно (до 15 августа) ограничен: Скайпа нет, И-нет на мобильном.
Код готов. Смотрите личные сообщения.
 
Ответить
СообщениеК сожалению, временно (до 15 августа) ограничен: Скайпа нет, И-нет на мобильном.
Код готов. Смотрите личные сообщения.

Автор - vikttur
Дата добавления - 11.08.2013 в 09:33
nechaevm Дата: Воскресенье, 11.08.2013, 21:49 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо! тему можно закрывать.
 
Ответить
СообщениеСпасибо! тему можно закрывать.

Автор - nechaevm
Дата добавления - 11.08.2013 в 21:49
vikttur Дата: Воскресенье, 11.08.2013, 23:02 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Кому спасибо?
Позже посмотел почту. Оказывается, мне :)
Спасибо и Вам.
А я еще код не отдал.
Бегу в личку!
 
Ответить
СообщениеКому спасибо?
Позже посмотел почту. Оказывается, мне :)
Спасибо и Вам.
А я еще код не отдал.
Бегу в личку!

Автор - vikttur
Дата добавления - 11.08.2013 в 23:02
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!