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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 287 След.
Вычисление процентов в сводной из PP
 
Алексей, большое спасибо!
Вычисление процентов в сводной из PP
 
Доброе время суток.
Алексей, не поделитесь, где это такая штука за документирована?
Код
[Факт]('Таблица1'[Год] = 2018)
Это нечто вроде
Код
CALCULATE([Факт]; 'Таблица1'[Год] = 2018)
или нечто другое?
Цитата
TankSpb написал:
можно как-то расчет вписать?
В принципе, да. Можете тут вариант создания асимметрии вывода посмотреть.
Анализ текста регулярными выражениями (RegExp), поиск по раскладке- русский алфавит не ищет, только принудительно, через |
 
Цитата
Домкрат написал:
я ещё раз повторяю, что ПЕРЕД написанием задания я НЕ ВИДЕЛ случая, когда между цифрой, буквой "X" и ещё одной цифрой нет пробела, уже в ходе тестирования пожжее, увидел эту тему. мне покаятся нужно?
Всё проще - приложить ещё один файл-пример с найденной проблемой, а не пытаться описывать её на пальцах.
Присвоение характеристики для объекта методами DAX
 
Цитата
Vladimir Chebykin написал:
рандомного кол-ва сравниваемых параметров (заброшенных в сводную), тут, наверное, мера не поможет...как мне кажется.
Мне кажется, что всё несколько проще. Вариант.
Анализ текста регулярными выражениями (RegExp), поиск по раскладке- русский алфавит не ищет, только принудительно, через |
 
Цитата
Пытливый написал:
Мой паттерн из строки "без пробела" прекрасно тащит
Коллега, там может быть ещё и не разрывный пробел Alt+0160. Просто ТС не хочет помогать отвечающим, потому и пример такого некорректного поведения и не представляет - он любит, чтобы его уговаривали :)
Присвоение характеристики для объекта методами DAX
 
Доброе время суток
Цитата
Vladimir Chebykin написал:
Если я правильно понял
Владимир, предположу, что ТС хотел, чтобы мера ассиметрично через настройку набора по столбцам выводилось бы в общем итоге по строке артикула - "Базовый", если число месяцев календаря, фильтруемого временной шкалой, равнялось бы числу месяцев артикула, фильтруемого календарём. Иначе выводилось бы "Не базовый".
Изменено: Андрей VG - 19 Ноя 2019 08:44:10
[Power Query] Можно продавать или нет в зависимости от 4x условий
 
Цитата
Murderface_ написал:
т. к. есть другая строка с таким же ID и со статусом <> "Не предлагалось", для которой ответ ДА.
Что противоречит исходной постановке.
Цитата
Murderface_ написал:
4) Если ID несколько и для каждого из них Исключение = 0, а Статус <> "Не предлагалось", то НЕТ, а для остальных ДА
Вы уж исправьте тогда :)
[Power Query] Можно продавать или нет в зависимости от 4x условий
 
Доброе время суток
Цитата
Murderface_ написал:
то тоже будет отличаться от формулы.
Цитата
Murderface_ написал:
3) Если ID несколько и для каждого из них Исключение = 0, а Статус = "Не предлагалось, то для всех ДА
4) Если ID несколько и для каждого из них Исключение = 0, а Статус <> "Не предлагалось", то НЕТ, а для остальных ДА
Тогда не верно поставлены эти условия. Выборка
20191102375498Не предлагалось0НЕТ
20191102375498Клиент не заинтересован0ДА
ID одинаковый, Исключение = 0. Для второй строки "Клиент не заинтересован" <> "Не предлагалось" - должно быть НЕТ, а для первой строки ДА по 4 условию. Где правда?
Изменено: Андрей VG - 18 Ноя 2019 15:17:55
Dax мера PWBI для расчета % от суммы по родительской строке, Расчетная мера для не определнного кол-ва групп иерархии с расчетом % по родительской строке
 
