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

Страницы: 1 2 След.
Расчет количества строк в по условию в сводной таблице DAX
 
Цитата
написал:
Не понятно о чем вы говорите? Если вы берете названия групп из СПРАВОЧНИКА, то все считается корректно
StepanWolkoff,Теперь все получилось. Спасибо!  
Расчет количества строк в по условию в сводной таблице DAX
 
Цитата
написал:
Правильно построенная модель - залог успеха. Поэтому данные сначала готовятся правильно, а потом считаются только
StepanWolkoff, Трудно не согласится, спасибо! Но что если добавятся дополнительные группировки? В примере у всех ном. групп отражаются одинаковые значения.
Цитата
написал:
Вроде понял логику расчета, но итоги по филиалам не сходятся. Как получили значение "8"?П.С. запрос в PQ переделал полностью и мера более сложная теперь
Vladimir Ch, Не у одного филиала нет артикулов с темой 5, при этом в активном ассортименте она есть и ее нужно учитывать. Если делать группировку по теме, то это не принципиально т.к. в разрезе тем расчет будет корректный, если оставить только филиалы, то должно быть 8.  
Изменено: ZLAT - 22.09.2022 19:38:11
Расчет количества строк в по условию в сводной таблице DAX
 
Цитата
написал:
ZLAT , а я не понял по какой логике у вас по филиалам получается 8. И почему в активном ассортименте артикул 8 принадлежит теме3,  а в артикулах теме2?
StepanWolkoff, Поправил артикулы, но для решения задачи это не важно.
Цитата
написал:
если правильно понял, то это составной ключ: тема + артикул. Ок, сделал. Но в таком варианте все равно не совпадает с вашими ручными подсчетами
Vladimir Ch, Мои подсчеты корректные, видимо я плохо формулирую задачу. Во вложении сделал пример в PQ.
Изменено: ZLAT - 22.09.2022 15:54:45
Расчет количества строк в по условию в сводной таблице DAX
 
Цитата
написал:
Забавно! А как вы хотите определить, что артикул активный, если столбец с данным признаком вы не загрузили в модель? Обновить запросы нужно. Во-вторых, нужно ну хотя бы какие-нибудь базовые статьи для новичков почитать, как работать с моделями данных. У вас даже связей нет между таблицами.
Vladimir Ch, спасибо, что ответили. В DEX я действительно пока не силен, прошу простить. Но задача другая, обратите внимание на красные ячейки. Нужно, чтобы в мере рассчиталось не количество строк с 1 для артикулов, которые есть в первой таблице, а все строки с 1, которые есть во второй таблице с учетом группировок сводной.
В дальнейшем мне нужно будет рассчитать долю артикулов на складе, относительно артикулов, которые на складе должны быть.
Расчет количества строк в по условию в сводной таблице DAX
 
Добрый день.

Нужно в сводную таблицу при помощи DAX добавить меру с расчетом количества артикулов, входящих в активную матрицу, из другой таблицы с учетом фильтров сводной таблицы. Нужно, чтобы при изменении фильтров в сводной, данные пересчитывались.
Подсчет уникальных значений в сводной таблице
 
Цитата
написал:
можно макросом. Выбираете в диалоговом окне ячейку для выгрузки результата и все   Подразумевается, что таблица с данными расположена в верхнем левом углу листа (А1)
artemkau88, Спасибо, но ожидал решение на DAX, т.к. в рабочем файле собираю несколько показателей внутри одной сводной таблицы.

Цитата
написал:
а зачем Вы в модель грузите, а DAX совсем не используете?
surkenny, я предварительно обрабатываю данные в PQ, а потом нужные поля вывожу в сводную. Поэтому в примере использовал модель. C DAX пока не очень дружу, но планирую погрузиться. В итоге использовал ваш вариант. Спасибо!
Подсчет уникальных значений в сводной таблице
 
Добрый день.

Помогите рассчитать количество уникальных значений в поле сводной таблицы, созданной на основании модели данных. Нужно исключить пустые значения.
Полное заполнение с заполнением в PQ, Объединение одинаковых по структуре таблиц с отличающимися параметрами
 
,  Спасибо! Действительно помогли разобраться.
Полное заполнение с заполнением в PQ, Объединение одинаковых по структуре таблиц с отличающимися параметрами
 
Цитата
написал:
такой ответ т.к. не вижу ситуацию и не вижу второй пример
Извиняюсь, не приложил пример.  
Полное заполнение с заполнением в PQ, Объединение одинаковых по структуре таблиц с отличающимися параметрами
 
, Слова понимаю, а на какие кнопки жать нет. Можете подробнее объяснить или дайте ссылку где прочитать. Спасибо!  
Полное заполнение с заполнением в PQ, Объединение одинаковых по структуре таблиц с отличающимися параметрами
 
