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

Вход

Регистрация

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

 

= Мир MS Excel/Создание умной очередности - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Создание умной очередности (Макросы/Sub)
Создание умной очередности
artika2000 Дата: Воскресенье, 19.03.2017, 13:08 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 66
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте.
Прошу Вас если возможно, помочь реализовать создание умной очередности, описание задачи и пример в приложенном файле.
Так же прошу, если это невозможно сделать по моему примеру, направить меня куда нибудь в правильном направлении :-)
Заранее благодарен
С уважением, Артем
К сообщению приложен файл: 4352814.xlsx (12.0 Kb)
 
Ответить
СообщениеЗдравствуйте.
Прошу Вас если возможно, помочь реализовать создание умной очередности, описание задачи и пример в приложенном файле.
Так же прошу, если это невозможно сделать по моему примеру, направить меня куда нибудь в правильном направлении :-)
Заранее благодарен
С уважением, Артем

Автор - artika2000
Дата добавления - 19.03.2017 в 13:08
Karataev Дата: Воскресенье, 19.03.2017, 13:24 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

Excel
Если использовать умную таблицу, то можно попробовать решить Вашу задачу с помощью формул.
Умная таблица вставляется так: вкладка "Главная"- Форматировать как таблицу.
К сообщению приложен файл: 43528141.xlsx (13.5 Kb)
 
Ответить
СообщениеЕсли использовать умную таблицу, то можно попробовать решить Вашу задачу с помощью формул.
Умная таблица вставляется так: вкладка "Главная"- Форматировать как таблицу.

