특정 날짜의 텍스트 데이터를 집계하는 방법

특정 날짜의 텍스트 데이터를 집계하는 방법

1) 시간 추적 및 2) 이벤트 유형 추적을 위해 Excel 데이터베이스를 만들고 있습니다. Sheet1에는 특정 날짜의 개별 이벤트와 소요 시간을 입력합니다. 내 목표는 Sheet2를 통합하는 것입니다.

시트1

날짜 이벤트 유형 소요 시간(분)
2021-12-09 관리 10
2021-12-09 협의회 회의 60
2021-12-05 사회봉사 90
2021-12-05 관리 10
2021-12-05 예습 5

시트2

날짜 이벤트 총 시간(hh:mm)
2021-12-09 행정, 협의회 회의 01:10
2021-12-05 행정, 지역사회 봉사, 준비 01:45

SUMIF를 사용하여 Sheet2!C2:C3을 수행하는 방법을 알아냈는데 Sheet2!B를 어떻게 수행합니까?

많은 감사

답변1

Excel 365가 있으면 결합 TEXTJOINFILTER기능이 가능합니다.

=TEXTJOIN(", ",TRUE,FILTER(Sheet1!$B$2:$B$6,Sheet1!$A$2:$A$6=$A2))

결과

답변2

Office 365가 없는 경우 Power QueryWindows Excel 2010 이상에서 사용할 수 있는 을 사용하여 원하는 출력을 얻을 수 있습니다.

  • 원본 테이블에서 일부 셀을 선택하세요.
  • Data => Get&Transform => From Table/Range
  • PQ UI가 열리면 다음으로 이동합니다.Home => Advanced Editor
  • 코드의 2행에 있는 테이블 이름을 기록해 두세요.
  • 기존 코드를 다음으로 대체합니다.M-코드아래에
  • 붙여넣은 코드의 2번째 줄에 있는 테이블 이름을 "실제" 테이블 이름으로 변경하세요.
  • Applied Steps알고리즘과 단계를 더 잘 이해하려면 설명과 창을 검토하세요.

M코드

let
    Source = Excel.CurrentWorkbook(){[Name="Table24"]}[Content],

//set data types
    #"Changed Type" = Table.TransformColumnTypes(Source,{
        {"Date", type date}, {"Event Type", type text}, 
        {"Time Spent (Minutes)", Int64.Type}}),

//Group by Date
// Aggregate by concatenating Event Type text and SUMming Minutes
//    (change minutes => duration to get desired output format
    #"Grouped Rows" = Table.Group(#"Changed Type", {"Date"}, {
        {"Event Type", each Text.Combine(List.Sort([Event Type]),", "), type nullable text}, 
        {"Time Spent (Minutes)", each #duration(0,0,List.Sum([#"Time Spent (Minutes)"]),0), type nullable duration}
        })
in
    #"Grouped Rows"

여기에 이미지 설명을 입력하세요

관련 정보