Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 260 След.
Связь между несколькими Таблицами через модель данных, построение сводной таблицы из нескольких исходных с учётом связи между ними
 
Цитата
PooHkrd написал:
через SUMX(ADDCOLUMN;...)
Почему бы и нет? Может так более быстрый и эффективный вариант будет?
Код
=Var joined = ADDCOLUMNS('Рецепты'; "Связанный ингредиент Ж"; RELATED('Ингредиенты'[Ж]))
Return SUMX(joined; [Связанный ингредиент Ж])

P. S. Уже года полтора DAX не использую, забывать начинаю :(
Изменено: Андрей VG - 20 Июн 2019 13:16:54
Связь между несколькими Таблицами через модель данных, построение сводной таблицы из нескольких исходных с учётом связи между ними
 
Цитата
buchlotnik написал:
Вижу что работает,
Не совсем верно по итогам работает (там же сумма Ж должна быть). Вариант от Power Pivot 2106
Код
Сумма по Ж2 := Var joined = CALCULATETABLE(NATURALLEFTOUTERJOIN('Ингредиенты'; 'Рецепты'); 'Рецепты')
Return SUMX(joined; 'Ингредиенты'[Ж])

Цитата
CALCULATETABLE('Ингредиенты'; 'Рецепты')
По этому поводу Matt Allington пишет - чёрная магия :)  Фактически идёт фильтрация в верх. Но работает именно в таком виде с полной таблицей (FILTER возможен).
Так уже работать не будет CALCULATETABLE('Ингредиенты'; VALUES('Рецепты'[ИндексИ]))
Максим Зеленский как-то упомянул, что может объяснить... но видимо я где-то мимо этих объяснений проскочил.
P. S. Если 2013, 2010, то тогда кроме как CROSSJOIN с последующей фильтрацией по 'Рецепты'[ИндексИ] = 'Ингредиенты'[Индекс] варианта предложить не могу.
Изменено: Андрей VG - 20 Июн 2019 12:56:08
Связь между несколькими Таблицами через модель данных, построение сводной таблицы из нескольких исходных с учётом связи между ними
 
Доброе время суток.
Вариант
Код
Сумма по Ж := SUMX(CALCULATETABLE('Ингредиенты'; 'Рецепты'); 'Ингредиенты'[Ж])
Счет дней по промежутку дат Power BI/Power Pivot
 
Цитата
tmhashNIK написал:
Для расширения кругозора и дальнейшего использования в работе.
Например, тут. Конкретно для этой задачки подумайте, что получится с графиком, если в какие-то интервалы дат не будет ни одной загруженной машины?

Собственно, требуемая, с учётом работы с календарём.
Код
present = Var curDate = MAX('Calendar'[date])
Var common = FILTER('Таблица1'; 'Таблица1'[дата погрузки] <= curDate && curDate <= 'Таблица1'[дата разгрузки])
Var rowCount = COUNTROWS(common)
Return IF(rowCount > 0; 1; 0)
Изменено: Андрей VG - 19 Июн 2019 22:57:15
Как создать дубликат Control в UserForm через VBA ?
 
Цитата
Ігор Гончаренко написал:
но это не отвернет меня от использования метода аналогий, от единичного к общему, как одного из основополагающих в философии методов познаний)
Игорь, с этим не поспоришь. Порядок прежде всего!
Привёт пример всего-лишь для того, чтобы показать что всё это ООП - абстракция. Большинство ограничений на уровне договорённостей. В IDE построения форм код IDE следит, чтобы не было повторяющихся имён, но вот в Runtime контроль такой договорённости просто не предусмотрели или посчитали не нужным.
Счет дней по промежутку дат Power BI/Power Pivot
 
