Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 11.02.2014, 12:37   #1
Aqil_f
Форумчанин
 
Регистрация: 12.05.2009
Сообщений: 273
По умолчанию "координаты" фильтрованных записей

Здравствуйте. Делаю AutoFilter с помощи ComboBox-а.

Код:
    Selection.AutoFilter
    ActiveSheet.Range("$A$1:$AP$500").AutoFilter Field:=3, Criteria1:=ComboBox2.Value
Мне надо узнать "координаты" фильтрованных записей.
Т,е, если ComboBox2.Value="Otdel2", и записи для 2-го отдела начинается с 15-го и заканчивается 50-м строке, мне надо эти 2 цифры (15, 50) узнать.
Как можно найти это? Помогите пожалуйста.
Aqil_f вне форума   Ответить с цитированием
Старый 11.02.2014, 14:39   #2
Aqil_f
Форумчанин
 
Регистрация: 12.05.2009
Сообщений: 273
По умолчанию

Попробую обяснить свою задачу.
Есть колонка, содержащая данные в след виде

1 Otdel1
2 Otdel1
3 Otdel1
4 Otdel2
5 Otdel2
6 Otdel3
7 Otdel3
8 Otdel3
9 Otdel3

Надо узнать номер начальный и конечный строки каждого отдела
Aqil_f вне форума   Ответить с цитированием
Старый 11.02.2014, 14:54   #3
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,220
По умолчанию

судя по записи выше это колонка 3.

если отделы посортированы:
Код:
begrow = worksheetfunction.match(ComboBox2.Value, [c:c],0)
endrow = begrow + worksheetfunction.countif([c:c], ComboBox2.Value)-1
41001804815208 - Яндекс-деньги благодарности за удачные советы и решения можно отправлять прямо сюда)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO на форуме   Ответить с цитированием
Старый 11.02.2014, 14:56   #4
roborrr
Математик
Форумчанин
 
Регистрация: 27.02.2011
Сообщений: 123
По умолчанию

for i = 1 To 500

If Cells(i, 1).EntireRow.Hidden = False Then
a = i 'номер первой строки фильтрованных записей

Exit For


End If
Next i
For i = a + 1 To 500


If Cells(i, 1).EntireRow.Hidden = False Then
b = i 'номер последней строки фильтрованных записей


End If
Next i

Последний раз редактировалось roborrr; 11.02.2014 в 14:58.
roborrr вне форума   Ответить с цитированием
Старый 11.02.2014, 15:13   #5
Aqil_f
Форумчанин
 
Регистрация: 12.05.2009
Сообщений: 273
По умолчанию

Спасибо, все правильно. А можно без фильтрации? Просто а комбобоксе выбрать отдел и без фильтрации найти эти цифры?
Aqil_f вне форума   Ответить с цитированием
Старый 11.02.2014, 15:30   #6
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,220
По умолчанию

возможно у меня почерк не разборчивый... повторю
Код:
begrow = worksheetfunction.match(ComboBox2.Value, [c:c],0)
endrow = begrow + worksheetfunction.countif([c:c], ComboBox2.Value)-1
41001804815208 - Яндекс-деньги благодарности за удачные советы и решения можно отправлять прямо сюда)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO на форуме   Ответить с цитированием
Старый 11.02.2014, 15:58   #7
Aqil_f
Форумчанин
 
Регистрация: 12.05.2009
Сообщений: 273
По умолчанию

Cпасибо, Игор, понятно.
Aqil_f вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" Alexsandrr Microsoft Office Excel 4 19.10.2013 14:22
Создать класс "Фигура", от него наследованием создать 3 класса ("треугольник", "четырехугольник", "окружность") funnyy Помощь студентам 3 17.10.2012 17:40
Вывести название соответствующей карты вида "шестерка бубен", "дама червей","туз треф" и т.п. воваава Помощь студентам 3 01.12.2011 12:50
Раcсчитать координаты - Нарисовать бегунок и полосу "рисованного" прогрессбара Alex Cones Общие вопросы Delphi 11 27.04.2010 19:56
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04


20:05.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.