Доброе время суток
Цитата
ogololobov2009 написал:
Если уровней много, как быть?
Использовать формулы Excel для составления меры ;)
как заблокировать ячейку от ввода любых данных кроме времени?
 
Offtop
Цитата
gogy913 написал: А вот дальше я попросил БМВ не убирая моих настроек сделать то что же самое что он сделал.
Право слово, какой-то вы, Михаил, не клиентоориентированный :)
Импорт данных с сайта.
 
Цитата
Игорь написал:
(т.е. из невалидного XML
Игорь, в принципе да, но только то что есть в коде страницы. Но в коде нет например данных по весу. Следовательно ImportXml ничего не вернёт. Судя по всему, это динамически формируемая скриптами после загрузки страница. Скорее всего специально сделано, чтобы не собирали данные.
Power Bi. Как организовать накопление данных с каждым обновлением запроса?, подскажите, есть ли способ хранить в powerbi результаты предыдущего результата запроса, для соединения с текущим.
 
Цитата
Zabubu написал:
, если сервис отдает данные за любой период, но кусками максимум за 5 дней а посмотреть хотим за месяц?
А где документация по тому как получить это?
Макрос на заполнение
 
Offtop
Цитата
Юрий М написал:
по какому условию?
По условию
Цитата
jokerfukc написал:
Выручайте
:D
Power Bi. Как организовать накопление данных с каждым обновлением запроса?, подскажите, есть ли способ хранить в powerbi результаты предыдущего результата запроса, для соединения с текущим.
 
Цитата
Zabubu написал:
бесплатная.
Тогда, увы. Лучше делать инкремент в Excel. В Power BI Desktop можно заморочиться с отключением обновления очередного запроса Power Query, созданием нового с настройкой диапазона условия обновления, а потом объединение через UNION с общей таблицей. Но такие ручные приседания имеют смысл проделывать раз в неделю максимум, а не на ежедневной основе.
Ну, можно ещё покопать в таком направлении :)
Power Bi. Как организовать накопление данных с каждым обновлением запроса?, подскажите, есть ли способ хранить в powerbi результаты предыдущего результата запроса, для соединения с текущим.
 
Доброе время суток.
Используйте Incremental refresh in Power BI
Power Query. Разделение текста пробелом по условию, необходимо разделить слова по условию, где соединяются строчная и прописная буквы и др.: "аА", "а)А"
 
Алексей, спасибо!
PQ, перевернуть строки в столбцы
 
