Замена нескольких SUMIF() на uniques

#google-sheets #google-sheets-formula

#google-sheets #google-sheets-формула

Вопрос:

У меня есть электронная таблица с несколькими столбцами, содержащими «Клиенты» и «Часы». Я хочу найти каждого уникального клиента, а затем рассчитать сумму для каждого уникального клиента.

 // Customer columns
{A3:A; D3:D; G3:G; J3:J; M3:M; P3:P; S3:S}

// Hours columns
{C3:C; F3:F; I3:I; L3:L; O3:O; R3:3; U3:U}
  

Я нахожу уникальных клиентов с помощью этой формулы:

 =sort(filter(unique({A3:A; D3:D; G3:G; J3:J; M3:M; P3:P; S3:S}),NOT(ISBLANK(unique({A3:A; D3:D; G3:G; J3:J; M3:M; P3:P; S3:S})))))
  

И я могу вычислить сумму часов уникальных клиентов, используя вспомогательный столбец, W :

 =sumif(A3:A,W14,C3:C)
 sumif(D3:D,W14,F3:F)
 sumif(G3:G,W14,I3:I)
 sumif(J3:J,W14,L3:L)
 sumif(M3:M,W14,O3:O)
 sumif(P3:P,W14,R3:R)
 sumif(S3:S,W14,U3:U)
  

Это работает. Однако мне нужно вставить SUMIF() формулу для каждого уникального клиента. Мне приходится делать это вручную, поскольку Google Spreadsheet недостаточно умен, чтобы заменить только W14 на W15 , W16 и так далее.

Как мне рассчитать сумму часов для каждого уникального клиента, не изменяя мою SumIf -формулу вручную?

Электронная таблица находится здесь: Электронная таблица

Комментарии:

1. Я добавил ссылку на электронную таблицу Google

Ответ №1:

 =QUERY({A3:C; D3:F; G3:I; J3:L; M3:O; P3:R; S3:U}, 
 "select Col1, sum(Col3) 
  where Col1 is not null 
  group by Col1 
  order by sum(Col3) desc
  label sum(Col3)''")
  

0