>source

직원이 일한 날에 대한 부울 항목을 만들려고합니다. 다음은 내 샘플 코드입니다.

Sub BooleabAtt2()
'Create boolean entries for days worked
'Sign-on Worksheet
Dim ws1 As Worksheets
    Set ws = Worksheets("Sign-ons")
Dim rng1 As Range
    Set rng1 = ws1.Range("SignOns")
Dim EmployeeName1 As Long
    EmployeeName1 = rng1.Columns("", 2)
Dim DateIn1 As Date
    DateIn1 = rng1.Columns("", 6)
Dim Company1 As Long
    Company1 = rng1.Colums("", 3)
Dim RowCount As Long
Dim LastRow As Long
Dim i As Long
'Employee ID Worksheet
Dim ws2 As Worksheets
    Set ws2 = Worksheets("EmployeeID")
    
'ConsecutiveDays worksheet
Dim ws3 As Worksheets
    Set ws3 = Worksheets("Consecutive-Days")
Dim rng3 As Range
    Set rng3 = ws3.Range("ConsecutiveDays")
Dim EmployeeName
'conditional statement
With rng1
    LastRow = .Colums(2).Rows.Count
    For i = LastRow
        If ws3.rng3.Cells(1, i) = DateIn1 Then
            If ws3.rng3.Cells(i, 2) = EmployeeName1 Then Enter 1
            Otherwise "0"
            End If
        End If
    Next i
End With
End Sub

아래는 샘플 데이터입니다.

Excel 샘플 데이터

아래 표는 내가 달성하려는 것입니다.

최종 워크 시트

  • 답변 # 1

    나는 이것이 공식으로 쉽게 할 수 있다는 데 동의합니다. 먼저 고유 한 직원 목록을 만들려면 데이터>중복 제거로 이동하거나 다음과 같은 수식을 사용합니다. 최신 버전의 엑셀이 있다면 독특한 공식도 있다고 생각합니다

    그런 다음 공식을 사용하십시오. =COUNTIFS($F$2:$F$11,B$1,$E$2:$E$11,$A2)

관련 자료

  • 이전 python - scipyoptimize Different_evolution이 인구 크기 제한을 무시하는 것 같습니다
  • 다음 window - SQLiteStudio의 Lag () 함수