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

Страницы: 1 2 След.
Рекурсия в расчётах
 
Решение задачи:
Запрос
let
   Source = Table1,
   #"Replaced Value" = Table.ReplaceValue(Source,null,0,Replacer.ReplaceValue,{"Поступление Эскроу", "Кредит"}),
   BuffValuesEscrow = List.Buffer ( #"Replaced Value"[Поступление Эскроу] ),
   BuffValuesCredit = List.Buffer ( #"Replaced Value"[Кредит] ),
   RunningTotal =
       List.Generate (
           () => [ RT_Credit = BuffValuesCredit{0}, RT_Escrow = BuffValuesEscrow{0}, RowIndex = 0 ],
           each [RowIndex] < List.Count(BuffValuesCredit),
           each [RT_Escrow = List.Sum({[RT_Escrow], BuffValuesEscrow{[RowIndex] + 1}}),  RT_Credit = List.Sum( { [RT_Credit], BuffValuesCredit{[RowIndex]+1} + [RT_Credit] * Rate([RT_Escrow] / [RT_Credit]) } ), RowIndex = [RowIndex] + 1 ],
           each [RT_Credit] ),
   #"Combined Table + RT" =
     Table.FromColumns(
       Table.ToColumns( #"Replaced Value" )  
          & { Value.ReplaceType( RunningTotal, type {Double.Type}) } ,
       Table.ColumnNames( #"Replaced Value" ) & {"Накопленный кредит + Проценты"} )
in
   #"Combined Table + RT"

Дополнительная функция Rate
(Z) => if Z <= 0.2
        then 0.05
        else if Z <= 0.8
             then 0.025
             else if Z <= 1
                  then 0.01
                  else 0
Изменено: Сергей Шедов - 02.12.2024 14:26:49
Рекурсия в расчётах
 
Подскажите, что дальше делать с List.Generate? Не понимаю, как проводить расчёт. Думал на примере факториала рассчитать рекурсию, но не знаю как это делать...
Рекурсия в расчётах
 
Коллеги, добрый день!

Столкнулся со сложной (для меня) задачей расчёта начисленных процентов.

В примере рассчитывается накопленные величины поступлений и полученных кредитов. От отношения этих показателей (покрытия) зависит ставка кредита, на основании которой в свою очередь рассчитывается начисленный процент. Проблема в том, что в следующем месяце начисленный процент добавляется к накопленному кредиты и далее всё повторяется. В примере специально делаю расчёт в одном столбце "Накопленный кредит + Проценты" (без ссылки на последующие  столбцы).

Для расчёта накопленного кредита и процентов необходимо знать эту величину в прошлом месяце. Кажется, что здесь классическая рекурсия. Но не знаю, как подойти к ней в Power Query. Или можно сделать такой расчёт в DAX?

Помогите, пожалуйста. Направьте на путь истинный.

Спасибо!
Динамический выбор данных из сводной таблицы
 
Файл - пример
Динамический выбор данных из сводной таблицы
 
Думаю сделать свою функцию, в которой смогу настроить необходимые параметры.  
 
Вопрос - Как сделать на vba запрос на получение данных из сводной таблицы?  
Много пересмотрел тем по сводным таблицам. Не нашёл...  
Помогите, пожалуйста!
удалить все гиперссылки
 
Выделяем весь лист -> правая кнопка -> удалить гиперссылки
Динамический выбор данных из сводной таблицы
 
Уважаемые, друзья!  
 
Столкнулся со следующей проблемой, которую никак не могу решить.  
Есть сводная таблица. Из неё необходимо динамически по неопределённому набору параметров вытягивать данные.  
Запрос может быть таким:  
ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ("Выручка";$A$3;"Направление ";"Мойка")  
 
Либо таким:  
ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ("Выручка";$A$3;"Станция";"Ст - Бухарестская 16")  
 
Либо сразу по двум параметрам:  
ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ("Выручка";$A$3;"Направление ";"Мойка";"Станция";"Ст - Бухарестская 16")  
 
Пытаюсь это сделать с помощью функции двссыл - не удаётся.  
 
Использовать формулы выбор очень не хочется, слишком большая формула получается, что некрасиво.  
 
Вообще возможно составлять запросы к сводной таблице?  
 
Спасибо за помощь!
Улучшение функции ВПР
 
для этой формулы не нужно строить хитрую таблицу:  
A2 B2  
A3 B3  
A4 B4  
A5 B5  
A6 B6  
 
Нужны ссылки на начало и конец диапазона.
Не работает специальная вставка.
 
Как можно оставить значения, если вы их все затираете формулами из листа1?
Улучшение функции ВПР
 
Например,  
 
=ВПР("Киви";ДВССЫЛ(J2&":"&J6);2;ЛОЖЬ)
Беседка сводников, или вопросы по сводным таблицам.
 
В продолжение.  
 
На листе есть две сводные таблицы, вытаскивающие разные данные из одной и той же таблицы.  
Необходимо при выборе в фильтре параметров одной сводной таблице (кол-во абонентов), автоматически обновлять фильтр в другой таблице (начисления). На основе этих таблиц вычисляются начисления на одного абонента.  
 
Нашёл пост на похожую тему, в которой The_Prist предложил макрос. Немного его изменил. Вариант работает, если в фильтре не выбран параметр "Выделить несколько элементов". Как я понял такой вариант актуален для EX 2003.  
 
Подскажите, пожалуйста, как модифицировать макрос.  
 
Текст макроса:  
Private Sub Workbook_SheetPivotTableUpdate(ByVal Sh As Object, ByVal Target As PivotTable)  
   Dim sCurPage As String  
   Application.EnableEvents = False  
 
   sCurPage1 = Target.PivotFields("Регион").CurrentPage  
   sCurPage2 = Target.PivotFields("Сегмент").CurrentPage  
   sCurPage3 = Target.PivotFields("Группа ТП").CurrentPage  
 
 
 
   ActiveSheet.PivotTables("СводнаяТаблица2").PivotFields("Регион").CurrentPage = sCurPage1  
   ActiveSheet.PivotTables("СводнаяТаблица2").PivotFields("Сегмент").CurrentPage = sCurPage2  
   ActiveSheet.PivotTables("СводнаяТаблица2").PivotFields("Группа ТП").CurrentPage = sCurPage3  
 
   Application.EnableEvents = True  
     
End Sub  
 
Спасибо!
Беседка сводников, или вопросы по сводным таблицам.
 
Придумал, как решить эту проблему. Буду менять исходные данные.  
Значения информационного столбца у меня меня выбираются с помощью обычного выпадающего списка.  
 
В примере в сводной таблице можно выбирать и информативные столбцы.
Беседка сводников, или вопросы по сводным таблицам.
 
Подскажите, пожалуйста, возможно в сводной таблице в качестве фильтра выбирать столбцы. Т.е. есть таблица с некоторыми показателями по строкам, по столбцам названия месяцев.  
Нужно создать сводную таблицу, в которой можно выбирать фильтром месяц.  
 
Пример условный. Нужно понять, как это делать.  
 
Спасибо!
Пример как присвоить Ячеейке_имя_Листа
 
В яндексе нашёл этот пост... +)  
 
Известная проблемы выбора между формулами и VB. В данном случае два решения эквивалентны. Написанная мною формула обновляется при переименовании листа.
Пример как присвоить Ячеейке_имя_Листа
 
точнее  
 
=ПСТР(ЯЧЕЙКА("ИМЯФАЙЛА";A1);НАЙТИ("*";ПОДСТАВИТЬ(ЯЧЕЙКА("ИМЯФАЙЛА";A1);"]";"*";ДЛСТР(ЯЧЕЙКА("ИМЯФАЙЛА";A1))-ДЛСТР(ПОДСТАВИТЬ(ЯЧЕЙКА("ИМЯФАЙЛА";A1);"]";""))))+1;ДЛСТР(ЯЧЕЙКА("ИМЯФАЙЛА";A1)))
Пример как присвоить Ячеейке_имя_Листа
 
Будет ошибка в случае, если в названии папок присутствует символ "]". Поэтому предлагаю использовать формулу из Уокенбаха  
=ПСТР(ЯЧЕЙКА("ИМЯФАЙЛА";A1);НАЙТИ("*";ПОДСТАВИТЬ(ЯЧЕЙКА("ИМЯФАЙЛА";A1);"]";"*";ДЛСТР(F5)-ДЛСТР(ПОДСТАВИТЬ(ЯЧЕЙКА("ИМЯФАЙЛА";A1);"]";""))))+1;ДЛСТР(ЯЧЕЙКА("ИМЯФАЙЛА";A1)))
Быстрое копирование только значений
 
можно пользоваться след. сочетанием:  
ctrl+alt+v
Облегчить файл
 
{quote}{login=Palex}{date=10.08.2010 04:28}{thema=}{post}Sergey S., а если есть общий доступ - как они со сводными таблицами работают?{/post}{/quote}  
 
Разве нельзя в общем доступе работать со сводными таблицами?  
Сейчас только попробовал, проблем не обнаружил.
Облегчить файл
 
К файлу случаем нет общего доступа?  
 
Файл однозначно нужно делить. Потом по порядку обновляем связи.
автомасштаб
 
изменить я конечно же знаю как.    
Проблема в том, я выбираю из выпадающего списка месяц, и, соответственно, строится график. Не могу я каждый раз менять масштаб. Фишка в том, что только в июне у меня проблемы с автомасштабированием.  
 
В примере я взял два месяца, чтобы разобраться почему появилась проблема с масштабом.
автомасштаб
 
Подскажите, пожалуйста, по какому принципу эксель выбирает масштаб в диаграммах.  
В файле два одинаковых графика с разным масштаб. Не устраивает график с масштабом от 0 до 70%.
висит при открытии
 
Прокрутка не работает, потому что какая-то область закреплена. Отменить закрепление, всё будет "ОК".
висит при открытии
 
Попробуй отменить Общий доступ к книге, сохранить.  
А окошко об обновлении стандартное. Обычно при открытии жмут "Не обновлять".
Как сравнить таблицы?
 
{quote}{login=Вано}{date=18.06.2010 12:14}{thema=Как сравнить таблицы?}{post}Подскажите пожалуйста, как найти разницу в данных между двумя таблицами. Первая таблица находится в листе1, вторая-в листе2(в свое время была копией таблицы с листа1, но в последующем в нее были внесены изменения).{/post}{/quote}  
 
Можно воспользоваться программой, которую можно спокойно найти в яндексе.
подскажите как закрасить определенные ячейки в excel
 
я бы использовал в условном форматировании  
=ЕСЛИ(ЕОШ(ПОИСК(D1;A1));ЛОЖЬ;ИСТИНА)  
 
так понятней...
Посчитать для строки разницу в заголовке между 1-ым и последним значениями.
 
пожалуйста
Посчитать для строки разницу в заголовке между 1-ым и последним значениями.
 
{quote}{login=The_Prist}{date=08.06.2010 04:06}{thema=}{post}ПОИСКПОЗ(ИСТИНА;$B5:$AF5<>0;0)  
 
$B5:$AF5<>0 - создается массив, где в качестве элементов булевы значения - ИСТИНА и ЛОЖЬ. И в этом массиве мы ищем номер первого вхождения, удовлетворяющего критерию - в данном случае Критерий - ИСТИНА.  
 
В принципе все это хорошо разбирается в пошаговом вычислении формулы. Советую испробовать, если я объяснил непонятно...{/post}{/quote}  
 
Спасибо! Разобрался!!! Вещь =)
Посчитать для строки разницу в заголовке между 1-ым и последним значениями.
 
The_Prist, объясни, пожалуйста, как работает функция ПОИСКПОЗ(ИСТИНА;$B5:$AF5<>0;0). То, что это работа с массивами понятно. А дальше...
Посчитать для строки разницу в заголовке между 1-ым и последним значениями.
 
{quote}{login=}{date=08.06.2010 03:38}{thema=Re: }{post}{quote}{login=The_Prist}{date=08.06.2010 03:33}{thema=}{post}В данном примере вычитаем из значения первой непустой значение последней непустой.{/post}{/quote}  
 
The_prist спасибо за вариант, но нужно получить разницу для этих ячеек только в заголовке. Для 5-ой строки 25-12=13, для 6-ой строки 21-8=13.  
 
to all: могли бы Вы поделится макросом? Добавлю, что строк в реальном файле 5-10 тыс. шт.  
 
Спасибо!{/post}{/quote}  
 
Упрощённый вариант The_prist:  
=ПОИСКПОЗ(3.02E+32;$B5:$AF5)-СУММПРОИЗВ(ПОИСКПОЗ(ИСТИНА;$B5:$AF5<>0;0))
Заполнение диапазона ячеек,
 
Можно сделать так
Страницы: 1 2 След.
Наверх