Ich habe mich sehr bemüht, dieses herauszufinden, sehen, ob mir jemand eine Wegbeschreibung geben könnte, bitte.Zeitzählung basiert auf Bedingung
Ich habe ein Arbeitsblatt, in dem ich die Aktivitäten über den Tag (Spalte W), also habe ich einen Bericht für jeden Tag. Jede Aktivität hat einen Typ, der durch einen in einem Dropdown-Menü (Spalte U) aufgeführten Buchstaben definiert ist, z. B. "R" für "Reporting", "M" für "Meeting" usw. und eine Dauer in Stunden (HH: mm) (Spalte S).
Ich möchte, dass mein Arbeitsblatt die gesamte Dauer der Aktivitäten basierend auf ihrem Typ summiert und die Ergebnisse in einer anderen Zelle speichert. In dem beigefügten Bildbeispiel müsste ich 3:30 h für Meeting, 4:30 für Reporting und 2 h für Zeichnung haben.
Was der folgende SumIf-Code tut, ist die Summe aller Stunden, aber es wird nicht für die Dauer berücksichtigt, sobald die Dauer der Unterschied zwischen der Zeit in der nächsten Zeile und der Zeit der Zeile ist, in der das bedingte Argument ist.
Sub test_count_hours()
Range("E35").Value = WorksheetFunction.SumIf(Range("U8:U37"), "R", Range("S8:S37"))
End Sub
So ist mein Kampf, den Code für die Dauer der Ereignisse zu machen.
Beispiel für ein Arbeitsblatt gefüllt
Wenn Sie Hilfe mit Ihrem Code benötigen, geben Sie ihn bitte in Ihre Frage ein. – braX
Sie benötigen 'SumIf', aber bitte, eine @braX erwähnt, poste deinen Code oder was du bisher versucht hast – Moacir
Sie haben @Moacir richtig eingestellt, ich habe meine Frage bearbeitet, ich dachte nur, dass es zu einfach ist, sie einzuschließen, aber ich habe mich geirrt –