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

Страницы: 1 2 3 4 След.
Power Pivot мера расходы/сумму по дате
 
Цитата
написал:
руками скрыл ненужные строки.
Не додумался посмотреть в строки, очень неочевидно было. В магию нужно верить. Спасибо!
Изменено: jiumohoo - 15.11.2024 14:43:28
Power Pivot мера расходы/сумму по дате
 
Alex, Спасибо! Как вы сделали, что мера показывает именно Оборот?
Меру вытащил из значений, обновил запрос, закинул в значения - задваивает меру по типу. Не понял магию, фильтров никаких нет у сводной в вашем файле.
Изменено: jiumohoo - 15.11.2024 13:30:02
Power Pivot мера расходы/сумму по дате
 
Здравствуйте. Совсем нулевые знания DAX. Кое как через GPT пробовал скормить задачу и выдаёт решение такое, но оно работает с ошибкой в строках, ничего не вычисляет.
Почему Мера выдаёт верно в Итогах, но ничего не считает там где хотелось бы?

Пробовал гуглить ещё использовать CALCULATE(SUM(таблица);Календарь) эффект ровно тот же, что есть и нет Итог считает, но не данные в сводной

В желтых строках должен быть ДРР расход/оборот вычисляемый и снизу Итог должен быть таким какой сейчас

:oops:  файлик не влазил по весу https://disk.yandex.ru/i/xqcDW7uTzb4Pqw

Доп. вопрос. Нормально что при загрузке из pq таких маленьких данных он на 1-2 секунду задумывается? Когда нажимаю обновить сводную или все запросы.
Есть ли рекомендация что можно оптимизировать? Полагаю Тип лучше в PQ прикрутить столбец, а не в самом PP?




И меры пробовал в значения выносить - эффект тот же
Изменено: jiumohoo - 15.11.2024 00:19:40
Динамическая формула повторять предыдущую ячейку
 
Павел \Ʌ/, Спасибо!
Динамическая формула повторять предыдущую ячейку
 
МатросНаЗебре, Макрос решает ситуёвину, но вот побочка что откатитья нельзя после вставки или удаления столбца... Такой минус жирный)

Спасибо вновь
Динамическая формула повторять предыдущую ячейку
 
МатросНаЗебре, макрос-то значение ячейки повторяет, но не дату. Если на месте даты текст он его тоже тянет в пустышку. А мне-то именно даты надо)
Опять обрадовался раньше времени
Динамическая формула повторять предыдущую ячейку
 
МатросНаЗебре, Ок, вариант сойдёт)) Интересно формулами кто-то сможет или нет.
Забабахал так, пока не появится попроще варианта без .xlsm
Код
Const firstCell = "C4:aaa4"
Спасибо :)
Динамическая формула повторять предыдущую ячейку
 