Автор - Karataev
Дата добавления - 19.03.2017 в 13:24
Nic70y Дата: Воскресенье, 19.03.2017, 13:32 | Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
без умной таблицы, прост формулы
вдруг правильно (ю)
К сообщению приложен файл: 4468843.xlsx (14.1 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщениебез умной таблицы, прост формулы
вдруг правильно (ю)

Автор - Nic70y
Дата добавления - 19.03.2017 в 13:32
artika2000 Дата: Воскресенье, 19.03.2017, 13:34 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 66
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Karataev, Здравствуйте.
спасибо за быстрый ответ, но не работает такой момент.
если я 3 по очереди заказ хочу сделать первым, и вручную меняю 3 на 1, то первый заказ - вторым не становится и все остальные не меняют очередность
 
Ответить
СообщениеKarataev, Здравствуйте.
спасибо за быстрый ответ, но не работает такой момент.
если я 3 по очереди заказ хочу сделать первым, и вручную меняю 3 на 1, то первый заказ - вторым не становится и все остальные не меняют очередность

Автор - artika2000
Дата добавления - 19.03.2017 в 13:34
Karataev Дата: Воскресенье, 19.03.2017, 13:38 | Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

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

Автор - Karataev
Дата добавления - 19.03.2017 в 13:38
artika2000 Дата: Воскресенье, 19.03.2017, 13:44 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 66
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Nic70y, Здравствуйте.
И Вам спасибо за ответ, но не понимаю, как меняется очередь в Вашем примере? где изменяется порядковая очередь в Вашем примере остальных заказов? Извините, может у Вас это получается а у меня нет? Может мне нужен более поздний excel?


Сообщение отредактировал artika2000 - Воскресенье, 19.03.2017, 13:45
 
Ответить
СообщениеNic70y, Здравствуйте.
И Вам спасибо за ответ, но не понимаю, как меняется очередь в Вашем примере? где изменяется порядковая очередь в Вашем примере остальных заказов? Извините, может у Вас это получается а у меня нет? Может мне нужен более поздний excel?

Автор - artika2000
Дата добавления - 19.03.2017 в 13:44
Nic70y Дата: Воскресенье, 19.03.2017, 14:21 | Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
на втором листе
более поздний
у Вас 2013 - формула для 2007&


ЮMoney 41001841029809
 
Ответить
Сообщениена втором листе
более поздний
у Вас 2013 - формула для 2007&

Автор - Nic70y
Дата добавления - 19.03.2017 в 14:21
artika2000 Дата: Воскресенье, 19.03.2017, 14:24 | Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 66
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Nic70y, Не работает корректно у меня. При изменении любой позиции не меняется очередность других заказов
 
Ответить
СообщениеNic70y, Не работает корректно у меня. При изменении любой позиции не меняется очередность других заказов

Автор - artika2000
Дата добавления - 19.03.2017 в 14:24
Nic70y Дата: Воскресенье, 19.03.2017, 14:59 | Сообщение № 9
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
так бы сразу и сказали
Код
=ЕСЛИОШИБКА(ИНДЕКС(Лист1!A:A;ПОИСКПОЗ(НАИМЕНЬШИЙ(Лист1!$C:$C;СТРОКА(A1));Лист1!$C:$C;));"")
вдруг правильно (ю)
К сообщению приложен файл: 4468843-2-.xlsx (14.2 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщениетак бы сразу и сказали
Код
=ЕСЛИОШИБКА(ИНДЕКС(Лист1!A:A;ПОИСКПОЗ(НАИМЕНЬШИЙ(Лист1!$C:$C;СТРОКА(A1));Лист1!$C:$C;));"")
вдруг правильно (ю)

Автор - Nic70y
Дата добавления - 19.03.2017 в 14:59
Wasilich Дата: Воскресенье, 19.03.2017, 15:59 | Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
Так наверное?
К сообщению приложен файл: artika2000.xls (40.5 Kb)
 
Ответить
СообщениеТак наверное?

Автор - Wasilich
Дата добавления - 19.03.2017 в 15:59
artika2000 Дата: Воскресенье, 19.03.2017, 17:54 | Сообщение № 11
Группа: Пользователи
Ранг: Участник
Сообщений: 66
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Wasilich, Добрый день Вам.
Спасибо Вам за Ваши мысли в выходной день. Вы не первый раз помогаете.
я чувствую, что где-то все близко очень, но все-таки чуть не то. После некоторого ввода данных вручную в столбец "очередность"действительно, позиции выходят на номер очередности, Вы здесь правильно поняли меня. Но , Если я меняю заказ стоящий в очереди 15м на 3ий, то если посмотреть на очередность, становится 2а "третьих" заказа и ни одного 15го. И тогда получается, что в очереди стоит два "третьих" заказа, а ведь один из них должен стать 4-ым, а тот который был 14ым - должен стать 15ым, то есть в столбце "очередность" должны быть все номера 1,2,3,4,5,6,7,8,9,10,11,12...n,...(n-количество заказов)..... . То есть не обязательно они должны быть по порядку, но в очередности не может быть два "третьих" по очереди заказа.. Так же попробовал удалить заказ с очередностью 10 - но вот 11ый заказ при этом не стал 10-ым, а 12-11ым, 18-17ым по аналогии
Я очень надеюсь что смог объяснить Вам, и я чувствую что Вы рядом в решении. Спасибо еще раз Вам за работу в выходной день
 
Ответить
СообщениеWasilich, Добрый день Вам.
Спасибо Вам за Ваши мысли в выходной день. Вы не первый раз помогаете.
я чувствую, что где-то все близко очень, но все-таки чуть не то. После некоторого ввода данных вручную в столбец "очередность"действительно, позиции выходят на номер очередности, Вы здесь правильно поняли меня. Но , Если я меняю заказ стоящий в очереди 15м на 3ий, то если посмотреть на очередность, становится 2а "третьих" заказа и ни одного 15го. И тогда получается, что в очереди стоит два "третьих" заказа, а ведь один из них должен стать 4-ым, а тот который был 14ым - должен стать 15ым, то есть в столбце "очередность" должны быть все номера 1,2,3,4,5,6,7,8,9,10,11,12...n,...(n-количество заказов)..... . То есть не обязательно они должны быть по порядку, но в очередности не может быть два "третьих" по очереди заказа.. Так же попробовал удалить заказ с очередностью 10 - но вот 11ый заказ при этом не стал 10-ым, а 12-11ым, 18-17ым по аналогии
Я очень надеюсь что смог объяснить Вам, и я чувствую что Вы рядом в решении. Спасибо еще раз Вам за работу в выходной день

Автор - artika2000
Дата добавления - 19.03.2017 в 17:54
artika2000 Дата: Воскресенье, 19.03.2017, 18:04 | Сообщение № 12
Группа: Пользователи
Ранг: Участник
Сообщений: 66
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Wasilich, если представить живую очередь из 20 человек, если первый человек ушел, то первым стал "второй", и у всех следующих - поменялся номер очереди, если потом ушел 10ый, то 11ый стал десятым. а если вдруг первый вспомнил что забыл паспорт, и попросил его принести кого то и переместился сам назад 3им, то второй в очереди станет первым, а 3ий - четвертым. Если 13ый уйдет просто из очереди то вся очередь сместится (14 станет 13ым и тд) Еще раз надеюсь что объяснил верно и понятно.
Спасибо Вам еще раз
 
Ответить
СообщениеWasilich, если представить живую очередь из 20 человек, если первый человек ушел, то первым стал "второй", и у всех следующих - поменялся номер очереди, если потом ушел 10ый, то 11ый стал десятым. а если вдруг первый вспомнил что забыл паспорт, и попросил его принести кого то и переместился сам назад 3им, то второй в очереди станет первым, а 3ий - четвертым. Если 13ый уйдет просто из очереди то вся очередь сместится (14 станет 13ым и тд) Еще раз надеюсь что объяснил верно и понятно.
Спасибо Вам еще раз

Автор - artika2000
Дата добавления - 19.03.2017 в 18:04
Wasilich Дата: Воскресенье, 19.03.2017, 20:26 | Сообщение № 13
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
Да уж, сразу не сообразил. А сейчас понял, что задача сложнее чем показалось и пока не соображу, смогу ли сообразить. %) :D Придется переписывать очередь. Надо подумать как.
 
Ответить
СообщениеДа уж, сразу не сообразил. А сейчас понял, что задача сложнее чем показалось и пока не соображу, смогу ли сообразить. %) :D Придется переписывать очередь. Надо подумать как.

