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

Вход

Регистрация

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

 

= Мир MS Excel/Поиск данных и определение адреса - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Поиск данных и определение адреса
0mega Дата: Суббота, 23.04.2011, 22:12 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 627
Репутация: 34 ±
Замечаний: 0% ±

Доброго времени суток
2003
Дано
таблица 7тыс. позиций (с возможным расширением)
Поиск изделия осуществляется через PIN ,который вводится в поисковую ячейку.
УФ прекрасно справляется с поиском.
к сожалению, еще не придумали скролинг с моторчиком, а прокручивать пальцем 7 тыс строк ...
Помогает ПОИСКПОЗ()
но здесь есть "подводные камни" . Одно и тоже изделие ( с одинаковым PIN-ом выпускают три производителя.
УФ находит все три позиции, но они разбросаны по по всему списку
ХОЧУ чтобы машина написала номера всех 3-х "цветных строчек"
К сообщению приложен файл: many_data.xls (26.5 Kb)
 
Ответить
СообщениеДоброго времени суток
2003
Дано
таблица 7тыс. позиций (с возможным расширением)
Поиск изделия осуществляется через PIN ,который вводится в поисковую ячейку.
УФ прекрасно справляется с поиском.
к сожалению, еще не придумали скролинг с моторчиком, а прокручивать пальцем 7 тыс строк ...
Помогает ПОИСКПОЗ()
но здесь есть "подводные камни" . Одно и тоже изделие ( с одинаковым PIN-ом выпускают три производителя.
УФ находит все три позиции, но они разбросаны по по всему списку
ХОЧУ чтобы машина написала номера всех 3-х "цветных строчек"

Автор - 0mega
Дата добавления - 23.04.2011 в 22:12
Serge_007 Дата: Суббота, 23.04.2011, 22:30 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Из примера ничего не понял.


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеИз примера ничего не понял.

Автор - Serge_007
Дата добавления - 23.04.2011 в 22:30
0mega Дата: Суббота, 23.04.2011, 23:08 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 627
Репутация: 34 ±
Замечаний: 0% ±

УФ находит нужные мне строки. Но список очень большой .
Может получится так что нужная информация будет в конце списка.
Необходимо продублировать текстом и указать номер строки
Поэтому в ячейке D3 используется:
=ПОИСКПОЗ(B3;B6:B20;0)+5
В итоге получается "8"
В 8-ой строке есть нужная мне информация. Но поисковое значение встречается 3 раза, а машина нашла только первый адрес.
Мне надо чтобы машина написала все три строки (8,12 и 13)


Сообщение отредактировал 0mega - Суббота, 23.04.2011, 23:35
 
Ответить
СообщениеУФ находит нужные мне строки. Но список очень большой .
Может получится так что нужная информация будет в конце списка.
Необходимо продублировать текстом и указать номер строки
Поэтому в ячейке D3 используется:
=ПОИСКПОЗ(B3;B6:B20;0)+5
В итоге получается "8"
В 8-ой строке есть нужная мне информация. Но поисковое значение встречается 3 раза, а машина нашла только первый адрес.
Мне надо чтобы машина написала все три строки (8,12 и 13)

Автор - 0mega
Дата добавления - 23.04.2011 в 23:08
Serge_007 Дата: Суббота, 23.04.2011, 23:22 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Не посмотрел левее smile

0mega, формулами можно, но:
1. Будут формулы массива
2. Результат в одну ячейку не выведешь.



ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеНе посмотрел левее smile

0mega, формулами можно, но:
1. Будут формулы массива
2. Результат в одну ячейку не выведешь.


Автор - Serge_007
Дата добавления - 23.04.2011 в 23:22
0mega Дата: Суббота, 23.04.2011, 23:25 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 627
Репутация: 34 ±
Замечаний: 0% ±

для большей наглядности высылаю еще один файлик
Попробуйте В ячейку "В3" забить по очереди : 486, 12 и 76

ЗЫ
писали навстречу. этот пост можно удалить

К сообщению приложен файл: many_data2.xls (27.0 Kb)


Сообщение отредактировал 0mega - Суббота, 23.04.2011, 23:26
 
Ответить
Сообщениедля большей наглядности высылаю еще один файлик
Попробуйте В ячейку "В3" забить по очереди : 486, 12 и 76

ЗЫ
писали навстречу. этот пост можно удалить


Автор - 0mega
Дата добавления - 23.04.2011 в 23:25
0mega Дата: Суббота, 23.04.2011, 23:32 | Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 627
Репутация: 34 ±
Замечаний: 0% ±

Quote (Serge_007)
1. Будут формулы массива

меня это не смущает

Quote (Serge_007)
2. Результат в одну ячейку не выведешь.

За неимением королевы - спят с кухаркой ...
пусть результат будет в n ячейках...
Я умею пользоваться амперсандом
 
Ответить
Сообщение
Quote (Serge_007)
1. Будут формулы массива

меня это не смущает

Quote (Serge_007)
2. Результат в одну ячейку не выведешь.

За неимением королевы - спят с кухаркой ...
пусть результат будет в n ячейках...
Я умею пользоваться амперсандом

Автор - 0mega
Дата добавления - 23.04.2011 в 23:32
Serge_007 Дата: Суббота, 23.04.2011, 23:41 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (0mega)
пусть результат будет в n ячейках...

Code
=НАИМЕНЬШИЙ(ЕСЛИ($B$6:$B$18=$B$3;СТРОКА($B$6:$B$18));СТРОКА(A1))


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (0mega)
пусть результат будет в n ячейках...

Code
=НАИМЕНЬШИЙ(ЕСЛИ($B$6:$B$18=$B$3;СТРОКА($B$6:$B$18));СТРОКА(A1))

Автор - Serge_007
Дата добавления - 23.04.2011 в 23:41
0mega Дата: Воскресенье, 24.04.2011, 08:13 | Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 627
Репутация: 34 ±
Замечаний: 0% ±

Serge_007,
Благодарю.
сейчас буду под себя затачивать
 
Ответить
СообщениеSerge_007,
Благодарю.
сейчас буду под себя затачивать

Автор - 0mega
Дата добавления - 24.04.2011 в 08:13
Мур Дата: Воскресенье, 24.04.2011, 09:08 | Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Приветствую всех!
0mega представил очень актуальный для меня вопрос!
А Serge_007 выложил решение, которое мне подходит.
Только что-то несовсем понятно, что там происходит с УФ,
(смотри пример). Почему, например, подсвечиваются 86 и 486?
К сообщению приложен файл: _many_data.xls (21.0 Kb)
 
Ответить
СообщениеПриветствую всех!
0mega представил очень актуальный для меня вопрос!
А Serge_007 выложил решение, которое мне подходит.
Только что-то несовсем понятно, что там происходит с УФ,
(смотри пример). Почему, например, подсвечиваются 86 и 486?

Автор - Мур
Дата добавления - 24.04.2011 в 09:08
Мур Дата: Воскресенье, 24.04.2011, 10:00 | Сообщение № 10
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Еще было бы любобытно узнать как потом
использовать &, чтобы вывести полученные значения в одну ячейку в виде
"Указанная позиция находятся на n1, n2, n3 строках"
 
Ответить
СообщениеЕще было бы любобытно узнать как потом
использовать &, чтобы вывести полученные значения в одну ячейку в виде
"Указанная позиция находятся на n1, n2, n3 строках"

Автор - Мур
Дата добавления - 24.04.2011 в 10:00
Serge_007 Дата: Воскресенье, 24.04.2011, 10:11 | Сообщение № 11
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (Мур)
Почему, например, подсвечиваются 86 и 486?

Потому что функция ПОИСК ищет вхождение искомого текста в текстовую строку, а 86 входит как в 86, так и в 486 (или, например, в 20428608).
Правильно формула для УФ будет выглядеть так:
Code
=$B$3=B6

Ну или так:
Code
=СОВПАД($B$3;B6)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (Мур)
Почему, например, подсвечиваются 86 и 486?

Потому что функция ПОИСК ищет вхождение искомого текста в текстовую строку, а 86 входит как в 86, так и в 486 (или, например, в 20428608).
Правильно формула для УФ будет выглядеть так:
Code
=$B$3=B6

Ну или так:
Code
=СОВПАД($B$3;B6)

Автор - Serge_007
Дата добавления - 24.04.2011 в 10:11
DV Дата: Воскресенье, 24.04.2011, 10:24 | Сообщение № 12
Группа: Друзья
Ранг: Обитатель
Сообщений: 286
Репутация: 194 ±
Замечаний: 0% ±

Excel 2010 RUS
....
А почему Вы не пользуетесь автофильтром или расширенным фильтром? По-моему, для Вас это самый удобный вариант. Можно сразу несколько выбирать. И смотреть удобно.
К сообщению приложен файл: _many_data_DV.rar (35.7 Kb)


Сообщение отредактировал DV - Воскресенье, 24.04.2011, 10:27
 
Ответить
Сообщение....
А почему Вы не пользуетесь автофильтром или расширенным фильтром? По-моему, для Вас это самый удобный вариант. Можно сразу несколько выбирать. И смотреть удобно.

Автор - DV
Дата добавления - 24.04.2011 в 10:24
DV Дата: Воскресенье, 24.04.2011, 10:25 | Сообщение № 13
Группа: Друзья
Ранг: Обитатель
Сообщений: 286
Репутация: 194 ±
Замечаний: 0% ±

Excel 2010 RUS
Пока писал и пример делал Сергей уже ответил))
 
