Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 797 След.
Сравнение двух таблиц
 
V P, что Вы подразумеваете под "сравнение по массивам"?
Что не устраивает в этом коде?
Формула для массива с суммами и датами
 
bigorq, в 365 так только взлетело для первой:
Код
=ИНДЕКС($E$2:$N$2;ПОИСКПОЗ(1=0;E3:N3="";0))
или
=ИНДЕКС($E$2:$N$2;ПОИСКПОЗ(1=1;E3:N3>0;0))

Ну или ЛОЖЬ/ИСТИНА писать, что некузяво... не знаю как сработает в нерусском
Изменено: Hugo - 17.05.2024 14:55:21
Формула для нахождения нескольких значений, которые были бы объеденины в одной ячекйк, Нужно формулу разработать, почему-то формула ЕСЛИ с массивами и ИНДЕКС и ПОИСКПОЗ не работают с таким
 
Или если версия поновее без макросов можно обойтись, логика как в UDF:
Код
=ОБЪЕДИНИТЬ(", ";1;ЕСЛИ(Регистр!$B$3:$B$44 & "|"& Регистр!$C$3:$C$44=F$3&"|"&$K4;Регистр!$A$3:$A$44;""))
Формула для нахождения нескольких значений, которые были бы объеденины в одной ячекйк, Нужно формулу разработать, почему-то формула ЕСЛИ с массивами и ИНДЕКС и ПОИСКПОЗ не работают с таким
 
А можно сразу всё в одной давно написанной UDF сделать:
Скрытый текст


Изменено: Hugo - 17.05.2024 11:50:16
Формула для массива с суммами и датами
 
Я голосую за UDF, только я бы чуть доработал код Евгения чтоб при отсутствии выплат не писало 00.01.1900

Код
Function Max_Min_Data(DiapDat As Range, DiapSum As Range, Optional Max_Min% = 1)
Dim Ar1, Ar2

Max_Min_Data = ""

If WorksheetFunction.Sum(DiapSum) > 0 Then
Ar2 = DiapDat.Value: Ar1 = DiapSum.Value
For i = 1 To UBound(Ar1, 2)
If Ar1(1, i) <> "" Then Ar1(1, i) = VBA.CDbl(Ar2(1, i))
Next i
If Max_Min = 0 Then Max_Min_Data = WorksheetFunction.Min(Ar1) Else Max_Min_Data = WorksheetFunction.Max(Ar1)
End If
End Function

Согласование двух таблиц, Прошу помощи в решении задачи
 
Цитата
Pashkoff750 написал:
почему-то пишет ошибку #знач!...
- кстати интересно, может быть для старых версий нужно в новых её вводить тремя клавишами CSE?
Проверьте как сейчас сработает, мне на 360 всё равно, оба варианта работают, но думал что Эксель умный ))
И можете сами добавить ЕСЛИОШИБКА() если оно необходимо.
Определение пересечения интервала в уникальных условиях, Определение пересечения интервала в уникальных условиях
 
Виктор Клюев,  доработал.
Тут ничего выделять не нужно, работает с тем что есть на листе как показано в примере. Просто сразу жмите кнопку.
Но правда в оригинале дублей не было, где-то в первых трёх столбцах накосячено с раскладкой, не вникал где и в какую сторону, это другая задача...
Скорее всего в третьем с С - там сперва было Е, это причина того что я в первом коде не брал эти столбцы как ключ, ибо он был разный.
Но можно как ключ брать часть из F до "/", это даже чуть сократит код. Добавил в файл кнопку и на такой вариант.
Изменено: Hugo - 17.05.2024 08:38:20 (заменил файл)
Определение пересечения интервала в уникальных условиях, Определение пересечения интервала в уникальных условиях
 
Возможно. Но уже не сегодня.
Определение пересечения интервала в уникальных условиях, Определение пересечения интервала в уникальных условиях
 
UDF можно написать судя по примеру, только никто их не применяет, боятся все...
Или макросом диапазон проверить, что проще.
Изменено: Hugo - 16.05.2024 20:48:43
Согласование двух таблиц, Прошу помощи в решении задачи
 
ПОИСКПОЗ массивно можно использовать, но т.к. тысячные - то может добавить в источник допстолбец и использовать стандартно и быстро ВПР()?
Изменено: Hugo - 16.05.2024 16:19:24
Совместная формула ЕСЛИ+ВПР, Необходима формула для нескольких условий
 
Логика другая - если впр из е2 возвращает >0, то оставляем, иначе впр из С2
Наверняка можно упростить, и ещё навесить еслиошибка()
P.S. хотя нет ошибок:
Код
=ЕСЛИ(ВПР(B1;Согласование!$A:$E;5;0)>0;ВПР(B1;Согласование!$A:$E;5;0);ВПР(B1;Согласование!$A:$E;3;0))
Изменено: Hugo - 16.05.2024 16:02:51
Ошибка при создании таблицы, В таблицы не считается время
 
Сотрудник,  можно например одну строку кода поправить:
Код
Target = Range(Adr) + Target / 24

и формат ячеек изменить на ДД.ММ.ГГГГ ч:мм или Общий.
Но корректно срабатывает только на 8, но не на 8:00 или 8:30
Не знаю как там могут писать, дорабатывать нужно.
И только первый раз, далее если будут дату править то тоже нужно учитывать в коде.
Или всё делать как-то иначе.
Но изначально проблема было в том что там текст, обычное дело...
Изменено: Hugo - 14.05.2024 22:25:06
Ошибка при создании таблицы, В таблицы не считается время
 