Автор - Wasilich
Дата добавления - 19.03.2017 в 20:26
Perfect2You Дата: Воскресенье, 19.03.2017, 23:59 | Сообщение № 14
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 237
Репутация: 59 ±
Замечаний: 0% ±

Excel 2010
А если немножко изменить подход? Оператор будет не вводить номер очереди, а, не трогая номер, вырезать строку и переставлять в новое нужное место?
Тогда возможна такая реализация: в B2:
Код
=ЕСЛИ(ДЛСТР($A2)*ДЛСТР($B2);СУММПРОИЗВ(ЗНАК(ДЛСТР(ИНДЕКС($A:$A;2):ИНДЕКС($A:$A;СТРОКА())))*ЗНАК(ДЛСТР(ИНДЕКС($B:$B;2):ИНДЕКС($B:$B;СТРОКА()))));"")

и протянуть.


Сообщение отредактировал Perfect2You - Понедельник, 20.03.2017, 00:00
 
Ответить
СообщениеА если немножко изменить подход? Оператор будет не вводить номер очереди, а, не трогая номер, вырезать строку и переставлять в новое нужное место?
Тогда возможна такая реализация: в B2:
Код
=ЕСЛИ(ДЛСТР($A2)*ДЛСТР($B2);СУММПРОИЗВ(ЗНАК(ДЛСТР(ИНДЕКС($A:$A;2):ИНДЕКС($A:$A;СТРОКА())))*ЗНАК(ДЛСТР(ИНДЕКС($B:$B;2):ИНДЕКС($B:$B;СТРОКА()))));"")

и протянуть.

Автор - Perfect2You
Дата добавления - 19.03.2017 в 23:59
artika2000 Дата: Понедельник, 20.03.2017, 05:47 | Сообщение № 15
Группа: Пользователи
Ранг: Участник
Сообщений: 66
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Perfect2You, Здравствуйте!
Спасибо и Вам за неравнодушие. Как Вы описали у меня не работает, не получилось, но попробую вытянуть что-то и из Вашей формулы.
Да, Вариант с вырезанием строки тоже "имеет место быть", но здесь все уходит в частный случай. Пример мой приведен на очень, очень маленькой БД, как пример и ничего общего со структурой, к которой я хочу привязать эту мысль - не имеет. Из приведенного примера я хочу вытащить буквально только идею.

Я думаю, задача будет упрощена, если количество заказов n (номера 1,2,3,4,5,6,7,8,9,10,11,12...n,...(n-количество заказов) будет ограничено например каким то максимумом, например 1000, и тогда вероятно проще на заданном интервале получить результат. Но тут ведь 2е стороны - и мы не знаем, а вдруг мы выйдем за эти границы?, будет ли
это корректным, можно ли всегда предполагать что n<1000
В общем Perfect2You спасибо Вам. Еще поработаем.
 
Ответить
СообщениеPerfect2You, Здравствуйте!
Спасибо и Вам за неравнодушие. Как Вы описали у меня не работает, не получилось, но попробую вытянуть что-то и из Вашей формулы.
Да, Вариант с вырезанием строки тоже "имеет место быть", но здесь все уходит в частный случай. Пример мой приведен на очень, очень маленькой БД, как пример и ничего общего со структурой, к которой я хочу привязать эту мысль - не имеет. Из приведенного примера я хочу вытащить буквально только идею.

Я думаю, задача будет упрощена, если количество заказов n (номера 1,2,3,4,5,6,7,8,9,10,11,12...n,...(n-количество заказов) будет ограничено например каким то максимумом, например 1000, и тогда вероятно проще на заданном интервале получить результат. Но тут ведь 2е стороны - и мы не знаем, а вдруг мы выйдем за эти границы?, будет ли
это корректным, можно ли всегда предполагать что n<1000
В общем Perfect2You спасибо Вам. Еще поработаем.

Автор - artika2000
Дата добавления - 20.03.2017 в 05:47
K-SerJC Дата: Понедельник, 20.03.2017, 10:08 | Сообщение № 16
Группа: Проверенные
Ранг: Обитатель
Сообщений: 487
Репутация: 86 ±
Замечаний: 0% ±

Excel 2013
а так?

вроде работет как написано
К сообщению приложен файл: 8887310.xlsm (23.7 Kb)


Благими намерениями выстелена дорога в АД.

Сообщение отредактировал K-SerJC - Понедельник, 20.03.2017, 11:17
 
Ответить
Сообщениеа так?

вроде работет как написано

Автор - K-SerJC
Дата добавления - 20.03.2017 в 10:08
Wasilich Дата: Понедельник, 20.03.2017, 11:14 | Сообщение № 17
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
Ну еще и с кнопками побалуйтесь. Я так подумал, с кнопками меньше случайностей. Пока не нажал, ничего не произойдет.
К сообщению приложен файл: artika2002.xls (47.5 Kb)
 
Ответить
СообщениеНу еще и с кнопками побалуйтесь. Я так подумал, с кнопками меньше случайностей. Пока не нажал, ничего не произойдет.

Автор - Wasilich
Дата добавления - 20.03.2017 в 11:14
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Создание умной очередности (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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