2013-11-13 2 views
0

Предположим, у меня есть следующие данныеExcel VBA Индикатор функции для макросъемки

Name Date  Notional 

Alice 10/1/2006& 1000 

Bob 12/5/2011 5000 

Dawn 1/1/2010 400 

Alice 5/6/2009 500 

Alice 7/13/2012 1500 

Dawn 4/5/2012 100 

Я хочу добавить еще два столбца, Total и процентах. Где Всего сумм Условное значение для одного человека и Процентное отношение к данному Условному в процентах от Total.

Так Алисе три сделки на три даты с тремя notionals 1000, 500 и 1500. Ее Всего было бы 3000 и ее три проценты будет 33%, 16,6% и 50%

Так что мой окончательный результат будет:

Name Date  Notional Total Percentage 

Alice 10/1/2006 1000  3000  33% 

Bob  12/5/2011 5000  5000  100% 

Dawn 1/1/2010 400   500  80%   

Alice 5/6/2009 500   3000  16.67% 

Alice 7/13/2012 1500  3000  50% 

Dawn 4/5/2012 100  500  20% 

Я надеюсь написать макрос, который добавляет суммирует Условные для каждого указать название совпадает.

Таким образом, моя ячейка D2 будет C2 * Индикатор (A2, A2) + C3 * Индикатор (A3, A2) + C4 * Индикатор (A4, A2) + C5 * Индикатор (A5, A2) + C6 * Индикатор A6 = A2) + C7 * Индикатор (A7 = A2)

Где индикатор (Ak, A2) - это индикаторная функция, которая принимает значение 1, когда Range («Ak»). Значение = диапазон («A2»). Значение и ноль в противном случае.

Есть ли такая функция? Полагаю, я могу создать его сам.

Public Function Indicator(c1 As Range, c2 As Range) 
     Dim out As Integer 
     If Range(c1).Value = Range(c2).Value Then 
      out = 1 
      Else: out = 0 
      End If 


End Function 

Я пытаюсь заставить это работать внутри большего кода. Но сейчас я получаю много ошибок. Я буду обновлять, если я могу заставить его работать.

+0

Можете ли вы использовать сводную таблицу? Я думаю, что это самый простой способ сделать это. – Makah

+1

Вы не можете использовать формулы? 'SUMIF()' будет работать отлично. –

+0

@TimWilliams Спасибо. Сейчас я использую СУММУ. – Amatya

ответ

2

Я построил сводную таблицу с:

Lines: Имя | Дата

Ценности: условно [SUM] | Условные [% от общей родительской строки]

Смежные вопросы