Нужно чтобы там была дата.
Откуда оно там появляется и в каком виде знаете только Вы.
Судя по макросу - пишется время, затем макрос добавляет дату, вот значит в макросе и нужно на выходе получать дату и время, а не строку.
Ошибка при создании таблицы, В таблицы не считается время
 
Работает
Ошибка при создании таблицы, В таблицы не считается время
 
Там где Вы уверены что даты. Там где жмётся к левой границе.
Преобразуйте в дату с временем - и формула заработает.
Достаточно в E3 поправить в данном случае.
Изменено: Hugo - 14.05.2024 21:32:35
Ошибка при создании таблицы, В таблицы не считается время
 
Там текст!
Ошибка при создании таблицы, В таблицы не считается время
 
Там не даты с временем, а текст. Наведите сперва порядок в данных.
Да и макрос тоже непонятно что делает и зачем делает текст в этих ячейках.
Изменено: Hugo - 14.05.2024 21:18:27
[ Закрыто] Type mismatch (Error 13) Не понятна ошибка, Не могу разобраться с ошибкой в макросе
 
Цитата
Андрей Смирнов написал:
появляется следующая ошибка
- так далее нужно открыть книгу, задать значение этой переменной на которой ошибка...
Сопоставление данных по интервалам.
 
Тому кто пишет левую таблицу проб нужно следить за границами и не выходить за рамки установленные в правой таблице, тогда не будет проблем подтянуть коды.
Но есть мысль и с такими исходными попробовать массивную UDF на динамических возможностях новых версий ( кстати очень удобно, новый уровень!), только так и нет ответа на самый первый вопрос - какой должен быть результат и почему у этих проблемных интервалов.
Изменено: Hugo - 12.05.2024 09:43:55
Сопоставление данных по интервалам.
 
Формула из #38 для B2041 98 99 код не находит.
Сопоставление данных по интервалам.
 
Так есть ведь уже выше версия которая вытягивает по нижнему, и есть версия которая тянет по верхнему.
Те кто попал точно в интервал - у них они обе вытягивают один код, а если есть переход на другой интервал - то результаты разные:
B2041 98 99 #Н/Д IAN TUF
Вот их если соединить - то можно вывести оба разных интервала.
Но считать будет тяжело формулой...
Лучше PQ, но я пас.
Сопоставление данных по интервалам.
 
Можно пойти по такому алгоритму, но при таких объемах это затратно - определять к какому интервалу относится каждый метр пробы, тогда можно выводить к каждому коду например его процент присутсвия в пробе.
Кодом/макросом решаемо.
Иначе думаю правильнее писать пробы в пределах существующих интервалов.
Изменено: Hugo - 11.05.2024 07:54:04
Сопоставление данных по интервалам.
 
Так я и сказал что в PQ нужно делать, у меня формулы на целый столбец еле ворочались, поэтому хоть и ленивый, но диапазоны как выше видно обрезал впритирку ))
Сопоставление данных по интервалам.
 
Я в самом начале спрашивал что делать с интервалами которые идут через границы интервалов
Их наверное может быть и более двух... Может быть перечислять все? В принципе для двух крайних уже решение есть, можно собрать в одной ячейке, правда будет неоптимально... Да и объёмы вычислений большие... Нужно или в PQ делать, или макросом, но сперва нужно решить какой ожидаете результат и почему у таких интервалов.
Сопоставление данных по интервалам.
 
Coolllerr, ну так за полчаса ещё не написали? Логика формулы ведь есть...
Код
=ИНДЕКС($L$4:$L$4776;ПОИСКПОЗ(1;($I$4:$I$4776=A4)*($J$4:$J$4776<=B4)*($K$4:$K$4776>=B4);0);1)

это третий вариант, выводит тут TUF:

B2041 98 99 #Н/Д IAN TUF
Перенос части данных из ячеек в отдельную таблицу, Перенос части данных из ячеек в отдельную таблицу
 
Т.е. исходник нужно оставить без данных, и с обрезанным заголовком? ))
Потому что если задача другая - формула задачу решает.
Сопоставление данных по интервалам.
 
Ну тогда формула выводящая по последнему готова, см. выше.
Но тяжело будет на больших объёмах, вводить на старых версиях тремя клавишами Ctrl+Shift+Enter
Сопоставление данных по интервалам.
 
B2041 98 99 TUF - концепция поменялась?
А логику не понял, попробуйте переформулировать - как это
интервал ОТ в левом столбце больше или равен интервалу в правом столбцу и меньше или равен интервалу до в правом столбцу тогда код в левом столбцу равен коду в правом столбцу
и где эти ОТ/ДО и столбцы ))
Изменено: Hugo - 10.05.2024 19:01:53
Сопоставление данных по интервалам.
 
Цитата
Coolllerr написал:
Тут должен быть код IAN
- но первая проба не в этом интервале!
Если учитывать только последнюю - то можно:
Код
=ИНДЕКС($L$4:$L$4776;ПОИСКПОЗ(1;($I$4:$I$4776=A4)*($K$4:$K$4776>=C4);0);1)

файл не приложить - не лезет даже архивированный
Изменено: Hugo - 10.05.2024 17:47:31
Сопоставление данных по интервалам.
 
Вообще логика формулы не меняется, перестановка местами таблиц на её работу не влияет.
Но на 10 мб конечно тяжело будет, уже на этом файле надоело ждать...

Дождался наконец..
И вот может теперь скажете какие коды и почему должны быть тут:
B2041 71 83,199997 #Н/Д
B2041 98 99 #Н/Д

Есть выбор из таких интервалов:
B2041 0 4 SED
B2041 4 9 IAB
B2041 9 78,7 IAN
B2041 78,7 98,9 TUF
B2041 98,9 175 IAN
Изменено: Hugo - 10.05.2024 17:32:03
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 797 След.
Наверх