Цитата
OblivionR написал:
Преобразование / столбец сведения * без агрегирования.
Как пример результата без смысла, так решение такое же :)  
Утанцовка исходного файла с сохранением порядка
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    addGlobalId = Table.AddIndexColumn(Source, "gid"),
    addBaseId = Table.AddIndexColumn(Table.Group(addGlobalId, {"where"}, {"temp", each _}, GroupKind.Local), "baseid"),
    restoreBase = Table.ExpandTableColumn(addBaseId, "temp", {"what", "value", "gid"}),
    addLocalId = Table.Combine(Table.Group(restoreBase, {"where", "what"}, {"temp", each Table.AddIndexColumn(_, "loc")})[temp]),
    beforeRowId = Table.Sort(addLocalId,{{"loc", Order.Ascending}, {"where", Order.Ascending}, {"gid", Order.Ascending}}),
    rowId = Table.Group(beforeRowId, {"where", "loc"}, {{"temp", each _}, {"rowId", each List.Min([baseid])}}),
    #"Expanded {0}" = Table.Buffer(Table.ExpandTableColumn(rowId, "temp", {"what", "value"}, {"what", "value"})),
    #"Sorted Rows" = Table.Sort(#"Expanded {0}",{{"rowId", Order.Ascending}, {"loc", Order.Ascending}}),
    result = Table.RemoveColumns(#"Sorted Rows",{"loc"}),
    return = Table.Pivot(#"Expanded {0}", List.Distinct(Source[what]), "what", "value"),
    #"Sorted Rows1" = Table.Sort(return,{{"rowId", Order.Ascending}, {"loc", Order.Ascending}}),
    #"Removed Columns" = Table.RemoveColumns(#"Sorted Rows1",{"loc", "rowId"})
in
    #"Removed Columns"
PQ, перевернуть строки в столбцы
 
Доброе время суток
OblivionR, числа в таблице-результате даны от балды? Решение нужно аналогично-рандомное?
Power Query. Разделение текста пробелом по условию, необходимо разделить слова по условию, где соединяются строчная и прописная буквы и др.: "аА", "а)А"
 
Привет, Алексей
Цитата
PooHkrd написал:
Я уж развесил губу что ваш шаблон и края с областями перелопатит
Я делал строго по постановке задачи
Цитата
ivanka написал:
де можно текст "РеспубликаАдыгея(Адыгея)" преобразовать так: "Республика Адыгея (Адыгея)".Кабардино-БалкарскаяРеспублика to Кабардино-Балкарская Республика.
Если ТС лень заниматься анализом что где не так, то не считаю, что я должен хоть как-то этим заниматься. Кому нужно, тот и анализирует свои данные. Сугубо для вас просто дополняем регулярку
Код
/([а-яё])(?=[А-ЯЁ]|\(|автоном|округ|область|край)/g

Цитата
PooHkrd написал:
И есть ли ограничение на длину строки, которую можно обработать таким образом?
По идее, длина строки не менее чем 2^31 символов.
Цитата
PooHkrd написал:
Кстати, а вы не пробовали скармливать в регулярку только список уникальных, а результат потом джойнить к исходным данным? Может так будет еще быстрее?
Нет, не пробовал, может вечером протестирую. По идее должно быть быстрее.
Цитата
PooHkrd написал:
А если вызывать эту функцию для каждого значения столбца отдельно то будет сильно медленнее?
Наверняка да, вызов для каждого элемента списка Web.Page() не самое дешёвое удовольствие. Но можете протестировать :)
Updated.
Не утерпел с Join на уникальных - в два раза быстрее.
Код
let
    toJsString = (string) => Text.Replace(Text.Replace(Text.Replace(Text.Replace(Text.Replace(Text.Replace(Text.Replace(string, "\", "\\"), "&", "\&"), "'", "\'"), """", "\"""), "#(cr)", "\r"), "#(lf)", "\n"), "#(tab)", "\t"),
    jsReg = (string) => Web.Page("<script>var r =/([а-яё])(?=[А-ЯЁ]|\(|автоном|округ|область|край)/g;var t='" & string & "';document.write(t.replace(r,'$1 '));</script>")[Data]{0}[Children]{0}[Children]{1}[Text]{0},
    Source = Csv.Document(File.Contents("C:\path\data.csv"),[Delimiter=",", Columns=6, Encoding=65001, QuoteStyle=QuoteStyle.None]),
    setHead = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
    uniques = List.Distinct(setHead[subject]),
    replaced = Text.Split(jsReg(toJsString(Text.Combine(uniques, "|"))), "|"),
    pairs = Table.FromRows(List.Zip({uniques, replaced}), {"link", "Требуемое"}),
    result = Table.Join(setHead, {"subject"}, pairs, {"link"}),
    #"Removed Columns" = Table.RemoveColumns(result,{"subject", "link"}),
    #"Reordered Columns" = Table.ReorderColumns(#"Removed Columns",{"Требуемое", "t1", "fond", "salary", "monthyear", "year"}),
    #"Renamed Columns" = Table.RenameColumns(#"Reordered Columns",{{"Требуемое", "subject"}})
in
    #"Renamed Columns"

На рабочей машине 994000 строк загрузилось за 11 секунд (автоподбор ширины столбца отключен).
Изменено: Андрей VG - 15 Ноя 2019 10:45:31
Импорт данных с сайта.
 
Доброе время суток
Цитата
AVERS написал:
Например
Не удачный пример, нет там тэга DIV с атрибутом class="product-details-tables-holder sel-characteristics-table". И потом, вы уверены, что эта страница удовлетворяет стандарту XML?
Например кусок Html кода страницы
Цитата
<span class="header-nav-item-text">Телевизоры, <br><nobr>аудио, Hi-Fi</nobr></span>
Изменено: Андрей VG - 15 Ноя 2019 09:30:15
поставить пробел между текстом и цифрой с определённой буквой, в конце теста иногда встречаются прикреплённые цифры, их нужно отделить
 
Цитата
Kuzmich написал:
только паттерн надо поменять
Спасибо поправил. Просто сделал на всякий случай и для кириллической х, и как водится забыл скопировать код на русской раскладке.
Power Query. Разделение текста пробелом по условию, необходимо разделить слова по условию, где соединяются строчная и прописная буквы и др.: "аА", "а)А"
 
Доброе время суток.
Тёзка, а почему не на регулярках? Размножил исходный файл до 900000 строк получилось почти в четыре раза быстрее ;)
Код
let
    toJsString = (string) => Text.Replace(Text.Replace(Text.Replace(Text.Replace(Text.Replace(Text.Replace(Text.Replace(string, "\", "\\"), "&", "\&"), "'", "\'"), """", "\"""), "#(cr)", "\r"), "#(lf)", "\n"), "#(tab)", "\t"),
    jsReg = (string) => Web.Page("<script>var r =/([а-яё])(?=[А-ЯЁ]|\()/g;var t='" & string & "';document.write(t.replace(r,'$1 '));</script>")[Data]{0}[Children]{0}[Children]{1}[Text]{0},
    Source = Csv.Document(File.Contents("C:\path\data.csv"),[Delimiter=",", Columns=6, Encoding=65001, QuoteStyle=QuoteStyle.None]),
    setHead = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
    cols = Table.ToColumns(setHead),
    maker = Text.Split(jsReg(toJsString(Text.Combine(cols{0}, "|"))), "|"),
    test = {maker} & List.Range(cols, 1),
    result = Table.FromColumns(test, Table.ColumnNames(setHead))
in
    result
Изменено: Андрей VG - 14 Ноя 2019 22:28:35
поставить пробел между текстом и цифрой с определённой буквой, в конце теста иногда встречаются прикреплённые цифры, их нужно отделить
 
Доброе время суток
Цитата
Kuzmich написал:
Left(cell, .Execute(cell)(0).FirstIndex + 1) & " " & Mid(cell, .Execute(cell)(0).FirstIndex + 2)
Зачем же так усложнять-то?
Код
Function iTowar(ByVal sText As String)
 With CreateObject("VBScript.RegExp")
     .IgnoreCase = True
     .Pattern = "([A-Z])(\d{1,2})(?=\s?[хx])"
     iTowar = .Replace(sText, "$1 $2")
 End With
End Function
Изменено: Андрей VG - 14 Ноя 2019 22:30:11
Поменять формулы в фигурах
 
Доброе время суток
Формулы можно поискать так
Код
Public Sub test()
    Dim pShape As Shape
    For Each pShape In ActiveSheet.Shapes
        Debug.Print pShape.OLEFormat.Object.Formula
    Next
End Sub
Расчеты в PP по заранее прописаным формулам
 
Доброе время суток
Цитата
TankSpb написал:
Как рассчитать конкретный показатель в PQ мы разобрали, но как быть если таких показателей много и формулы различной сложности и возможность быстрого редактирования хотелось бы
Цитата
TankSpb написал:
делать функцию с использованием Application.Evaluate
Expression.Evaluate() In Power Query/M в помощь.
Изменено: Андрей VG - 13 Ноя 2019 15:29:57
Сортировка списка с подпунктами в Power Query
 
Цитата
PooHkrd написал:
Можно,
Привет, Алексей
А для такого набора книг
1.1
1.10.1
10.10.1
2.1
20.1
5.1
Как выполнить правильную сортировку?
1.1
1.10.1
2.1
5.1
10.10.1
20.1
Создание столбца по условию PQ
 
Цитата
Floydmayz написал:
Я использовал конструкцию FixedLocalNow чтобы дни считались от текущего,
Для того чтобы понять зачем FixedLocalNow - вы должны и в названии темы в посте постановки задачи описать из чего, что и как хотите получить, а не описывать как у вас не получается нечто неописанное.
Предложенное решение дополняет строки агрегированных данных по дням агрегированными данными за предыдущий день (предшествующий, если это вторник - суббота и предшествующая пятница для воскресенья и понедельника).
Если вы хотите фильтровать исходные данные за предыдущий день (с учётом определения выше), то зачем добавлять столбцы в исходную таблицу да ещё с условиями? Достаточно вычислить дату этого предшествующего дня и задать его как параметр в Table.SelectRows
Создание столбца по условию PQ
 
Доброе время суток.
Цитата
Floydmayz написал:
Мои попытки
Вы настолько застенчивы, что не можете прочитать правила? И это настолько сложно представить результат по входным данным?
Вариант
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    aggregate = Table.Group(Source, {"Создан"}, {"Заявок", each List.Sum([Заявок]), Number.Type}),
    addDayOfWeekNumber = Table.AddColumn(aggregate,  "DayOfWeek", each Date.DayOfWeek([Создан], Day.Saturday), Int64.Type),
    addPrevJoinDate = Table.AddColumn(addDayOfWeekNumber, "prevJoinDate", each Date.AddDays([Создан], (if [DayOfWeek] < 3 then -[DayOfWeek] else 0) - 1)),
    renameColumnForJoin = Table.RenameColumns(aggregate, {{"Создан", "Ранее создан"}, {"Заявок", "Ранее заявок"}}),
    result = Table.Join(addPrevJoinDate, {"prevJoinDate"}, renameColumnForJoin, {"Ранее создан"}, JoinKind.LeftOuter),
    #"Sorted Rows" = Table.Sort(result,{{"Создан", Order.Ascending}}),
    #"Removed Columns" = Table.RemoveColumns(#"Sorted Rows",{"DayOfWeek", "prevJoinDate"}),
    #"Changed Type" = Table.TransformColumnTypes(#"Removed Columns",{{"Создан", type date}, {"Ранее создан", type date}})
in
    #"Changed Type"
Изменено: Андрей VG - 12 Ноя 2019 22:26:47
Упорядочить на временной оси разные события, Автоматич. Создать в столбчатом формате временную ось и отразить на ней массив исходных событий
 
Цитата
БМВ написал:
Обратите внимание на скобки!
Цитата
Товарищ Вит написал:
, а может достаточно мне установить эту самую Power Query и (как говорит Ник. Павлов) чудным образом расшифруется Ваша версия ???
Если вы за чудесами, то тогда вам лучше было бы поступать в Хогвардс :)  В Power Query обычный код. Но PQ любят пытливые ручки, так как большую часть того кода можно набрать простым мышкоклацанием. Сейчас, затихло, а с год назад было негласное соревнование - кто решит задачу только с помощью мышки :)  (я в число участников не входил). Возьмите у Павллова книгу, да прочитайте (только советую разобраться, а будет ли у вас работать Power Query - вдруг у вас 2007 Excel или вообще маководная версия?)
из столбца A выбираются 10 наибольших значений и из соответствующих этим значениям из столбца B выбирается среднее, извините за хамство но прошу уже готовое решение
 
Доброе время суток
Цитата
distril написал:
или я делаю что нибудь не так,
Да
Цитата
artyrH написал:
массивная
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 287 След.
Наверх