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

Страницы: 1
Формула нарастающего итога на языке M
 
Добрый день!

Gодскажите можно ли написать аналогичную формулу (расчет остаточного пробега) в Power BI? Правильно ли я понимаю что лучше это делать на стадии запроса в Query?
Сделал сортировку по дате и номеру автобуса, далее добавил столбец с индексом. После этого создаю настраиваемый столбец  и пишу следующий код:
Код
= Table.AddColumn(#"Добавлен индекс", "Остаточный пробег", each try (if [Примечание] = "ремонт" 
then 2500
else if [#"№ Автобуса"]=#"Добавлен индекс"[#"№ Автобуса"]{[Индекс]-1}
     then #"Добавлен индекс"[Остаточный пробег]{[Индекс]-1}-[Расстояние]
     else "неизвестно")
otherwise "null")
проблема как мне кажется именно в том, что я не правильно ссылаюсь на предыдущее рассчитанное значение в настраиваемом столбце [Остаточный пробег]
Результат выдаваемый моиv настраиваемым столбцом:
2500 - верно рассчитывает
"неизвестно" - верно рассчитывает
null - верно рассчитывает
а вместо рассчитанного пробега выдает тоже null

Буду рад подсказке/наводке, может это вообще надо делать позднее на вкладке данные с помощью DAX?
Изменить запрос с помомощью VBA
 
Добрый день, есть 10 файлов PQ которые делают запрос на папки, например;
первый файл делает запрос к папке C:\data\1
второй файл делает запрос к папке C:\data\2
и т.д.
Открывать и закрывать excel файлы умею, обновлять запрос тоже, а вот как изменить путь к папке в запросе... Напрмер надо чтобы первый файл ссылался теперь не на папку C:\data\1 а на C:\data\1000
Буду очень признателен за ответ.
Поиск решения. Как быть если несколько ячеек равны.
 
Подскажите, как правильно оформить условие к поиску решения, мне надо чтобы ячейки a1 b1 c1 были равны между собой
Есть ли какой-то иной вариант кроме как писать 2 ограничения a1=b1 и b1=c1?
А также если я хочу чтобы они принимали значения либо 0,4, 0,6 или 1, и не какие другие, можно ли это как-то сделать?
прошу ответить на вопросы по отдельности если возможно.
Макрос-копировать несмежные столбцы таблицы
 
Добрый день, подскажите, хочу скопировать несколько не смежных столбцов  таблицы (вместе с заголовками) на новый лист макросом, для одного столбца макрос осилил:
Код
Sub Макрос1()

    Range("Таблица1[[#All],[Материал]]").Select
    Selection.Copy
    Sheets.Add After:=ActiveSheet
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End Sub
а для нескольких не смежных - не получается. И как лучше для большего массива, копировать не смежные столбцы с использованием имен столбцов или без них (через определение диапазона)?
Изменено: Grantorino - 24.08.2020 15:51:49
Рассчитать методом LIFO время нхождения продукции в холдильнике
 
Добрый день! буду очень рад подсказке  формулой.
В холодильник каждый день кладут/берут котлеты.
Таблица с остатком котлет на 1, 2 .. 12-й день
12345678910
1000250030002700240035005000550070004500
Когда забирают котлеты, то берут последние положенные, т.е. по методу LIFO.
Подскажите, какой формулой, макросом или как автоматически рассчитать сколько дней пролежат котлеты положенные в первый день (1000 шт.), во второй (1500 шт.), в третий и т.д.?
Изменено: Grantorino - 03.04.2020 13:43:24
Поиск попутного маршрута по координатам
 
Добрый день!
Есть маршрут :
отправлениеДолготаШиротаНазначениеДолготаШирота
Петербург30.31609659.92551Москва37.64801855.746940
Есть список возможных попутных маршрутов:
отправлениеДолготаШиротаНазначениеДолготаШирота
Вологда39.91944859.248382Калуга36.20440754.507682
Вел. Новород31.28731458.537041Тверь35.86733556.908494
Выборг28.75932760.715797Подольск37.55752455.454553
Необходимо выбрать маршрут, чтобы : (сумма пробега от точки отправления из табл 1 до точки отправления из табл 2) + (сумма пробега от точки назначения из табл 1 до точки назначения из табл 2) была минимальной.

