|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.02.2016, 14:26 | #1 |
Регистрация: 15.09.2014
Сообщений: 8
|
Автоматическая сортировка при вводе нового значения
Уважаемые программисты,
помогите с макросом или формулой, что бы при вводе нового значения в столбец "Время" эта строка, со всеми данными в столбцах расположенных слева, занимала место по ранжиру от меньшего к большему. Пробовал через формулу=РАНГ(G6;$G$2:$G$200;1) в столбце "место". Это самое место проставляется, но как еще "1место" поднять сразу на первую строчку? |
04.02.2016, 14:55 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
в модуль листа2 добавьте такую процедуру
Код:
Код:
Код:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
04.02.2016, 16:06 | #3 |
Регистрация: 15.09.2014
Сообщений: 8
|
Спасибо!
Все замечательно работает, единственное поправил в Вашем модуле Sub RangTbl() Dim r As Long r = Cells(Rows.Count, 2).End(xlUp).Row With Me.Sort .SortFields.Clear .SortFields.Add Key:=Range("G3:G" & r), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .SetRange Range("C2:G" & r): .Header = xlYes: .MatchCase = False: .Orientation = xlTopToBottom: .SortMethod = xlPinYin .Apply End With End Sub диапазон (В2:H) на (С2:G) т.к. сортировка цепляла и столбец "место", а столбец H нет смысла трогать там формула без относительно строки... Еще раз спасибо. Последний раз редактировалось taxion; 04.02.2016 в 16:12. |
04.02.2016, 16:30 | #4 |
Регистрация: 15.09.2014
Сообщений: 8
|
ОНО конечно не в тему, но.....
Вы наверное видели в модуле процедуру для быстрого ввода времени, без нажатия клавиш разделителей. В фрагменте для столбца G все отлично, но вот в других вариантах формата я пытался в: .Value = Left(vVal, 2) & ", " & Right(vVal, 3) & """" вместо двоеточия поставить апостроф и кавычки, что бы представить в ячейках данные как минуты, секунды в привычном виде. Все реализуется великолепно, в плане визуализации, но видимо в этом случае, формат уже получается не "время" т.к. складывать эти данные не получается.... Хотя формат же вроде задается здесь: .NumberFormat = "ss,ssss" Может это не корректный пример, с секундами, но я и тут .Value = Left(vVal, 2) & ":" & Right(vVal, 2) .NumberFormat = "[h]:mm" тоже пытался аналогично поменять двоеточие... Итог тот же например суммировать данные не получается, а очень нужно. |
04.02.2016, 16:53 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
из рассказа я не понял в чем проблема, а вот во вложенном файле небольшая иллюстрация обмана в екселе. см. формулы в колонке М
видите 1+2 = 5 потому что в ячейке К2 на самом деле 3, а форматом показано 1, но в сумму-то приходит то, что лежит в ячейке, а не не то, что показано форматом
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
04.02.2016, 18:08 | #6 |
Регистрация: 15.09.2014
Сообщений: 8
|
Все, понял... на примере
Можно ли сделать что бы представление было как в столбце "К", а данные "время". Для данного примера "ss,sss" т.е 14,333 сек. В других случаях: hh:mm'ss" = 22:12:33? |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание новой строки (снизу) при вводе значения в ячейку | Z0RGE | Microsoft Office Excel | 2 | 17.04.2015 21:10 |
Программа для проверки совпадения со списком при вводе значения в БД 1С | Dimmbass | Софт | 0 | 12.02.2014 10:18 |
Получение значения при вводе определенного значения | armanmal | Microsoft Office Excel | 6 | 21.11.2011 17:30 |
При вводе значения в ячейку нужно изменить ее размер | skobarka | Microsoft Office Excel | 2 | 26.09.2008 16:35 |
Как мне сделать так штоби при вводе массива все значения сами переносились по словам. Помогити плиз | KSP | Общие вопросы Delphi | 7 | 24.09.2007 22:44 |