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

Вход

Регистрация

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

 

= Мир MS Excel/Поиск по массиву с циклом, с условиями. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск по массиву с циклом, с условиями. (Формулы)
Поиск по массиву с циклом, с условиями.
Роман83 Дата: Среда, 18.12.2013, 17:36 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день.

Никак не могу разобраться с массивами и циклами.
Есть одна задача , помогите пожалуйста.

Дакнные во вложении.
Описание:
Вообщем виде необходимо реализовать, чтобы взяв значение B1 проверить какое ближайшее значение из массива В2:В9 будет больше или равно значению В1 и вывести его в отдельную ячейку напротив соотв строки.
После того как получен результат - перейти к дальнейшему поиску только по В10 из массива В11:В19 и т.д. (т.е. цикл).
К сообщению приложен файл: 9083414.xls (18.5 Kb)
 
Ответить
СообщениеДобрый день.

Никак не могу разобраться с массивами и циклами.
Есть одна задача , помогите пожалуйста.

Дакнные во вложении.
Описание:
Вообщем виде необходимо реализовать, чтобы взяв значение B1 проверить какое ближайшее значение из массива В2:В9 будет больше или равно значению В1 и вывести его в отдельную ячейку напротив соотв строки.
После того как получен результат - перейти к дальнейшему поиску только по В10 из массива В11:В19 и т.д. (т.е. цикл).

Автор - Роман83
Дата добавления - 18.12.2013 в 17:36
Pelena Дата: Среда, 18.12.2013, 18:08 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19197
Репутация: 4423 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
Вы не ошиблись? Судя по нумерации в первом столбце В1 надо сравнивать с В2:В10. Нет?


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
Вы не ошиблись? Судя по нумерации в первом столбце В1 надо сравнивать с В2:В10. Нет?

Автор - Pelena
Дата добавления - 18.12.2013 в 18:08
Роман83 Дата: Среда, 18.12.2013, 18:11 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Не ошибся, писал специально до 9-ти , т.к. 10-ую строку не использую. Но это не принципиально можно и до 10-ти , главное подскажите общее решение.
 
Ответить
СообщениеНе ошибся, писал специально до 9-ти , т.к. 10-ую строку не использую. Но это не принципиально можно и до 10-ти , главное подскажите общее решение.

Автор - Роман83
Дата добавления - 18.12.2013 в 18:11
Pelena Дата: Среда, 18.12.2013, 18:43 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19197
Репутация: 4423 ±
Замечаний: ±

Excel 365 & Mac Excel
Вариант с формулой массива
К сообщению приложен файл: 7160913.xls (27.0 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеВариант с формулой массива

Автор - Pelena
Дата добавления - 18.12.2013 в 18:43
SkyPro Дата: Среда, 18.12.2013, 18:47 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
Если я правильно понял, то можно так:
[vba]
Код
Sub comparer()
Dim x
Dim i&
Dim start&
Dim bool As Boolean: bool = False
x = [a1:c20]
start = 1
retr:
If bool = True Then start = start + 10: bool = False
If start < UBound(x) Then
       For i = start To start + 9
           If x(i, 2) >= x(start, 2) And i <> start Then
               x(i, 3) = x(i, 2)
               bool = True
               GoTo retr
           End If
       Next
End If
[a1:c20] = x
End Sub
[/vba]
думаю, здесь есть лишие строки :)


skypro1111@gmail.com

Сообщение отредактировал SkyPro - Среда, 18.12.2013, 18:48
 
Ответить
СообщениеЕсли я правильно понял, то можно так:
[vba]
Код
Sub comparer()
Dim x
Dim i&
Dim start&
Dim bool As Boolean: bool = False
x = [a1:c20]
start = 1
retr:
If bool = True Then start = start + 10: bool = False
If start < UBound(x) Then
       For i = start To start + 9
           If x(i, 2) >= x(start, 2) And i <> start Then
               x(i, 3) = x(i, 2)
               bool = True
               GoTo retr
           End If
       Next
End If
[a1:c20] = x
End Sub
[/vba]
думаю, здесь есть лишие строки :)

Автор - SkyPro
Дата добавления - 18.12.2013 в 18:47
Роман83 Дата: Четверг, 19.12.2013, 15:01 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
День добрый , спасибо.
Сейчас буду разбираться.
 
Ответить
СообщениеДень добрый , спасибо.
Сейчас буду разбираться.

Автор - Роман83
Дата добавления - 19.12.2013 в 15:01
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск по массиву с циклом, с условиями. (Формулы)
  • Страница 1 из 1
  • 1
Поиск:

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