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

Вход

Регистрация

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

 

= Мир MS Excel/Отобразить столбцы соответственно отфильтрованным строкам. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Отобразить столбцы соответственно отфильтрованным строкам. (Макросы/Sub)
Отобразить столбцы соответственно отфильтрованным строкам.
Nic70y Дата: Воскресенье, 08.02.2015, 17:25 | Сообщение № 1
Группа: Друзья
Ранг: Экселист
Сообщений: 8772
Репутация: 2277 ±
Замечаний: 0% ±

Excel 2010
Вопрос в большей степени чисто теоретический.
Есть столбцы значение которых соот. строкам (ячейкам в строках)
Фильтруем по-всякому строки и нужно получить соот столбцы.
Я это сбацал формулами и макросом, пытался сбацать это чисто макросом - тормозит падло!
Чисто я мож не тот макрос применил - вопрос что эффективнее - формула + макрос или есть
какой-то макрос, о котором я не знаю...
К сообщению приложен файл: 2-13.xlsm (22.4 Kb)


ЮMoney 41001841029809
 
Ответить
СообщениеВопрос в большей степени чисто теоретический.
Есть столбцы значение которых соот. строкам (ячейкам в строках)
Фильтруем по-всякому строки и нужно получить соот столбцы.
Я это сбацал формулами и макросом, пытался сбацать это чисто макросом - тормозит падло!
Чисто я мож не тот макрос применил - вопрос что эффективнее - формула + макрос или есть
какой-то макрос, о котором я не знаю...

Автор - Nic70y
Дата добавления - 08.02.2015 в 17:25
wild_pig Дата: Воскресенье, 08.02.2015, 17:29 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 517
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
А по русски? Куда нажать и что сделать чтобы заработало?
Уже научился ) Осталось понять зачем все циферки и буковки по краям таблицы.


Сообщение отредактировал wild_pig - Воскресенье, 08.02.2015, 17:35
 
Ответить
СообщениеА по русски? Куда нажать и что сделать чтобы заработало?
Уже научился ) Осталось понять зачем все циферки и буковки по краям таблицы.

Автор - wild_pig
Дата добавления - 08.02.2015 в 17:29
Nic70y Дата: Воскресенье, 08.02.2015, 18:08 | Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 8772
Репутация: 2277 ±
Замечаний: 0% ±

Excel 2010
Фильтруем полюбому (как в голову взбредет, используя фильтра от B до H)затем смотрим, что осталось в столбце E и жмем "Показать выбранный" - вот и результат.
Работает все верно, но для этого у меня формулы в столбце A и B3 и C3, а также в строке 1.
кода я написал макрос, который работает без этих формул - он пабла тормозит по полной программе.
В принципе проблем нет с формулами все прелестно - вопрос можно без них ваще и чтобы не тормозило.


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Воскресенье, 08.02.2015, 18:09
 
Ответить
СообщениеФильтруем полюбому (как в голову взбредет, используя фильтра от B до H)затем смотрим, что осталось в столбце E и жмем "Показать выбранный" - вот и результат.
Работает все верно, но для этого у меня формулы в столбце A и B3 и C3, а также в строке 1.
кода я написал макрос, который работает без этих формул - он пабла тормозит по полной программе.
В принципе проблем нет с формулами все прелестно - вопрос можно без них ваще и чтобы не тормозило.

Автор - Nic70y
Дата добавления - 08.02.2015 в 18:08
Leanna Дата: Воскресенье, 08.02.2015, 18:16 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 189
Репутация: 78 ±
Замечаний: 0% ±

excel 2010
Можно загнать в массив а не ячейки обрабатывать тогда быстрее будет.
Во вложении. Вроде быстро отрабатывает. Только если структуру менять будете (строки например убавлять), то в макросе это надо учесть.

UPD Может не так поняла задачу.. А "выбранным" кто считается?
К сообщению приложен файл: 2-13Nic70.xlsm (29.3 Kb)


Лучше день потерять, потом за пять минут долететь!

Сообщение отредактировал Leanna - Воскресенье, 08.02.2015, 18:21
 
Ответить
СообщениеМожно загнать в массив а не ячейки обрабатывать тогда быстрее будет.
Во вложении. Вроде быстро отрабатывает. Только если структуру менять будете (строки например убавлять), то в макросе это надо учесть.

UPD Может не так поняла задачу.. А "выбранным" кто считается?

Автор - Leanna
Дата добавления - 08.02.2015 в 18:16
Nic70y Дата: Воскресенье, 08.02.2015, 18:40 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 8772
Репутация: 2277 ±
Замечаний: 0% ±

Excel 2010
Leanna, спасибо, изучу,
но пока не могу, т.к. жена в данное время слушает (смотрит) хэви мэтал в ютюбе.


ЮMoney 41001841029809
 
Ответить
СообщениеLeanna, спасибо, изучу,
но пока не могу, т.к. жена в данное время слушает (смотрит) хэви мэтал в ютюбе.

