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

Страницы: 1
Ошибка выполнения запросов при Обновить все
 
ev.foxed, потомки Вам благодарны.
Решение рабочее, сразу после удаления листа модель работает корректно.
Разный текст определяется как одинаковый, "0" ="00"
 
Wild.Godlike, спасибо!
Про СУММ в массиве не подумал))
Разный текст определяется как одинаковый, "0" ="00"
 
Здравствуйте
При применении формулы СУММЕСЛИМН текстовые значения "0" и "00" считаются одинаковыми, хотя ="0"="00" возвращает ЛОЖЬ. Подскажите, как можно корректно посчитать суммы по каждой группе стандартными формулами без VBA и PowerQuery?
Как преобразовать текст (выглядящий как формула) в формулу Excel ?, Как преобразовать текст (выглядящий как формула) в формулу Excel ?
 
Действительно, файл не прикрепил, извините.
Задачу поняли верно, спасибо за предложенное решение. Пожалуй подойдет.
Как преобразовать текст (выглядящий как формула) в формулу Excel ?, Как преобразовать текст (выглядящий как формула) в формулу Excel ?
 
Здравствуйте!

У меня несколько другая задача, но наверное соответствует теме в качестве продолжения исходного вопроса.
Как сослаться на формулу, записанную в виде строки?
Например я прописываю в ячейку условие, и в зависимости от него тянется формула, заранее записанная в некотором справочнике. Очень не хочется впихивать все формулы в одну ячейку (в рабочем примере параметров больше, а формулы сложнее), так как возникнут сложности при отладке. Можно конечно сделать макросом, но такое решение в моей ситуации не желательно. Может кто-то подскажет решение задачи формулами?

В файле примера все формулы вписаны в ячейки Y, задача применять формулу из справочника в зависимости от значения параметра, а не прописывать ее явно. Excel 2016.
индекс поискпоз (возврат суммы), автовозврат суммы по 2 критериям в опред.ячейке
 
Неправильно написаны функции ПОИСКПОЗ и ИНДЕКС. В первой у Вас сцеплены два массива - горизонтальный и вертикальный (кстати формула массива там не нужна), во второй нет номера столбца.

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

Вставьте в ячейки, в которых должны быть данные формулу (диапазоны скорректируйте при их изменении):
=ИНДЕКС($I$4:$I$7;ПОИСКПОЗ($G4;$G$4:$G$7;0);1)

Но лучше наверное так:
=ЕСЛИ(СТРОКА($I4)-3= J$3;СУММЕСЛИМН($I$4:$I$7;$G$4:$G$7;J$3);"")
Формула расставляет значения по диагонали. Отступ 3 клетки указан с учетом положения таблицы в примере.

В случае нескольких одинаковых значений в столбце "дни" первый вариант выдаст только одно первое значение, второй выдаст сумму значений.
Ошибка запроса Power Query
 
Михаил Л, запрос работает, предварительный просмотр не показывает ошибок. Ошибка возникает при загрузке запроса в таблицу, причем у одних пользователей благополучно загружается, а у других возникает ошибка (доступ к источникам есть у всех, параметры уровней конфиденциальности в PQ у всех глобально игнорируются). Скорее всего лечится установкой более поздних версий MS Office, но не хочется прибегать к таким радикальным мерам. На форуме и в русскоязычном интернете не нашел ничего, что могло бы помочь решить проблему.

Тем не менее благодаря Вашему совету удалось выяснить следующее:
  • Сообщение возникает вне зависимости от наличия ошибок в запросе и зависит от рабочего места пользователя
  • У пользователей, которые получают ошибку более старая версия MS Office (2016) и PQ
Возможно эта новая информация поможет с поиске источника проблемы и решения.  
Изменено: Игорь Сова - 30.05.2024 13:49:07
Ошибка запроса Power Query
 
Здравствуйте

При обработке запросов у некоторых пользователей возникает ошибка (на снимке). То есть у одних пользователей ошибки нет, а у других есть. Источники данных запросов, в которых возникает ошибка - Google Sheets и сетевой диск. Параметры уровней конфиденциальности в PQ у всех глобально игнорируются, настройки безопасности коллег не проверял, у меня стоят по умолчанию (у меня все работает без ошибок). Помогите выяснить причину ошибки и подскажите, что делать, чтобы запрос работал у всех пользователей. Если требуется больше информации, напишите, что еще нужно.
Группировка по интервалам в Power Query, Сгруппировать длительность по часовым интервалам
 