Цитата
написал:
Наверное так
Михаил, спасибо! Логику понял, попробую использовать в работе.

Что посоветуете, если немного поменять ситуацию как во втором примере?  
Полное заполнение с заполнением в PQ, Объединение одинаковых по структуре таблиц с отличающимися параметрами
 
Добрый день!

При полном объединении таблиц в PQ из одинаковых по формату таблиц (например, за разные периоды), в списке могут отличаться параметры (например, товарные группы). В этом случае мне приходится создавать дополнительные поля и через if сравнивать значения из первой и второй таблицы, если null, то беру значения из другой таблицы. На мой взгляд не самое элегантное решение, а главное не самое быстрое (много строк, сравниваю столбцы с текстом). Подскажите, как это можно сделать более рационально?    
Изменено: ZLAT - 20.03.2022 17:30:55
В текстах диапазона сделать первую букву заглавной, остальные прописные
 
Спасибо!

Должен был сам догадаться.
Немного поправил код (поменял Ramge на Range и добавил оператор Left:
Код
    Dim aData()    Dim LastRowForecast As Long
    Dim i As Long
     
    LastRowForecast = ...
    aData = Range("AI39:AI" & LastRowForecast).Value
     
    For i = 1 To UBound(aData)
        aData(i, 1) = UCase(Left(aData(i, 1),1)) & LCase(Mid(aData(i, 1), 2))
    Next i
    Range("AI39:AI" & LastRowForecast).Value = aData
   
   
В текстах диапазона сделать первую букву заглавной, остальные прописные
 
Добрый день.

Этот цикл выполняется очень долго, кто подскажет почему?  LastRowForecast  =~ 5000
Код
For X = 39 To LastRowForecast    
    Dim strData As String
    strData = Range("AI" & X).Value
    strData = UCase(Left(strData, 1)) & LCase(Mid(strData, 2))
    Range("AI" & X).Value = strData
Next X
Группировка в VBA, как ускорить работу?
 
Добавил пример. Нужно нажать Пуск => ОК => Выбрать один из каналов сбыта. Строки с остальными каналами сбыта сгруппируются..
На 30 строках трудно оценить скорость работы. Если строк больше 2000, процесс затягивается.
Группировка в VBA, как ускорить работу?
 
А что конкретно интересует, код немаленький?
Группировка в VBA, как ускорить работу?
 
Добрый день.

Написал группировку в VBA, но она отрабатывает очень долго. Можете оценить код, что можно оптимизировать. В исходном массиве 8000 строк и 30 колонок,  в массиве с группировкой примерно 4000 строк.

Код
ReDim arrFullSales(1 To CountOfRowByGroups, 1 To NumberOfMonths) As Double

Q = 1
For X = 1 To CountOfRowByGroups
    For y = Q To CountOfRow
        If arrSalesGroupBySalesChanel(y, 1) = CollSalesGroupBySalesChanel.Item(X) Then
            For Z = 1 To NumberOfMonths
                arrFullSales(X, Z) = arrFullSales(X, Z) + arrFullSalesBasic(y, Z)
            Next Z
        End If
    Next y
    Q = Q + 1
Next X
Сделать кросс-таблицу из плоской таблицы в Power Query
 
Спасибо вам огромное! Все так просто в итоге оказалось, а я перемудрил.  
Сделать кросс-таблицу из плоской таблицы в Power Query
 
Добрый день.

Подскажите, есть простой способ сделать из плоской таблицы кросс-таблицу в Power Query или лучше делать в VBA?
Сейчас делаю два запроса для каждого направления, а потом их сопоставляю. Получается очень затратно по оперативке.
Не удается обновить запрос в Power Query
 
Цитата
Андрей VG написал: Для связывания двух столбцов таблиц требуется, чтобы они были одного типа.
Спасибо, разобрался!
Не удается обновить запрос в Power Query
 
Добрый день.

После изменения типа данных в power query запрос перестает обновляться. Подскажите, с чем связана ошибка?
https://yadi.sk/i/TOmJ-tw6l2MZKA
Создание запроса Power Query из массива VBA
 
Цитата
БМВ написал: так точно делать не надо.  В другой данные передать уже трансформированные, а потом все разом на лист. но точно не по одной ячейке. Конечно память сожрет, но скорость будет выше.
БМВ, Понимаю, что на лист выгружать лучше весь массив сразу, а вот в PQ, PP, или в текстовый файл, как мне кажется, так не получится. Но у меня с VBA не очень, погружаюсь по мере необходимости, наверное я не прав.

Цитата
Андрей VG написал: А вот и гвоздь в вашу идею хранить данные в запросе
Андрей VG, Увидел ограничение, спасибо!

Цитата
PooHkrd написал: За,ем такие извращения?
PooHkrd, Возможно мне не достаточно знаний, но я не знаю как PQ реализовать подобные расчеты. Кроме того в VBA все уже рассчитывается корректно.

Тогда подскажите как правильно решить такую задачу если:
  • Количество строк может быть больше максимально допустимого в Excel.
  • Все вычисления нужно производить внутри файла.
  • В принципе можно отказаться от PQ, можно ограничиться VBA.
Создание запроса Power Query из массива VBA
 
Цитата
artyrH написал:
а почему не хотите сохранить данные в текстовый файл?
artyrH, Xочу, чтобы все было в одном файле, так проще с ним работать.
Файл нужен для моделирования динамики товарных запасов. Пользователь заполняет вводные, затем макрос с учетом вводных рассчитывает динамику запасов, данные о динамике выгружаются в PQ (я этот так вижу) и далее в зависимости от целей они обрабатываются.

Андрей VG, Помогите, пожалуйста, еще раз. Как должен выглядеть цикл который будет заполнять данные в вашем коде? Или это должен быть не цикл?
Цикл который выгружает данные на лист у меня выглядеть так:
Код
H = 2
For x = 2 To CountOfRow
    For y = 2 To DaysOfModeling + 1
         ThisWorkbook.Sheets("Динамика запасов").Cells(H, 1) = arrStockByDay(x, 1)
         ThisWorkbook.Sheets("Динамика запасов").Cells(H, 2) = arrStockByDay(1, y)
         ThisWorkbook.Sheets("Динамика запасов").Cells(H, 3) = arrStockByDay(x, y)
         H = H + 1
    Next
Next
Создание запроса Power Query из массива VBA
 
Андрей, спасибо! Я правильно понял, что лучше сначала выгрузить данные в Power Pivot, а потом проводить необходимые манипуляции в PQ. Если да, то как выгрузить данные из массива в PP?
Не очень понял, что вы имеете в виду под двойным хранилищем.
Создание запроса Power Query из массива VBA
 
Добрый день!

Создал в VBA макрос который обрабатывает входящие данные и создает несколько массивов. Теперь есть желание выгрузить эти массивы в PQ для дальнейшей обработки (сводные, графики, доп. расчеты). Подскажите, как это можно реализовать без выгрузки данных на лист? Предполагается, что будет 4 массива по 1-1,5 млн. строк.
Сокращение времени при поиске значения ячейки в диапазоне
 
Добрый день.

Помогите сократить скорость выполнения макроса. У меня очень посредственные знания VBA. Написал макрос, который должен выгружать в массив уникальные значения (артикулы, наименование и еще 10 параметров) с одного листа (сейчас проверки на уникальность нет, не знаю как ее сделать), подставлять в этот массив объем продаж с другого листа отсортировать данные по двум критериям и вывести их на лист. При наличии в файле 10000 строк скорость выполнения оставляет желать лучшего. Есть ощущение, что у меня в корне неправильная логика и функции которые я использую не подходят для моей задачи. Подскажите на что нужно обратить внимание.  
Распределение между складами
 
Есть один склад на который поступает готовая продукция(ГП)  с производства (распределитель), есть несколько региональных складов. На каждом складе, включая распределитель, свой норматив хранения рассчитанный исходя из спроса на готовую продукцию в данном регионе. Может быть ситуация, когда на региональном складе недостаточно ГП для обеспечения норматива всех филиалов на 100% ,тогда нужно ГП распределить так, чтобы на всех складах после распределения норматив был наполнен на примерно одинаковый процент. Может быть обратная ситуация, когда на распределителе ГП больше, чем нужно для наполнения всех нормативов на 100%, тогда нужно наполнить региональную потребность до 100%, а остальное оставить на распределителе.

В итоге должно получится как показано на закладке "решение" (подобрал результат). Мне нужна формула т.к. распределять таким образом нужно 2000 позиций.  
Распределение между складами
 
Спасибо за помощь и извиняюсь за некорректную формулировку задачи.
Смысл в том, чтобы на всех складах норматив был наполнен примерно одинаково в том числе по строке 6. Есть склады, где норматив наполнен на 100 или более процентов, то на них ничего не распределяется. Если есть излишек, то он должен остаться на складе с которого идет распределение.  
Распределение между складами
 
Кнопка цитирования не для ответа [МОДЕРАТОР]

Все не так просто, нужно в значение из ячейки A6 распределить так, чтобы сумма по колонке D была равна A6 и при этом в колонке Е процент стремился к одинаковому значению. Еще желательно, значение в колонке D сразу округлить))  
Распределение между складами
 
Добрый день!

Нужно решить задачу. Есть несколько складов со своим нормативом хранения. У каждого свои остатки продукции. Нужно распределить остаток одного из складов так, чтобы после распределения процент наполнения норматива стремился к одинаковому значению.    
Страницы: 1 2 След.
Наверх