Ответить
СообщениеПока писал и пример делал Сергей уже ответил))

Автор - DV
Дата добавления - 24.04.2011 в 10:25
Serge_007 Дата: Воскресенье, 24.04.2011, 10:51 | Сообщение № 14
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (Мур)
как потом
использовать &, чтобы вывести полученные значения в одну ячейку в виде
"Указанная позиция находятся на n1, n2, n3 строках"

Извращения с UDF в файле smile

К сообщению приложен файл: _many_data_UDF.xls (33.0 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (Мур)
как потом
использовать &, чтобы вывести полученные значения в одну ячейку в виде
"Указанная позиция находятся на n1, n2, n3 строках"

Извращения с UDF в файле smile


Автор - Serge_007
Дата добавления - 24.04.2011 в 10:51
KuklP Дата: Воскресенье, 24.04.2011, 11:19 | Сообщение № 15
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Я бы так делал:
Code
Private Sub Worksheet_Change(ByVal Target As Range)
         If Target.Address(0, 0) <> "B3" Then Exit Sub
         If Target = "" Then Me.AutoFilterMode = 0: Exit Sub
         Me.[B5].CurrentRegion.AutoFilter 1, [B3]
End Sub
К сообщению приложен файл: 5081606.xls (32.0 Kb)


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Воскресенье, 24.04.2011, 11:24
 
Ответить
СообщениеЯ бы так делал:
Code
Private Sub Worksheet_Change(ByVal Target As Range)
         If Target.Address(0, 0) <> "B3" Then Exit Sub
         If Target = "" Then Me.AutoFilterMode = 0: Exit Sub
         Me.[B5].CurrentRegion.AutoFilter 1, [B3]
End Sub

Автор - KuklP
Дата добавления - 24.04.2011 в 11:19
Мур Дата: Воскресенье, 24.04.2011, 11:19 | Сообщение № 16
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Serge_007, Спасибо! насчет
Quote
=$B$3=B6

и
Quote
=СОВПАД($B$3;B6)

я Вас понял.
А насчет
Quote
Извращения с UDF

что такое UDF я тока догадываюсь, про функцию сцепить_массив первый раз слышу.
Куда нужно скопировать на другом компе, код
Code
Function
что-бы,
появилась эта пользовательсткая функция?
 
Ответить
СообщениеSerge_007, Спасибо! насчет
Quote
=$B$3=B6

и
Quote
=СОВПАД($B$3;B6)

я Вас понял.
А насчет
Quote
Извращения с UDF

что такое UDF я тока догадываюсь, про функцию сцепить_массив первый раз слышу.
Куда нужно скопировать на другом компе, код
Code
Function
что-бы,
появилась эта пользовательсткая функция?

Автор - Мур
Дата добавления - 24.04.2011 в 11:19
Мур Дата: Воскресенье, 24.04.2011, 11:31 | Сообщение № 17
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Уважаемый, DV, изначально требовалость найти
не количество заданных значений, а номера строк, в которых они находятся.
Я задал вопрос насчет УФ, потому, что мне показалось, что там неточность
при определении подсвечиваемых ячеек.
 
Ответить
СообщениеУважаемый, DV, изначально требовалость найти
не количество заданных значений, а номера строк, в которых они находятся.
Я задал вопрос насчет УФ, потому, что мне показалось, что там неточность
при определении подсвечиваемых ячеек.

Автор - Мур
Дата добавления - 24.04.2011 в 11:31
Serge_007 Дата: Воскресенье, 24.04.2011, 11:44 | Сообщение № 18
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (Мур)
что такое UDF я тока догадываюсь, про функцию сцепить_массив первый раз слышу.
Куда нужно скопировать на другом компе, код
Code
Function

что-бы,
появилась эта пользовательсткая функция?

UDF - User Definition Function, т.е. функция определённая пользователем, т.е. код ВБА, написанный самим пользователем.
Код находится в стандартном модуле, посмотреть его можно в редакторе ВБА, нажав Alt+F11.

К сообщению приложен файл: 7100781.gif (29.1 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (Мур)
что такое UDF я тока догадываюсь, про функцию сцепить_массив первый раз слышу.
Куда нужно скопировать на другом компе, код
Code
Function

что-бы,
появилась эта пользовательсткая функция?

UDF - User Definition Function, т.е. функция определённая пользователем, т.е. код ВБА, написанный самим пользователем.
Код находится в стандартном модуле, посмотреть его можно в редакторе ВБА, нажав Alt+F11.


Автор - Serge_007
Дата добавления - 24.04.2011 в 11:44
Мур Дата: Воскресенье, 24.04.2011, 12:14 | Сообщение № 19
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Спасибо, ясно все.
 
Ответить
СообщениеСпасибо, ясно все.

Автор - Мур
Дата добавления - 24.04.2011 в 12:14
  • Страница 1 из 1
  • 1
Поиск:

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