МатросНаЗебре, всё не то :( должно получиться по принципу как в строке2.
Так что 1 раз указал формулу натянул диапазон и повторяет даты.
При всём этом чтобы внутри этого диапазона удалив и добавив столбцы формула не нуждалась в "подтягивании" на пустые новые ячейки
Динамическая формула повторять предыдущую ячейку
 
МатросНаЗебре, Не вводил как формулу массива. Теперь работает.
Уже сильная привычка, что эксель давно сам поддерживает динамические диапазоны и даже мысли не было, совсем забылось что и такое было. Как минимум никогда не пользовался.
Спасибо!

Отбой. Обрадовался раньше времени. Не вставляются и не удаляюстя столбцы в этом случае.
Изменено: jiumohoo - 06.09.2024 14:37:39
Динамическая формула повторять предыдущую ячейку
 
МатросНаЗебре, в словах наверно путаюсь. Интерактивые вычисления оно и подразумевает циклические ссылки думал так.
С включенной галкой работает спору нет
Изменено: jiumohoo - 06.09.2024 14:23:23
Динамическая формула повторять предыдущую ячейку
 
МатросНаЗебре, не упомянул, что без циклической ссылки.
Может какие-нибудь лямбда формулами можно, но не силён совсем.
Динамическая формула повторять предыдущую ячейку
 
Здравствуйте.
Требуется формула для поиска ячейки с датой и повторением её в динамическом массиве пока не встретится следующая дата и так далее.


Строка2 - это пример другой формулы, где указав массив она на него и растягивается и неважно что внутри я с колонками делаю. Точно также хочу и дату повторять

Изменено: jiumohoo - 06.09.2024 11:27:45
POWER QUERY ошибка импорта данных (отсутвие файлов)
 
Try и otherwise
Перебор %скидки до нужного значения, ПРОСМОТР()
 
БМВ, Вашу формулу с минусами по началу использовал, но не поняв зачем столько минусов и в попытках переписать/отредактировать по смыслу на свой привычный лад - потерпел поражение.
Решил воспользоваться более менее проще для восприятия формулой от MCH в ней всё очень прямолинейно и понятно, по моему личному мнению.
Так-то обе рабочие спору нет.

Сейчас Павел \Ʌ/ выдал ещё интересней формулу на которую гляжу и глаза в шоке. Внутри файла без LET пытаюсь вникнуть. Пробирает страх уложить по полочкам пока не распарсю построчно логику.
^ Спасибо!

Что с моим переваренным подходом на основе примера использования MCH не так?
Округление и не округление величин эффект не дало. Математически правильно написано, десяток скобок аж для подстраховки добавлял.
Хотелось бы и дальше нести это знание комбинации двух формул!
Изменено: jiumohoo - 18.03.2024 11:07:30
Перебор %скидки до нужного значения, ПРОСМОТР()
 
Подскажите пожалуйста, куда копать в расчете?
Перебор %скидки до нужного значения, ПРОСМОТР()
 
Здравствуйте.
Обращался ранее по текущему вопросу и рад ответам.

Понадобилось увеличить количество переменных зависящих от цены.
Добавив новые переменные в новой ситуации по той же логике по формуле от MCH на выходе не получался нужный результат.
Почему-то требуется дополнительно к расчёту угадывать число с приплюсовыванием для получения правильной скидки. Методом тыка понял, что надо -3 дописать.
Вопрос: почему что-то надо дописывать?
БМВ в своём ответе дописывал +8 к формуле, как пример.



---------------------------
Касаемо обращения.

Почему в моей расчётной формуле основанной на примере от МСН выходная скидка по большинству случаю не совсем близка к условию?


Для примера поправил 3 строки вручную и получаю нужный мне % из условия. Но вот формула косячит.




Просьба помочь подправить. Конечно можно ещё обернуть в LET() для простоты чтения, но сам факт её неверного расчёта не понимаю как исправить.
Код
=ПРОСМОТР($V$6;
((U8-U8*(90-СТРОКА($10:$899))%)-T8-
(((U8-U8*(90-СТРОКА($10:$899))%)*$J$6)+
((U8-U8*(90-СТРОКА($10:$899))%)*I8%)+
L8+
(ЕСЛИ(ИЛИ(E8>=25;H8>=200);500;ЕСЛИ((U8-U8*(90-СТРОКА($10:$899))%)*5,5%<13;13;МИН((U8-U8*(90-СТРОКА($10:$899))%)*5,5%;300))))+
((U8-U8*(90-СТРОКА($10:$899))%)*$Q$6)+
((U8-U8*(90-СТРОКА($10:$899))%)*R8)))
/(U8-U8*(90-СТРОКА($10:$899))%);(90-1-СТРОКА($10:$899))%*100)-3


Колонка V с этой формулой считает нужную скидку по условию % маржи из заголовка.
Новый перебор.xlsx (113.2 КБ)
Изменено: jiumohoo - 15.03.2024 11:47:55
Проблема с ВПР и ОКРУГЛТ
 
Тоже нашёл лишь 2 варианта, округлять в зависимости от длстр или подставить , на ,
ABS, Значен, *1, --, прочие приколы не помогали.
Под капотом ОКРУГЛТ какое-то своё мышление у эксель
Повернуть текст в ячейке не меняя высоту строки
 
Здравствуйте. Не удаётся найти решение казалось бы на банальный вопрос.
То ли майкрософт не продумал вариант и проблема с первого дня, как появился продукт.


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

Без макросов штатным методом такое возможно? Попробовал формулу, а она массивом выдаёт наоборот результат продолжая его вниз под изначальный текст. Должен уходить вверх. Если есть вариант, то мою формулу в листе реверсивно перевернуть попробовать...
Изменено: jiumohoo - 18.10.2023 19:51:30
Разделение одного числа на два, Разделение числа
 
Случмежду (1 и ячейкой), вторая ячейка вычитание исходного от рандома
Изменено: jiumohoo - 24.07.2023 15:10:44
PQ: Как увеличить количество выдаваемых строк в ответе на запрос по API, если в условиях запроса ограничение 1000 строк?
 
Это GetOrders название функции
Код
(offset as number) =>
 let
  URL = "https://api-seller.ozon.ru/v2/posting/fbo/list", 
  Client_Id = Number.ToText(Excel.CurrentWorkbook(){[Name = "Client_Id"]}[Content]{0}[Column1]), 
  API_Key = Excel.CurrentWorkbook(){[Name = "API_Key"]}[Content]{0}[Column1], 
  from = Excel.CurrentWorkbook(){[Name = "frooom"]}[Content]{0}[Column1], 
  to = Excel.CurrentWorkbook(){[Name = "tooo"]}[Content]{0}[Column1], 
  Headers = [#"Content-Type" = "application/json", #"Client-Id" = Client_Id, #"Api-Key" = API_Key], 
  Body = "{""dir"":""ASC"",""filter"":{""since"":"""&from&"T00:00:00.000Z"",""status"":"""",""to"":"""&to&"T23:59:00.000Z""},""limit"":1000,""offset"":"&Number.ToText(offset)&",""translit"":true,""with"":{""analytics_data"":true,""financial_data"": false}}", 
  Response = Function.InvokeAfter(() => Json.Document(Web.Contents(URL, [Content = Text.ToBinary(Body), Headers = Headers])),#duration(0, 0, 0, 0.2))[result], 
  ToTable = Table.FromRecords(Response)
 in
  ToTable
А это иной запрос. Можешь вшить всё в одно
Код
let
 Source = List.Generate(() => 
[Result = try GetOrders(0) otherwise null, page = 0], 
each [Result] <> null, 
each [Result = try GetOrders([page] + 1000) otherwise null, page = [page] + 1000], 
each [Result]), 
 Table = Table.Buffer(Table.Combine(Source))
in
Table


Проверил на своём коде старом, не помню тонкости можно ли в запросе указать период свыше 30-60 дней и всё эдакое. Код рабочий. Данные за неделю вывел
Изменено: jiumohoo - 18.07.2023 15:27:10
Сводная таблица фильтр по подписи не формат даты, а текстовый промежуток дат
 
Ігор Гончаренко, Дак тут комплекс выходит в таком случае. Отфильтровать отрезав ненужное и после если итоговый список будет как попало расположен, то и сортировку применить. Пока что, если вручную тыкать скролив список в фильтре и тыкать на новые данные, то периоды располагаются корректно. По этому мысли об сортировке не возникало.
Поскольку проблем с сортировкой не встречал при клацанье, то думаю это неактуально пока не будет итога от химии внутри фильтра.

Работает с "Содержит", но вот "Больше" и всё с этом духе использовать - победить не получается
Изменено: jiumohoo - 18.07.2023 11:49:20
Сводная таблица фильтр по подписи не формат даты, а текстовый промежуток дат
 
Здравствуйте.
Не хочется добавлять в источник данных дополнительный столбец для такого вопроса с вычленением даты. И в модели данных аналогично.
Строки подписаны таким образом
03.07.2023-09.07.2023
10.07.2023-16.07.2023
К примеру надо отфильтровать всё в большую сторону от ??.05.2023 (от первой даты в периоде)
Пытался с символами играться в поле используя */? - результат не получаю нужный. Там кажется ещё формулы кушаются, но также не получилось

Задумка просто обновлять сводную таблицу и чтобы новые данные добавлялись от заданной границы. А когда захочется подправить новый период - зайти в фильтр и поменять границу

Есть ли решение?
Файл весит больше 300 кб... Даже до 1000 строк урезав - не смог приложить пример
https://disk.yandex.ru/d/qfqa8a47vNlwiw
Изменено: jiumohoo - 18.07.2023 10:32:22
Сослаться на ячейку в которой логический оператор и число, Сослаться на ячейку в которой логистический оператор и число Формула
 
Msi2102, самое скромное и компактное решение.
Павел с Востока, такое не вшить в формулу, на рабочем варианте очень страшно будет выглядеть.
БМВ, есть проблема с тем, что мозг думает и руки делают на автопилоте. Мыль быстрей рук от чего такие приколы в тексте) Спасибо за поправку в заголовке, в тексте тоже подправил.
Сослаться на ячейку в которой логический оператор и число, Сослаться на ячейку в которой логистический оператор и число Формула
 
Диспетчер имен - понял.
Альтернативные варианты возможно ещё кто знает, которые краткие?  
Сослаться на ячейку в которой логический оператор и число, Сослаться на ячейку в которой логистический оператор и число Формула
 
,
https://forum.ozgrid.com/forum/index.php?thread/117916-constructing-a-dynamic-if-expression-with-a-v...
Я тут находил EVALUATE, но почему эта формула какая-то скрытая и доступна в диспетчере имен?

Бился с поиском что за формула такая EVALUATE и сдался)
Изменено: jiumohoo - 30.05.2023 14:14:42
Сослаться на ячейку в которой логический оператор и число, Сослаться на ячейку в которой логистический оператор и число Формула
 
Здравствуйте.
Задача закомментировать условия, которые будут использоваться в расчётах.

Править формулу если что-то изменится в <>= это трудоёмко.

Простой пример
=100 >= 200
=A1>=A2
И вот как бы оператор прикрутить в одну формулу)))
=A1&operator&A2 - ошибка :(
Вроде как формула "И(" превращает в логическое выражение, но тоже не получается. ДВССЫЛ аналогично, +0 тоже

Наверно есть простейшее решение, но не вижу. Громоздкие через Суммпроизв или Выбор - не то.  
Изменено: jiumohoo - 31.05.2023 09:50:18
PQ. Их накопительных данных выводить данные из последнего файла, если их нет брать из последнего
 
, по SKU. Спасибо за свой вариант тоже!
PQ. Их накопительных данных выводить данные из последнего файла, если их нет брать из последнего
 
Alien Sphinx, Спасибо!
Изменено: jiumohoo - 23.05.2023 12:58:33
PQ. Их накопительных данных выводить данные из последнего файла, если их нет брать из последнего
 
Здравствуйте.
Периодично происходит парсинг данных с сайта, но проблема апи запроса в том, что при пагинации всё равно имеет свойство дублировать товар на любой из другой страниц. Это побороть не получается и не сильно горит, потому что вполне устраивает накопление данных, ибо хоть когда-то все товары соберутся. Задача получать из накапливаемых данных информацию из последнего, ибо она свежая и тянуть все отсутствующие артикула из других файлов, а также брать данные из как раз-таки по последней дате файла, как можно свежей.

csv имеет такие колонки
АртикулSKUРейтингКол-во отзывовОценок покупателя
Пример на артикуле: CH-AN-030-000004(тут цвет неважен в примере, ибо цифры в идентичны между ними)
xlg_tmp_2023_04_07T13_14_25.csv (рейтинг 0, кол-во отзывов 1, оценок 0)
xlg_tmp_2023_04_27T13_14_25.csv (рейтинг 3,71, кол-во отзывов 14, оценок 17)
xlg_tmp_2023_05_23T10_35_43.csv (рейтинг 4,13, кол-во отзывов 39, оценок 45)

На выходе нужно получить
CH-AN-030-000004  (рейтинг 4,13, кол-во отзывов 39, оценок 45)

А вот другая ситуация с ухудшением по причине того, где не понял, как бороться.
Снова пример неважно какой артикул такие там есть.
xlg_tmp_2023_04_07T13_14_25.csv (рейтинг 5, кол-во отзывов 5, оценок 5)
xlg_tmp_2023_04_27T13_14_25.csv (рейтинг 1, кол-во отзывов 22, оценок 22)
xlg_tmp_2023_05_23T10_35_43.csv (рейтинг 1, кол-во отзывов 39, оценок 45)
То бишь, Table.Group макс по дате и взять то и сё поле на выходе мне даёт совсем не те значения.
На выходе нужно получить: (рейтинг 1, кол-во отзывов 39, оценок 45)

Артикул собранный из всех файлов / дата наименования файла откуда взято, ибо свежей данных не встретилось / сами данные



Нужно аккумулировать артикула из всех файлов и к ним взять данные как можно свежей по дате наименования файлов.
Я тестово пробовал в приложенном файле через Table.Group и прочие комбинации, но на выходе неверно, скил слабый. Намесил грязи.
Изменено: jiumohoo - 23.05.2023 11:51:30
В PQ запросе не удаётся подставить API из воркшита, ругается, API запрос на Озон выдаёт ошибку "An on-premises data gateway is required to connect."
 
Иван,
Код
let
  URL = "https://api-seller.ozon.ru/v2/posting/fbo/list", 
 Client_Id = "xxx", 
 API_Key = "xxxxxxxxxxxxxxxxxxxxx", 
  DateFrom = Excel.CurrentWorkbook(){[Name = "Ord_fbO_OZN_DateFrom"]}[Content]{0}[Column1], 
  DateTo = Excel.CurrentWorkbook(){[Name = "Ord_fbO_OZN_DateTo"]}[Content]{0}[Column1], 
  Headers = [#"Content-Type" = "application/json", #"Client-Id" = Client_Id, #"Api-Key" = API_Key], 
  Body = "{""dir"":""ASC"",""filter"":{""since"":"""&DateFrom&"T00:00:00.000Z"",""status"":"""",""to"":"""&DateTo&"T23:59:00.000Z""},""limit"":1000,""offset"":0,""translit"":true,""with"":{""analytics_data"":false,""financial_data"": false}}", 
  Response = Function.InvokeAfter(() => Json.Document(Web.Contents(URL, [Content = Text.ToBinary(Body), Headers = Headers])),#duration(0, 0, 0, 0.2))[result], 
  ToTable = Table.FromRecords(Response)
in 
ToTable
Страницы: 1 2 3 4 След.
Наверх