Цитата
DimaDima написал:
Помимо дат есть еще порядка 50 признаков для каждой машины.
Как вы думаете, для чего это написано
Цитата
2.3. Приложите файл(ы) с примером (общим весом не более 300Кб) в реальной структуре и форматах данных того, что есть сейчас и того, что хотелось бы на выходе. Просто так?
[QUOTE]DimaDima написал:
[B]Уверен
что нужно капать в сторону мер с датами: DATESBETWEEN или DATESINPERIOD
Какие рассуждения привели вас к такой уверенности? Можно получить некоторые соображения по этому поводу? Жду и ответы на поставленные выше вопросы.
По задаче. Делаете не связанный с Таблица1 календарь. Почитайте гуру этого дела. Везде где есть даты, они настоятельно советуют использовать календарь.
Теперь представьте таблицу, где столбцы - даты этого календаря, а строки выборка записей, определяемая номером машины. Как вы понимаете мера должна возвращать в ячейке на пересечении строки и столбца 1, если есть пересечение дат записей по номеру машины и столбца даты календаря, если пересечения нет, то возвращает 0.
В таком алгоритме нужно использовать лишь IF, COUNTROWS, FILTER, MAX|MIN|AVERAGE и даже VALUES
P. S. На работе Power BI Desktop нет, поэтому показать не могу. Хотя задача с календарём совсем не сложная. Успехов.
Изменено: Андрей VG - 19 Июн 2019 10:52:17
Дата изменения файла
 
Доброе время суток.
Цитата
pervyakov.ma написал:
или существуют другие методы вытянуть дату изменения файла?
А поискать на форуме Дата изменения файла? Можно и не только на нём, но и шире по всему интернету :)
ВПР с заданной погрешностью, Можно ли подтягивать данные с допустимым количеством ошибок?
 
Доброе время суток
Цитата
kolyale написал:
При сведении данных из разных источников (от hr и из 1С)
И у вас обходятся и там и там без общего табельного номера?!
Изменено: Андрей VG - 18 Июн 2019 23:32:07
Счет дней по промежутку дат Power BI/Power Pivot
 
Доброе время суток
Цитата
DimaDima написал:
Строк более 3 млн.
И к чему на таком объёме такая диаграмма по дневная и по машинная? Допустим автопарк на 3000 машин и 1000 записей по каждой. Допустим каждая по три для стоит в загрузке и день пропуска - 3000 дней на машину. То есть график по датам на 10 лет? Или машин больше? В любом случае - что вы хотите этим увидеть?
Не обиды для, а любопытства ради мой вопрос.
PQ Столбцы в строки (отмена свертования) когда такх строк больше одной (для отмены свертвования)
 
Цитата
buchlotnik написал:
а разве я не это предложил?
Конечно, вы. Но поблагодарить ТС не осмелился :)   Плюс, bobyjoy, хотел решения
Цитата
bobyjoy написал:
а еще и другие столбцы
Но представленное им решение выдаёт для двух добавленных столбцов: Грузоподъёмность и Скорость какую-то хрень.
Изменено: Андрей VG - 18 Июн 2019 20:49:21
Определить, есть ли лист в закрытой книге с заданным именем - VBA, если да то.....если нет то...
 
Цитата
Sandero написал:
если файла такого вообще нет
функция формировалась для проверки существования листа в существующей книге. У вас другая прдзадача - проверить существование файла. Следовательно, бинарный ответ тут не возможен.
Получение по заданному списку адресов их гео-координат (широта и долгота), Макрос для получения геокоординат по адресу
 
Цитата
Wild.Godlike написал:
А подсунув их в РР получаюКрасноярск
Всё может быть. Таланты разные базу формируют :)  Спасибо за предупреждение и информацию.
Получение по заданному списку адресов их гео-координат (широта и долгота), Макрос для получения геокоординат по адресу
 
Цитата
Wild.Godlike написал:
то по яндексу кординаты могут быть одного региона....а показывает чуть ли не другой конец страны...
Так может не ставить в запросе к Яндекс results=1? Тогда возможно в других вариантах выдачи найдётся что-то и поближе другого конца страны. :)
Как создать дубликат Control в UserForm через VBA ?
 
Доброе время суток
Цитата
Ігор Гончаренко написал:
не могут в форме жить два контрола с одинаковыми именами
Игорь, это точно? А если так?
Код
Private Sub UserForm_Click()
    Dim pControl1 As MSForms.Control
    Dim pControl2 As MSForms.Control
    Set pControl1 = Me.Controls.Add("Forms.TextBox.1", "myTextBox", True)
    Set pControl2 = Me.Controls.Add("Forms.TextBox.1", "myTextBox", True)
    pControl1.Top = 0
    pControl2.Top = 30
    pControl1.Text = pControl1.Name
    pControl2.Text = pControl2.Name