Garrys, немного поправил Вашу изначальную функцию: когда весь период находится в рамках одного интервала, стартовое значение длительности рассчитывалось неправильно. Также переименовал переменные.
Раньше не пользовался List.Generate и List.Accumulate, но кажется пора изучить. Такой подход для меня в новинку.
Результат полностью совпадает с моим решением, но по производительности существенно лучше. Даже так: ФЕНОМЕНАЛЬНО БЫСТРЕЕ!!! Большое спасибо за помощь!
Окончательный код функции прикрепляю, остальные действия без изменений:
Код
    CombineFunction = (x)=> 
                [
                PeriodStart = x{0},
                Duration = x{1},
                PeriodEnd = PeriodStart + #duration(0,0,0,Duration),
                FirstInterval = DateTime.From(DateTime.ToText(x{0}, "dd.MM.yyyy HH:00"), "ru-RU"),
                RecordsList = List.Generate(()=> 
                                [i=1, Interval = FirstInterval, IntervalDuration = if PeriodEnd < FirstInterval + #duration(0,1,0,0) then Duration else Duration.TotalSeconds((FirstInterval + #duration(0,1,0,0) - PeriodStart))],
                                (x)=>x[Interval] < PeriodEnd,
                                (x)=>[i=x[i]+1, Interval = x[Interval] + #duration(0,1,0,0), IntervalDuration = if PeriodEnd > (Interval+#duration(0,1,0,0)) then 3600 else Duration.TotalSeconds(PeriodEnd - Interval)],
                                (x)=>[Interval = x[Interval], Duration = x[IntervalDuration]]),
                Table = Table.FromRecords(RecordsList)
                ][Table],
AlienSx, ваш код успешно работает на тестовой версии. На рабочих данных не проверял, поэтому скорость работы пока не оценивал. Когда смогу проверить на рабочих данных, отпишусь в тему, чтобы другие формучане могли пользоваться.

Всем спасибо!
Изменено: Игорь Сова - 12.03.2024 12:21:33
Группировка по интервалам в Power Query, Сгруппировать длительность по часовым интервалам
 
Здравствуйте

Есть задача - сгруппировать некоторый длительный интервал по часам.
Например:
Начало 11.03.2024 12:45:00
Длительность 01:10:00

Нужно разбить длительность так, чтобы было видно, в какой часовой интервал сколько времени было задействовано.
Результат должен быть таким:
12:00-13:00 = 00:15:00
13:00-14:00 = 00:55:00

Сейчас использую такое решение, но оно сильно тормозит на больших объемах на этапе "Список_секунд".
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Исходник"]}[Content],
    Список_секунд = Table.AddColumn(Источник, "ListDateTimes", 
        each 
            List.DateTimes([DateTimeStart],[Duration],#duration(0, 0, 0, 1)),    //Формируем список всех секунд, которые сотрудник провел в указанном статусе в рамках сессии
        type list),
    Начало_часа = Table.TransformColumns(Список_секунд, 
        {
        {"ListDateTimes", each List.Transform(_, each Time.StartOfHour(_)), type list}    //Вычисляем начало часа для каждой секунды (определяем интервал для каждой секунды)
        }),
    Развернуть_ListDateTimes = Table.ExpandListColumn(Начало_часа, "ListDateTimes"),
    Группировка_по_интервалам = Table.Group(Развернуть_ListDateTimes,     
        {"Condition", "ListDateTimes"}, 
        {{"Duration", each Table.RowCount(_), Int64.Type}}    //Группируем секунды по началу часа, к которому они принадлежат
        ),
    Измененный_тип = Table.TransformColumnTypes(Группировка_по_интервалам,{{"ListDateTimes", type datetime}})
in
    Измененный_тип
Прикрепляю пример файла.

Есть ли более быстрое решение данной задачи в Power Query? Объем рабочих данных составляет 500k+ строк ежедневно.
Рад готовым решениям, подсказкам, ссылкам.
Рандомные значения чисел
 
Здравствуйте

Если еще актуально, то держите решение.
Направляю решение наперед. Оплата на Ваше усмотрение.
Пропадает связь диаграмм между Excel и ppt
 
Здравствуйте
Такая же проблема. Все работает, а потом при очередном открытии презентации связи внезапно пропадают. Источники стабильны, не меняется локация, название, диаграммы те же самые - не созданные заново. Ручное обновление не помогает, потому что связи уже нет.
Если кто-то знает причину и способ устранения проблемы, подскажите, пожалуйста.  
Power Bi Создание столбца с последней датой на основание значения, на основание последней даты определить статус, Создание столбца с последней датой на основание значения, на основание последней даты определить статус
 
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Пример"]}[Content],
    Измененный_тип = Table.TransformColumnTypes(Источник,{{"scr", Int64.Type}, {"calldate", type date}}),
    Последняя_активность = Table.Group(Измененный_тип, {"scr"}, {{"LastDate", each List.Max([calldate]), type date}}),
    Статус = Table.AddColumn(Последняя_активность, "status", each if [LastDate]+#duration(60, 0, 0, 0) < Date.From(DateTime.LocalNow()) then "Не активный" else "Активный", type text),
    Итоговая_таблица = Table.Join(Измененный_тип, "scr", Статус, "scr")
in
    Итоговая_таблица
Попробуйте так со своим источником.
Если стоит задача определить активность каждого уникального номера, то удалите последний этап.
ожидается токен comma
 
Цитата
написал:
Цитата
Игорь Сова написал:
какая может быть причина?
где-то не указана запятая. По предоставленному описанию больше нечего предложить в принципе. Если сами не можете найти где не хватает - нечего секретность разводить  Приложите весь текст запроса, без всяких "я тут обрезал, там убрал...". Может Вы убираете именно ошибочную часть кода?
Дмитрий(The_Prist) Щербаков, Я переписал запрос с нуля, заработало.
До этого вставлял кусок кода из другого безошибочно работающего запроса. Вероятно, действительно где-то была пропущена запятая.
Меня удивило, что PQ по ссылке на ошибку направляет на in. Прошелся по запросу, везде строки оканчивались запятыми (кроме последней строки).
Я привык, что если где-то нет запятой (например внутри функции PQ), то ссылка указывает на место, где должна стоять запятая.
В любом случае спасибо за отклик.
ожидается токен comma
 
Код
(Link) as table =>

let
    Источник = Excel.Workbook(Web.Contents(Link), null, true),

    <Тело функции>

    Удалить_индекс = Table.RemoveColumns(Сняты_с_линии_коррект, {"Earliest Date", "Индекс"})
in
    Удалить_индекс 
Wild.Godlike, Файл рабочий, я написал только последние строки кода. let прописан в начале
ожидается токен comma
 
Здравствуйте
Редактор выдает ошибку "Ожидается токен Comma." в in
Код
    Удалить_индекс = Table.RemoveColumns(Сняты_с_линии, {"Дата", "Индекс"})
in
    Удалить_индекс
Подскажите, какая может быть причина?
Изменено: Игорь Сова - 30.11.2022 17:16:18
Поиск оптимального решения
 
kirill2352631, оптимальное количество товаров это как? Если имеется в виду такой состав, который будет производить максимальное количество любых товаров, то просто смотрите наибольшее количество товара, которое может произвести каждый сотрудник и формируете ТОП-5 работников по этому показателю. Но судя по названию темы есть ограничения по разнообразию товаров или другие, кроме указанных Вами, уточните их.
"Критерием являться так же допустим работник 4 (может и другой , это решается  каждый раз по разному  "
Это не очень понятно. Вернее очень непонятно.
Изменено: Игорь Сова - 10.10.2022 17:01:49 (Ссылка на текст в виде адреса)
DAX посчитать количество уникальных значений по значению меры
 
Цитата
написал:
Код
    [URL=#]?[/URL]       1      =COUNTROWS(FILTER(VALUES(  'Таблица1'[Сотрудник]);[Средний чек]>[Норматив (средний чек)]))   
 
mechanix 85, Спасибо, работает как надо
Почитаю больше про функцию VALUES
DAX посчитать количество уникальных значений по значению меры
 
Здравствуйте
Своих навыков работы в DAX не хватает, а в интернете не нашел подходящего решения.
Задача:
Посчитать количество сотрудников со средним чеком > 50 000 рублей
Для среднего чека создана мера
Средний чек:=SUM([Чек])/COUNTA([Номер продажи])
Поскольку DAX считает по строкам, то мера Количество:=CALCULATE(DISTINCTCOUNT[Сотрудник]);FILTER('Таблица1';[Средний чек]>50000)) выдает количество сотрудников, у которых есть хотя бы одна продажа >50000
Изменено: Игорь Сова - 14.09.2022 14:27:30
Страницы: 1
Наверх