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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 299 След.
Не активность области, в диспетчере имён при редактировании.
 
Доброе время суток.
Никак. Почитайте обсуждение Изменить уровень расположения именованного диапазона с Worksheet на Workbook
Разделить списки производителей и моделей на отдельные наименования и отобрать только реально существующие их пары
 
Цитата
vikttur написал:
Предложите название темы
Отдуваться следовательно мне? :)  Вариант
Как разделить введённые каждый в свою ячейку списки производителей и моделей на отдельные наименования и отобрать только реально существующие их пары?
Объединение последовательных чисел в диапазон
 
Доброе время суток
Цитата
БМВ написал:
зато вы знаете что такое снимок экрана.
Привет, Михаил.
Может ТС за одно и FineReader осваивает? Поддержу.
Сравнение и нахождение общего внутри ячеек., возможно ли
 
Доброе время суток
Цитата
Antonio0608 написал:
то искомое значение не всегда меняется. то работает то нет.
Можно получить пример такого поведения и, что самое важное, определение искомого значения?
Разделить списки производителей и моделей на отдельные наименования и отобрать только реально существующие их пары
 
Цитата
abc1 написал:
хотел бы увидеть решение в PQ
Вариант. Таблица на листе Sheet1 имеет имя dataBody, на листе Лист1 makeModels
Код
let
    dataBody = Excel.CurrentWorkbook(){[Name="dataBody"]}[Content],
    typedDataBody = Table.TransformColumnTypes(dataBody, {{"SKU", type text}, {"EAN-Code", type text}, {"Category", type text}, {"description", type text}, {"Make", type text}, {"Model", type text}, {"Year", type text}, {"EUR", Currency.Type}}),
    defineMakeModels = Table.AddColumn(typedDataBody, "temp", each
        [
            makers = List.Transform(Text.Split([Make], "/"), each Text.Lower(Text.Trim(_))),
            models = List.Transform(Text.Split([Model], ","), each Text.Lower(Text.Trim(_))),
            toTable = Table.Join(Table.FromColumns({makers}, {"makeKey"}), {}, Table.FromColumns({models}, {"modelKey"}), {})
        ][toTable]
    ),
    expandDataBody = Table.ExpandTableColumn(defineMakeModels, "temp", {"makeKey", "modelKey"}),
    makeModels = Excel.CurrentWorkbook(){[Name="makeModels"]}[Content],
    typedMakeModels = Table.TransformColumnTypes(makeModels,{{"производитель", type text}, {"модель", type text}}),
    addMakeKey = Table.AddColumn(typedMakeModels, "makeKey", each Text.Lower(Text.Trim([производитель]))),
    addModelKey = Table.AddColumn(addMakeKey, "modelKey", each Text.Lower(Text.Trim([модель]))),
    result = Table.Join(expandDataBody, {"makeKey", "modelKey"}, addModelKey, {"makeKey", "modelKey"}, JoinKind.Inner),
    #"Removed Columns" = Table.RemoveColumns(result,{"makeKey", "modelKey"})
in
    #"Removed Columns"

P. S. Предполагается, что в таблице makeModels есть все модели всех производителей, которые определены в dataBody. В противном случае будут отобраны только те, которые совпадают.
Разделить списки производителей и моделей на отдельные наименования и отобрать только реально существующие их пары
 
Правильно ли я понимаю, что таблицы пар производитель - модель не будет? Иначе эту задачу можно было бы решить и в Power Query и в VBA. А может быть медведь и формулами бы осилил :)
Power Query. Разделить строки на соответствующие столбцы., Разделить строки на столбцы. В столбце хранится информация, которая должна быть разбита на разные столбцы.
 
Цитата
Darkhan написал:
сразу в виде кода начали писать
Да
Цитата
Darkhan написал:
Если можно кнопкой, покажите как
Использую на примитивных очевидных операциях - может мышиным хардкодом и быстрее, только это отучает думать :)
Расчет платежей по кредиту в Power Query/Power Pivot
 