Решение: мне кажется что такую задачу надо решать через поиск решений или формулой массива, но как? пока что думаю прямо считать по уравнению =acos(sin(lat_a)*sin(lat_b)+cos(lat_a)*cos(lat_b)*cos(lon_a-lon_b)*R, где lat_a и lat_b - широты объектов, lon_a и lon_b - долготы объектов, R - радиус Земли.  
Изменено: Grantorino - 31.03.2020 10:59:32
Разделить текст на несколько ячеек
 
Добрый день!

В ячейке есть данные:

180010 Бекасово I - 51км, 190609 Столбовая - 5км, 192605 Михнево - 141км

Хочу записать эту информацию в разные ячейки следующим образом:
Код 1Станция 1Расстояние 1Код 2Станция 2Расстояние 2Код 3Станция 3Расстояние 3
Самостоятельно сделал так: разделил текст по столбцам (разделитель- запятая), после этого через левсимв (либо тоже текст по стобцам, фисированной шириной)  получил коды. а далее через правсимв  километры. Возможно  можно сделать как-то более просто, может кто знает?
Изменено: Grantorino - 16.03.2020 15:11:43
Найти комбинацию в матрице
 
Добрый день! возможно кто-то подскажет можно ли написать макрос реализующий определенный алгоритм.
С проблемой столкнулся в рамках решения транспортной задачи, а точнее на стадии анализа отклонения от оптимума.

Дана матрица с положительными, отрицательными и пустыми ячейками, например:
ABCDE
1412432-242
2-1424725-30
323-1-1712-45
4-46-8-335-36
528-2218-46-38
Необходимо для каждой не пустой ячейки матрицы найти точку "B" в той же строке с противоположным знаком, и с противоположным знаком в том же столбце точку "C", точка "D" с тем же знаком (+,-) что и точка "А" имеет координаты: пересечение солбца точки B и строки точки C
После чего сложить сумму A+B+C+D, и ранжировать полученный результат, от большего к меньшему.

Пример: Для А1 есть два варианта:
1) 41 + (-2) + (-14) + 25 = 50
2) 41 + (-2) + (-46) + 5 = -2
Изменено: Grantorino - 21.01.2020 12:17:50
Составить рейтинг потерь по транспортной задаче относительно оптимума
 
Составив и решив транспортную задачу (ЗЛП) симплекс методом через поиск решений, столкнулся с интересной проблемой.
Сравнив фактическое и оптимальное распределение можно легко посчитать потенциальную экономию, но вот разделить эту экономию на частные случаи оказывается не так легко.
Логика нахождения потерь и составления рейтинга следующая, если мы хотим найти наибольшие потери на единицу, то необходимо найти в таблице "отклонение по затратам на единицу":
Код
a+b+c+d ->min

если a(x;y)  > 0 то:
b(x;j)  < 0
c(i;y)  > 0
d(i;j)  < 0

или
Код
a+b+c+d ->min

если a(x;y)  < 0 то:
b(x;j)  > 0
c(i;y)  < 0
d(i;j)  > 0

По логике надо найти все a+b+c+d и по ним составить рейтинг, если я правильно понимаю, но как это сделать формулой или макросом...

В прикрепленном файле я составил рейтинг вручную.
Изменено: Grantorino - 20.01.2020 11:48:08
Сбор результатов выдаваемых калькулятором расстояний
 
Добрый день, написав калькулятор расстояний между пунктами столкнулся с необходимостью получения расстояний между большим числом городов.
написал макрос, но для большого объема он слишком медленный. Подскажите, как его ускорить, или  может его стоит написать через массив как-то? Я новичок в макросах, прошу не судить строго.
файл с примером прикрепляю (поле, в котором выдается резульат-расстояние считается намного сложнее чем в примере, поэтому просто прибавлять 25 к найденному значению не подойдет), макрос представлен ниже.
Перед началом макросах выделяю ячейки а3:b3  и запускаю:
Код
Sub test()
Application. ScreenUpdating = False
Dim intcount = 1 As long
For intcount = 1 to Cells(1, 1)
Selection. Copy
Sheets("Расчет").Range("B2").Pastespecial Paste:=x1PasteValues, Operation:=x1None, SkipBlanks _ :=False, Transponse:=False
Sheets("Расчет").Range("f1").Copy
Sheets("Macros").Select
Activecell.Offset(0, 2).Pastespecial Paste:=x1PasteValues, Operation:=x1None, SkipBlanks _ :=False, Transponse:=False
Range("Activecell.Offset(1, -1), Activecell.Offset(1, -2)).Select
Next
Application. ScreenUpdating = True
End Sub
Изменено: Grantorino - 14.01.2020 11:35:09
Страницы: 1
Наверх