Автор - Nic70y
Дата добавления - 08.02.2015 в 18:40
Leanna Дата: Воскресенье, 08.02.2015, 18:41 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 189
Репутация: 78 ±
Замечаний: 0% ±

excel 2010
Сделала проверку на нескрытые фильтром строки. Может так правильнее?
К сообщению приложен файл: 2-13Nic70y.xlsm (29.0 Kb)


Лучше день потерять, потом за пять минут долететь!
 
Ответить
СообщениеСделала проверку на нескрытые фильтром строки. Может так правильнее?

Автор - Leanna
Дата добавления - 08.02.2015 в 18:41
krosav4ig Дата: Воскресенье, 08.02.2015, 18:54 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Вдруг правильно?
[vba]
Код
Sub qwe()
      Dim r As Range, c As Range
      Set r = [E:E].SpecialCells(2, 23).SpecialCells(12)
      Application.ScreenUpdating = 0
      [I:P].EntireColumn.Hidden = True
      For Each c In [I2:P2]
          If Not r.Find(c, , xlValues, xlWhole) Is Nothing Then c.EntireColumn.Hidden = 0
      Next
End Sub
[/vba]
К сообщению приложен файл: 2098343.xlsm (24.4 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 08.02.2015, 21:18
 
Ответить
СообщениеВдруг правильно?
[vba]
Код
Sub qwe()
      Dim r As Range, c As Range
      Set r = [E:E].SpecialCells(2, 23).SpecialCells(12)
      Application.ScreenUpdating = 0
      [I:P].EntireColumn.Hidden = True
      For Each c In [I2:P2]
          If Not r.Find(c, , xlValues, xlWhole) Is Nothing Then c.EntireColumn.Hidden = 0
      Next
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 08.02.2015 в 18:54
Leanna Дата: Воскресенье, 08.02.2015, 20:15 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 189
Репутация: 78 ±
Замечаний: 0% ±

excel 2010
krosav4ig, подскажите пожалуйста, что означает 23 в этой строчке Set r = [E:E].SpecialCells(2, 23).SpecialCells(12) ? 2 - это берем только константы, 12 только видимые а 23 что означает?
Почему используется r.Areas а не просто r? что это дает?
Спасибо.


Лучше день потерять, потом за пять минут долететь!
 
Ответить
Сообщениеkrosav4ig, подскажите пожалуйста, что означает 23 в этой строчке Set r = [E:E].SpecialCells(2, 23).SpecialCells(12) ? 2 - это берем только константы, 12 только видимые а 23 что означает?
Почему используется r.Areas а не просто r? что это дает?
Спасибо.

Автор - Leanna
Дата добавления - 08.02.2015 в 20:15
krosav4ig Дата: Воскресенье, 08.02.2015, 20:49 | Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Leanna, 23 это сумма xlErrors (16), xlLogical (4), xlNumbers (1), xlTextValues(2), т.е. если нужны только числа и текст то будет 3, цикл с r.Areas я просто пропустил, хотел его убрать, сначала чего-то в голову ударило, потом одумался, исправил свой пост


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 08.02.2015, 20:50
 
Ответить
СообщениеLeanna, 23 это сумма xlErrors (16), xlLogical (4), xlNumbers (1), xlTextValues(2), т.е. если нужны только числа и текст то будет 3, цикл с r.Areas я просто пропустил, хотел его убрать, сначала чего-то в голову ударило, потом одумался, исправил свой пост

Автор - krosav4ig
Дата добавления - 08.02.2015 в 20:49
Leanna Дата: Воскресенье, 08.02.2015, 20:55 | Сообщение № 10
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 189
Репутация: 78 ±
Замечаний: 0% ±

excel 2010
krosav4ig, спасибо! растолковали)


Лучше день потерять, потом за пять минут долететь!
 
Ответить
Сообщениеkrosav4ig, спасибо! растолковали)

Автор - Leanna
Дата добавления - 08.02.2015 в 20:55
krosav4ig Дата: Воскресенье, 08.02.2015, 21:29 | Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
а вообще для читабельного кода ИМХО лучше вместо 23 писать [vba]
Код
xlNumbers or xlTextValues or xlLogical or xlErrors
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 08.02.2015, 21:30
 
Ответить
Сообщениеа вообще для читабельного кода ИМХО лучше вместо 23 писать [vba]
Код
xlNumbers or xlTextValues or xlLogical or xlErrors
[/vba]

Автор - krosav4ig
Дата добавления - 08.02.2015 в 21:29
Nic70y Дата: Вторник, 10.02.2015, 08:44 | Сообщение № 12
Группа: Друзья
Ранг: Экселист
Сообщений: 8772
Репутация: 2277 ±
Замечаний: 0% ±

Excel 2010
krosav4ig, спасибо.


ЮMoney 41001841029809
 
Ответить
Сообщениеkrosav4ig, спасибо.

Автор - Nic70y
Дата добавления - 10.02.2015 в 08:44
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Отобразить столбцы соответственно отфильтрованным строкам. (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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