End Sub
Получение по заданному списку адресов их гео-координат (широта и долгота), Макрос для получения геокоординат по адресу
 
Доброе время суток
Цитата
ela98 написал:
Есть другой метод, вызывающий больше доверия?
Возможно есть - протестируйте на контрольных данных (таблица с известными адресами и geo-координатами, которые, например, вы лично прошли с GPS приёмником)  найденные макросы и выберите тот, который вызовет у вас большее доверие.
Изменено: Андрей VG - 18 Июн 2019 16:50:51 (что-то грамотен уж больно стал :( )
Выбор масштаба графика с помощью кнопки
 
Цитата
euakuch написал:
Тогда на графике по оси Х не отображается корректно время.
Это потому что, используемый вами подход предполагает только единицы измерения xlYears, xlMonths, xlDays - куда, как вы понимаете, время не входит.
Разбить длину на интервалы и расчитать среднее значение для каждого
 
Доброе время суток
Цитата
Brewer написал:
в Экселе все еще слаб
Надеюсь, не слабы в своём роде деятельности. Советую описать методику расчёта, не прибегая к формулам Excel, ну, например так как вы бы это считали на бумажке. Если лень, то ждите специалиста в своей области знаний. Может и поможет кто.
Выбор масштаба графика с помощью кнопки
 
Цитата
euakuch написал:
Дата и время являются текстовыми
Воспользуйтесь ЕТЕКСТ
Выбор масштаба графика с помощью кнопки
 
Доброе время суток
У вас данные для оси категорий текст.
Как вытащить количество из строки текста?
 
Цитата
Ігор Гончаренко написал:
надеюсь очень скоро ВСЕ поисковые системы начнут использовать маски RegExp
Осталось только выяснить, будут ли они пользоваться только одним диалектом? Например, функции в Google Spreadsheet для работы с регулярными выражениями базируются на этом диалекте.
И выясняется, что, например такое, не поддерживается
(?=re) before text matching «re» NOT SUPPORTED
(?!re) before text not matching «re» NOT SUPPORTED
Как вытащить количество из строки текста?
 
Цитата
ZVI написал:
после "ПО" ... НЕТ пробелов...
Владимир, спасибо, пропустил :(  Но тогда соглашусь с Игорем, не вижу какой-либо ошибки в "по *(\d+)", разве что будет нечто вроде
"Вино Лимпопо 1,25 литра выдержанное по 12" :)
Как вытащить количество из строки текста?
 
Доброе время суток
Цитата
ZVI написал:
"по( ?)+(\d+)"
Владимир, подскажите, пожалуйста, чем такая конструкция выгоднее чем просто по "по +(\d+)"?
PQ Столбцы в строки (отмена свертования) когда такх строк больше одной (для отмены свертвования)
 
Цитата
buchlotnik написал:
Ну такой костылик родился:
А если там ещё "Грузоподьёмность", "Скорость" и т. д. ?
Как-то так, ориентируясь на null значения в первой строке, думаю, будет лучше
Код
let
    digitSymbols = {"0".."9"},
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    baseInfo = Record.ToTable(Source{0}),
    removeDigits = Table.AddColumn(baseInfo, "Cleaned", each if [Value] = null then null else Text.Remove([Name], digitSymbols)),
    transformList = Table.ToRecords(Table.SelectRows(removeDigits, each [Cleaned] <> null)),
    baseList = Table.SelectRows(removeDigits, each [Cleaned] = null)[Name],
    baseTable = Table.RemoveRows(Source, 0, 1),
    maker = List.Transform(transformList, (rec) =>
    let
        subTable = Table.SelectColumns(baseTable, baseList & {rec[Name]}),
        toSumName = Table.RenameColumns(subTable, {rec[Name], "сумма"}),
        addMonth = Table.AddColumn(toSumName, "Месяц", each rec[Cleaned]),
        addSign = Table.AddColumn(addMonth, "Признак суммы", each rec[Value])

    in
        addSign
    )
in
    Table.Combine(maker)
Перенос строк из одного файла в другой, Очень срочна нужна помощь
 
Цитата
Villord написал:
Попал сюда
Так может всё же чтобы никуда не попадать, то начинать с чтения правила форума? :)  Это не больно!
Изменено: Андрей VG - 17 Июн 2019 16:11:49
Перенос строк из одного файла в другой, Очень срочна нужна помощь
 
