Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск числа в Excel-е, Excel. Найти число близкое по значению. 
V
    Опции темы
kminas
Дата 23.3.2006, 20:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 240
Регистрация: 26.10.2005
Где: Ростов-на-Дону

Репутация: нет
Всего: нет



В Excel-е заполнена самая обычная таблица, т.е., например 15 строк и 15 столбцов заполнены различными числами. И среди них надо найти 3-5 чисел ближайших по значению к искомому?
PM MAIL   Вверх
temr
Дата 30.3.2006, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



А по какому принципу (алгоритму) выполняется поиск ?
нужен алгоритм задания критерия поиска в двумерном массиве данных.
Вообще в VBA существует метод Неявного(Fuzzy) поиска
например когда ты ищешь разные типы данных ( даты , цифры, строковые переменные)
синтаксис следующий , условие если ... то ....
if g like "*" then - будет искать ячейки содержащие любое количество цифр и букв
if g like "4*" then - будет искать ячейки начинающиеся на 4 и содержащие любое количество цифр и букв после
if g like "#" then - будет искать ячейки содержащие одну цифру от 0-9
if g like "4#" then - будет искать ячейки начинающиеся с 4 и содержащие одну цифру от 0-9 после
и т.д. все параметры не помню, перечислил только те, которыми пользуюсь.

Это сообщение отредактировал(а) temr - 30.3.2006, 11:49
PM MAIL   Вверх
Akina
Дата 30.3.2006, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 26
Всего: 454



Задача слишком неопределенная.

Наиболее разумно написАть функцию, которая принимает диапазон, адрес ячейки и возвращает номер ячейки в отсортированной последовательности диапазона. После чего организовать условное форматирование по возвращаемому значению.

Конечно при реализации "в лоб" работать это будет долго - для каждой ячейки потребуется сортировка. Ускорить можно так - в модуле (не листа, отдельном!) зарезервить массив, куда при первом вызове сложить состояние ячеек диапазона и бин-индексы сортировки контента. При входе в процедуру сортировки первым делом сравнивать содержимое массива и содержимое ячеек заданного диапазона. Если изменений нет - сразу выдавать порядковый номер, если есть - заново проводить сортировку.

Сортировка - в лучшем случае o(N*log(N)), а сравнение + поиск - o(N)+o(log(N)) = o(N) - так что выигрыш заметный.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kminas
Дата 5.4.2006, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 240
Регистрация: 26.10.2005
Где: Ростов-на-Дону

Репутация: нет
Всего: нет



Спасибо, но я решил эту задачу с другого конца о котором не спрашивал, т.к. до конца не понимал, как к нему подойти, а когда дошёл, оказалось гораздо проще.
PM MAIL   Вверх
Staruha
Дата 5.4.2006, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 13
Всего: 27



Мог бы и поделиться smile


--------------------
Возмездие настигнет
PM MAIL   Вверх
kminas
Дата 7.4.2006, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 240
Регистрация: 26.10.2005
Где: Ростов-на-Дону

Репутация: нет
Всего: нет



Обязательно поделюсь, даже могу прислать прогу, но только сейчас о-о-о-чень занят. Напишу через несколько дней. Ваще это больше подходит к форуму VB.
PM MAIL   Вверх
kminas
Дата 10.4.2006, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 240
Регистрация: 26.10.2005
Где: Ростов-на-Дону

Репутация: нет
Всего: нет



Начал вопрос как Экселевский, а решил как Бэйсиковкий.
Задача была найти диаметр воздуховода. Имеется огромная таблица на несколько страниц. По вертикали стоят скорости воздуха (большое количество от 5 до 25м/сек). Они должны были заполнить столбец "А". По горизонтали - стандартные диаметры воздуховодов, которые надо выбрать. Строка "1". А поле это расчетный объем проходящего воздуха. Специалист, зная этот объем, выбирает ближайший при желаемой, для данной задачи, скорости воздуха, скажем от 10 до 12 или от 16 до 20м/сек. После этого смотрит какой диаметр стоит в первой строке этого столбца. Я пошел по другому пути. Я беру расчетный объем и делю его на среднее, или близкое к нему, значение сорости воздуха и уже затем определяю ближайший больший и меньший диаметры.
Посыла разработанную мной программку. Не судите строго, т.к. это первая в жизни моя программка, но покритикуйте, пожалуйста, для обретения опыта!
PM MAIL   Вверх
Staruha
Дата 10.4.2006, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 13
Всего: 27



Вот ведь мир тесен ты проектируешь воздуховоды ,а я их делаю.Пора объединяться smile


--------------------
Возмездие настигнет
PM MAIL   Вверх
kminas
Дата 10.4.2006, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 240
Регистрация: 26.10.2005
Где: Ростов-на-Дону

Репутация: нет
Всего: нет



Я их не проектирую, но считаю выбрасываемый из них воздух smile, т.е. экологией занимаюсь !
А как моя прога?

Это сообщение отредактировал(а) kminas - 10.4.2006, 19:26
PM MAIL   Вверх
Staruha
Дата 18.4.2006, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 13
Всего: 27



Цитата

А как моя прога?

 smile Может у меня глюк такой,но я ее не вижу 


--------------------
Возмездие настигнет
PM MAIL   Вверх
kminas
Дата 19.4.2006, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 240
Регистрация: 26.10.2005
Где: Ростов-на-Дону

Репутация: нет
Всего: нет



Вот она. 

Присоединённый файл ( Кол-во скачиваний: 20 )
Присоединённый файл  _______.zip 3,18 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0604 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.