Цитата
Student64 написал:
где можно почитать теорию по приему
Например, Генератор произвольных списков в Power Query и Power BI, Power Query: как перестать бояться функционального программирования и начать работать в расширенном редакторе запросов - от двух зубров этого дела: Максима Зеленского и Сергея Лосева. Легко гуглится и яндекскится :)
Power Query. Разделить строки на соответствующие столбцы., Разделить строки на столбцы. В столбце хранится информация, которая должна быть разбита на разные столбцы.
 
Вариант
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    removeNulls = Table.SelectRows(Source, each ([Продажи] <> null)),
    addIds = Table.AddIndexColumn(removeNulls, "id"),
    getDataStart = Table.SelectRows(addIds, each [Сумма] <> null){0}[id] - 1,
    defineDataGroups = Table.AddColumn(Table.SelectRows(addIds, each [id] >= getDataStart), "group", each Number.IntegerDivide([id] - getDataStart, 3)),
    maker = Table.Group(defineDataGroups, {"group"}, {"temp", each [
        Категория = _{0}[Продажи],
        Товар = _{1}[Продажи],
        Бренд = Text.BeforeDelimiter(_{1}[Продажи], " "),
        Период = Text.Replace(_{2}[Продажи], """", ""),
        Сумма = _{1}[Сумма],
        Количество = _{1}[Количество]
    ]})
in
    Table.FromRecords(maker[temp])
Power Query. Разделить строки на соответствующие столбцы., Разделить строки на столбцы. В столбце хранится информация, которая должна быть разбита на разные столбцы.
 
Доброе время суток
Какое правило вы использовали для определения Бренда?
Собственно информационных данных всегда только 4 строк (от категории к товару к пустой строке и некоторой дате)?
Расчет платежей по кредиту в Power Query/Power Pivot
 
Вариант для подключения (Таблица1 на диапазоне A3:D12).
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    addMonthPayment = Table.AddColumn(Source, "Платёж в месяц", each ([Ставка] / 12 *Number.Power(1 + [Ставка] / 12, [#"Срок, мес"])) / (Number.Power(1 + [Ставка] / 12, [#"Срок, мес"]) - 1) * [Сумма]),
    addPeriodInfo = Table.AddColumn(addMonthPayment, "info", (rec) =>
    Table.FromRecords(
        List.Generate(
            () => [i = 1, s = rec[Сумма], p = s * rec[Ставка] / 12, b = rec[#"Платёж в месяц"] - p],
            each [i] <= rec[#"Срок, мес"],
            each [i = [i] + 1, s = [s] - [b], p = s * rec[Ставка] / 12, b = rec[#"Платёж в месяц"] - p],
            each [[i], [s], [p], [b]]
        )
    )),
    #"Expanded {0}" = Table.ExpandTableColumn(addPeriodInfo, "info", {"i", "s", "p", "b"}, {"№ месяца", "Остаток", "Проценты", "Погашение"}),
    #"Changed Type" = Table.TransformColumnTypes(#"Expanded {0}",{{"№ слелки", type text}, {"Срок, мес", Int64.Type}, {"№ месяца", Int64.Type}, {"Сумма", type number}, {"Ставка", Percentage.Type}, {"Платёж в месяц", type number}, {"Остаток", type number}, {"Проценты", type number}, {"Погашение", type number}})
in
    #"Changed Type"

Далее по подключению создаём сводную для вывода в требуемом виде
Сравнение подключенных таблиц power query
 
Цитата
Ermakov_dm написал:
А то мне еще 9 поставщиков добавить надо
А каков в таком выводе практический смысл? Вы потом будете глазами пробегать, что сравнить их между собою?! Может всё же продумать, что вы на самом деле хотите сделать с этими десятью таблицами и описать вопросом (может быть и несколькими темами)?
Ответ на вопрос в личке - да это написанный руками код, кроме последних двух шагов.
Расчет платежей по кредиту в Power Query/Power Pivot
 
Доброе время суток
Цитата
qwerty64 написал:
но хотелось попробовать перейти на power query/power pivot
Power Query - это ETL инструмент. В нём нет функций ПЛТ, ПРПЛТ. Если вы представите алгоритм расчёта и пример вывода результата для нескольких
Цитата
qwerty64 написал:
На входе есть сумма кредита, ставка, срок
, то можно подумать.
Не удается обновить запрос в Power Query
 
Доброе время суток.
Цитата
ZLAT написал:
с чем связана ошибка?
Указанный столбец в сообщении об ошибке имеет связь со столбцом в другой таблице (relationship). Для связывания двух столбцов таблиц требуется, чтобы они были одного типа. Скорее всего, тот тип, который вы задали в случае
Цитата
ZLAT написал:
изменения типа
не соответствует типу столбца другой таблицы.
Сравнение подключенных таблиц power query
 
Доброе время суток
Цитата
Ermakov_dm написал:
как сделать "сводную с этих подключений" лист sum.
Как-то так
Код
let
    fn = (source, prefix) => 
    let
        typed = Table.SelectColumns(source, {"Barcode", "Name", "Price", "Available"}) ,
        prefixed = Table.PrefixColumns(typed, prefix)
    in
        [source = prefixed, joinCols = List.Range(Table.ColumnNames(prefixed), 0, 2)],
    cfo = fn(Excel.CurrentWorkbook(){[Name="cfo_group_ru"]}[Content], "cfo"),
    toy = fn(Excel.CurrentWorkbook(){[Name="toymart_ru"]}[Content], "toy"),
    
    join = Table.Join(cfo[source], cfo[joinCols], toy[source], toy[joinCols], JoinKind.FullOuter),
    setName = Table.AddColumn(join, "Name", each if [#"cfo.Name"] = null then [#"toy.Name"] else [#"cfo.Name"]),
    setBarcode = Table.AddColumn(setName, "Barcode", each if [#"cfo.Barcode"] = null then [#"toy.Barcode"] else [#"cfo.Barcode"]),
    #"Removed Columns" = Table.RemoveColumns(setBarcode,{"cfo.Barcode", "cfo.Name", "toy.Barcode", "toy.Name"}),
    #"Reordered Columns" = Table.ReorderColumns(#"Removed Columns",{"Name", "Barcode", "cfo.Price", "cfo.Available", "toy.Price", "toy.Available"})
in
    #"Reordered Columns"

Только между таблицами есть пересечения только по Barcode, но для равных Barcode не совпадают названия Name. Составлено именно так, как указано на листе Sum. Думаю, поймёте принцип - сможете сделать как надо.
Сводная с отображением уникальных значений из нескольких столбцов
 
Цитата
abc1 написал:
а Вы не знаете как отменить сортировку от А до Я в значениях Названий строк?
увы, ваш вопрос не по теме топика. Просто создайте новую тему.
Сводная с отображением уникальных значений из нескольких столбцов
 
Доброе время суток.
Вариант
Поиск в диапазоне повторяющихся значений
 
Цитата
Norton Virt написал:
нужно промотать 1000 строк
зачем? А фильтр по цвету тогда зачем?
Если выбрать значение необходимо прокомментировать, иначе не сохранить (макрос)
 
Доброе время суток.
пжл
Поиск в диапазоне повторяющихся значений
 
Доброе время суток
Цитата
Norton Virt написал:
Нужна ячейка-индикатор
Может условным форматированием подсвечивать дубли?
Разделение текста в ячейке на строки по абзацу со сведением данных
 
Доброе время суток
Цитата
Regi27 написал:
Реально ли это реализовать, максимально исключив ручные корректировки документа?
Да, вполне. С помощью VBA или Power Query.
PQ Замена повторения в последовательности
 
Цитата
Mirdv написал:
это надо делать в шаге "сгрупированные строки"
Да, именно в этом шаге.
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    grouped = Table.Group(Source, {"Последовательность"}, {{"temp", 
        each Table.AddColumn(Table.AddIndexColumn(_, "id", 0), "Последовательность2", each [Последовательность] + [id]),
        Table.Type
    }}, GroupKind.Local),
    return = Table.ExpandTableColumn(grouped, "temp", {"Последовательность2"})
in
    return
Динамический путь запроса в Power Query
 
Цитата
Simvol написал:
Expression.Error: Столбец "Data" таблицы не найден.
А приложить тот самый пример и создать тему именно под разбор ошибки? Не находите, что это было бы проще? Разбирайте пример.
Динамический путь запроса в Power Query
 
Доброе время суток
Цитата
Simvol написал:
есть возможность
Вы не поверите, но достаточно вбить название темы в поисковую строку браузера, чтобы найти ОТНОСИТЕЛЬНЫЙ ПУТЬ К ДАННЫМ POWERQUERY
Успехов.
Добавить строки при совпадении содержимого ячеек в колоноках
 
Доброе время суток.
Версия на Power Query
Одинаковая шапка на всех листах книги
 
Доброе время суток
Цитата
Dizeloid написал:
своего рода меню-навигация по прайсу
Не проще ли тогда сделать свою собственную для книги вкладку на Ribbon?
Отобразить в отдельном столбце пропущенные числа
 
Доброе время суток
Цитата
Wiss написал:
А в Вашем сборнике анекдотов анекдоты про разбитое корыто есть?
В этом сборнике чисел http://neostar.zp.ua/chisla.xls есть число 1.txt  :D  ТС любит посмеяться...
Ленивый вариант макроса
Код
Public Sub GetNonExistedNumbers()
    Dim lRow As Long, vData() As Variant
    Dim vOut() As Long, i As Long
    Dim vCheck() As Long, pSheet As Worksheet
    Dim vMin As Long, vMax As Long
    Set pSheet = ActiveSheet
    lRow = pSheet.Cells(pSheet.Rows.Count, 1).End(xlUp).Row
    vData = pSheet.Range(pSheet.Cells(1, 1), pSheet.Cells(lRow, 1)).Value
    vMin = Application.Min(vData)
    vMax = Application.Max(vData)
    ReDim vCheck(vMin To vMax)
    For i = 1 To UBound(vData)
        vCheck(vData(i, 1)) = 1
    Next
    ReDim vOut(1 To UBound(vData), 1 To 1)
    lRow = 0
    For i = vMin To vMax
        If vCheck(i) = 0 Then
            lRow = lRow + 1
            vOut(lRow, 1) = i
        End If
    Next
    Set pSheet = ActiveWorkbook.Worksheets.Add
    pSheet.Cells(1, 1).Resize(lRow, 1).Value = vOut
End Sub
Изменено: Андрей VG - 23 Янв 2020 16:58:39
Разделить списки производителей и моделей на отдельные наименования и отобрать только реально существующие их пары
 
Цитата
arkadiinovikov написал:
в публичное уничижение за несоблюдение правил.
Приведите пример того, что является унижением?
Цитата
arkadiinovikov написал:
И Вы тут же его обвиняете что он просто "хочет формулу, которая всё умеет".
Указываю на то, что ТС не продумал логическое решение задачи. Excel он может и не знать - на форуме с этим помогут, а вот построить цепочку решения - это задача самого ТС - для этого он учился перед тем как выйти во взрослую жизнь.
Вы же не предложили ему никакого решения, а занялись в теме ровно нем же :)
Разделить списки производителей и моделей на отдельные наименования и отобрать только реально существующие их пары
 
Доброе время суток
Цитата
arkadiinovikov написал:
нельзя, т.к. невозможно установить соответствие.
Ну, почему же? Достаточно составить таблицу модельного ряда фирм и по ней фильтровать развёртку двух столбцов. Просто ТС ищет такую интеллектуальную формулу, которая это знает и умеет :)
PQ Замена повторения в последовательности
 
Цитата
Mirdv написал:
уловил алгоритм
Нет, не уловили. Вы разобрали решение, а не алгоритм. Прошу обратить внимание, что это частное решение. Допустимо только два одинаковых числа в последовательности. Лучше делать чуть по другому. Сразу выполнить локальную группировку. Если число строк в таблице подгруппы равно 1, то без изменений, а если больше, то то прибавляем индекс, начинающийся от 0
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 299 След.
Наверх