Доброе время суток.
Цитата
Villord написал:
Будет вообще отлично если можно будет сделать это BAT-ником
Может сразу в раздел Работа?
Как задать меру по умолчанию для модели данных Power Pivot?
 
Цитата
s_bag написал:
без ясного указания на меру:
Тогда нет такого параметра в Power Pivot. Если сопоставлять с SQL Server Analysis Services, то будет ли у этих служб  мера по умолчанию в режиме Power Pivot? Увы, не специалист в этой области, совсем.
PQ Столбцы в строки (отмена свертования) когда такх строк больше одной (для отмены свертвования)
 
Доброе время суток.buchlotnik, спешим, а циферки в именах месяцев удалить? :)
Код
let
    digitSymbols = {"0".."9"},
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Demoted Headers" = Table.DemoteHeaders(Source),
    #"Transposed Table" = Table.Transpose(#"Demoted Headers"),
    #"Promoted Headers" = Table.PromoteHeaders(#"Transposed Table", [PromoteAllScalars=true]),
    #"Renamed Columns" = Table.RenameColumns(#"Promoted Headers",{{"Тип транспорта", "Месяц"}, {"Column2", "Признак суммы"}}),
    #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Renamed Columns", {"Признак суммы", "Месяц"}, "Тип транспорта", "сумма"),
    result = Table.TransformColumns(#"Unpivoted Other Columns", {"Месяц", each Text.Remove(_, digitSymbols)})
in
    result
Power Query - извлечение из текста фамилии и даты последней записи.
 
Протестировал на скорость решения на 200 тысячах строк в каждой из которых от двух до 10 записей. Генератор под спойлером.
Первый мышиный вариант Максима 22 секунды, но 43 тысячи записей вместо 200 тысяч.
Первый не мышиный вариант Максима 30 секунд. Всё как положено 200 тысяч в выводе.
Мышиный вариант тёзки – в общем после 10 минут ожидания – прибил.
Второй вариант artyrH – 57 секунд.
Мой вариант 23 секунды (но берёт только первое максимальное по дате значение).
Но! Если добавить / между «не/принял» и так далее… То ошибки выделения даты (кроме меня).
Скрытый текст
Вставка ячейки со сдвигом вниз, Вставка ячейки со сдвигом вниз
 
Доброе время суток.
А про кросс упомянуть, почему не осмелились?
Возможно ли быстрое перемещение столбцов в Power Query?
 
Ну, и мой вариант. Предполагается, что все файлы лежат в одной папке (в примере запроса лежали "C:\Path\База\"). Все листы с исходными таблицами в этих файлах имеют такое же имя как в примере "Лист1".
Код
let
    dataFolder = "C:\Path\База\",
    cst = Excel.Workbook(File.Contents(dataFolder & "cst.xlsx"), true, true){[Item="Лист1", Kind="Sheet"]}[Data],
    rout_out = Excel.Workbook(File.Contents(dataFolder & "rout out.xlsx"), true, true){[Item="Лист1", Kind="Sheet"]}[Data],
    baseCols = Excel.Workbook(File.Contents(dataFolder & "База.xlsx"), true, true){[Item="Лист1", Kind="Sheet"]}[Data],
    
    cstSetKeyType = Table.TransformColumnTypes(cst, {{"Клиент номер", Text.Type}}),
    rout_outSetKeyType = Table.TransformColumnTypes(rout_out,{{"Номер клиента", type text}}),
    rout_outSetRightName = Table.RenameColumns(rout_outSetKeyType, {"Отдел сбыта", "Отдел Сбыта"}),
    joinRout_out_cst = Table.Join(rout_outSetRightName, {"Номер клиента"}, cstSetKeyType, {"Клиент номер"}, JoinKind.LeftOuter),
    nullBaseColls = Table.FromRows({}, Table.ColumnNames(baseCols)),
    mapBaseToJoinCols = nullBaseColls & joinRout_out_cst,
    result = Table.SelectColumns(mapBaseToJoinCols, Table.ColumnNames(baseCols))
in
    result
Изменено: Андрей VG - 17 Июн 2019 12:23:21
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 260 След.
Наверх