Office: (Office 2016) Anzahl Blocks freier Tage

Helfe beim Thema Anzahl Blocks freier Tage in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, bei der MA-Planung werden freie Tage durch ein"X" gekenzeichnet. Sie können einzeln oder in Blocks von zwei oder mehr Tagen stehen.... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von podie, 28. Oktober 2017.

  1. podie Erfahrener User

    Anzahl Blocks freier Tage


    Hallo zusammen,

    bei der MA-Planung werden freie Tage durch ein"X" gekenzeichnet. Sie können einzeln oder in Blocks von zwei oder mehr Tagen stehen.

    Nun muss ich die Anzahl ermitteln, wo mindestens zwei Tage zusammenhängend eingetragen sind. Das heißt, auch wenn drei oder mehr X-Tage zusammen stehen, darf dieses nur als ein Block gerechnet werden.

    Bei einem Versuch mit SUMMENPRODUKT gelingt mir nur ein Teilerfolg. Stehen nur zwei X-Tage zusammen, erhalte ich das richtige Ergebnis. Stehen aber mehrere X-Tage zusammen (z.B. drei), dann erhalte ich als Ergebnis zwei.

    Ich würde mich freuen, wenn mir da jemand auf die Sprünge helfen könnte!
     
    Zuletzt bearbeitet: 4. November 2017
  2. Exl121150 Erfahrener User
    Hallo,

    wenn du deine im Arbeitsblatt in AY5:AY6 enthaltenen Formeln
    =SUMMENPRODUKT((LINKS(K5:AM5;1)="X")*(LINKS(L5:AN5;1)="X")*(LINKS(M5:AO5;1)<>" "))
    =SUMMENPRODUKT((LINKS(K6:AM6;1)="X")*(LINKS(L6:AN6;1)="X")*(LINKS(M6:AO6;1)<>" "))
    geringfügig auf
    =SUMMENPRODUKT((LINKS(K5:AM5;1)="X")*(LINKS(L5:AN5;1)="X")*(LINKS(M5:AO5;1)<>"X"))
    =SUMMENPRODUKT((LINKS(K6:AM6;1)="X")*(LINKS(L6:AN6;1)="X")*(LINKS(M6:AO6;1)<>"X"))
    änderst, dann funktionieren sie.
    Der Vergleich im 3. LINKS-Ausdruck muss auf ungleich "X" erfolgen (Der Vergleich im 3. LINKS-Ausdruck auf ungleich " " bewirkte, dass natürlich auch "X" ungleich " " war und somit mitgezählt wurde und somit ein falsches Resultat ergab).
     
    Exl121150, 4. November 2017
    #2
  3. podie Erfahrener User
    Hi Anton,

    für Deine Antwort erstmal Danke!

    Die Variante mit "<>X" hilft tatsächlich weiter, wenn... ja wenn da jetzt nicht das Monatsende der Sache ein Problem bereiten würde.

    Wenn am Ende des Monats, was gleich Ende des Arrraybereichs ist, auch ein "X" steht, wird wieder falsch gezählt. Füge ich nach dem 31.ten
    eine leere Spalte dazu und erweitere die Bereiche klappts wieder. Leider kann ich dort aber keine Spalte einfügen, da ich mit ähnlicher Formel die freien Wochenenden durchzähle. Wenn dann der Samstag auf den Letzten des Monats und der Sonntag auf den Ersten des Monats fällt würde diese Berechnung nicht mehr stimmig sein.
     
  4. Exl121150 Erfahrener User

    Anzahl Blocks freier Tage

    Hallo,

    ich dachte, es würde angesichts der verwendeten Formel eh klar sein, dass eine zusätzliche Spalte benötigt wird.

    Ich habe mich nach Alternativformeln umgesehen und eine solche gefunden in
    http://www.excelformeln.de/formeln.html?welcher=335
    Ich habe dir in den Zellen L18:L19 eine an deine Verhältnisse angepasste Version eingefügt - doch diese Formel benötigt ebenfalls am Monatsende eine Leerspalte, um erwartungsgemäß zu funktionieren. Außerdem ist sie um einiges länger.

    Wirklich Abhilfe schafft hier nur eine benutzerdefinierte VBA-Funktion. Ich habe sie dir in die Excel-Datei eingefügt.
    Wie sie im Arbeitsblatt einzusetzen ist, habe ich dir in den Zellen L24:L25 bzw. T24:T25 gezeigt.

    Sie ist ganz einfach anzuwenden und sie kann 1 bis 3 Parameter besitzen:
    Der 1. Parameter gibt den Zellbereich an, in dem nach Zellgruppen gesucht werden soll, zB. K5:AO5 bzw. K6:AO6
    Der 2. Parameter ist optional, er ist nur dann anzugeben, wenn nach einem anderen Zeichen als dem "X" gesucht werden soll.
    Der 3. Parameter ist ebenfalls optional und nur anzugeben, wenn mehr als 2 Zeichen (zB. "X") zu einer Gruppe gehören müssen, damit sie als solche gezählt wird.

    Nachfolgend der Makro-Sourcecode:
    Code:
    Option Explicit
    
    Public Function GruppenZählen(Bereich As Range, Optional Ch$ = "X", Optional MinCh& = 2) As Long
      Dim AnzGruppen As Long
      Dim AnzInGruppe As Long
      Dim Zelle As Range
      
      AnzGruppen = 0: AnzInGruppe = 0
      For Each Zelle In Bereich.Cells
        If Zelle.Value = Ch$ Then
          AnzInGruppe = AnzInGruppe + 1
        Else
          If AnzInGruppe >= MinCh& Then AnzGruppen = AnzGruppen + 1
          AnzInGruppe = 0
        End If
      Next Zelle
      If AnzInGruppe >= MinCh& Then AnzGruppen = AnzGruppen + 1
      
      GruppenZählen = AnzGruppen
      
    End Function
    Damit das VBA-Makro funktioniert, ist gegebenenfalls die Makroausführung zu aktivieren (entweder nach dem Öffnen der Excel-Datei oder aber in den Excel-Optionen).
     
    Zuletzt bearbeitet: 6. November 2017
    Exl121150, 6. November 2017
    #4
  5. podie Erfahrener User
    Hi Anton,

    Deine VBA Lösung ist und klappt hervorragend.

    Vielen Dank für Deine Hilfe und schöne Grüße
     
Thema:

Anzahl Blocks freier Tage

Die Seite wird geladen...
  1. Anzahl Blocks freier Tage - Similar Threads - Anzahl Blocks Tage

  2. Abfrage: Anzahl von Kriterium >0

    in Microsoft Access Hilfe
    Abfrage: Anzahl von Kriterium >0: Hallo, [ATTACH] Ich versuche gerade, die Anzahl der belegten Plätze auf einem LKW per Abfrage zu ermitteln. Dabei wäre dann FSPal > 0. Leider zeigt er mir die Anzahl der Plätze an. [ATTACH]...
  3. Anzahl der Downloads bereitgestellter Dateien anzeigen

    in Lob, Kritik und Verbesserungsvorschläge
    Anzahl der Downloads bereitgestellter Dateien anzeigen: Hi, wäre schön, wenn man sehen könnte, wie oft eine Datei, die man zum Download bereitgestellt hat, tatsächlich gedownloadet wurde.
  4. Anzahl der Top 5 Werte zeilenweise Zählen

    in Microsoft Excel Hilfe
    Anzahl der Top 5 Werte zeilenweise Zählen: Hallo Liebe Forenmitglieder, ich habe eine Tabelle mit 40 Namen untereinander und trage wöchentlich eine Zahl in der Spalte der jeweiligen KW ein. (Mit einer bedingten Formatierung ermittle ich,...
  5. Anzahl mit bedingungen

    in Microsoft Excel Hilfe
    Anzahl mit bedingungen: Hallo, ich möchte im Tabellenblatt: "Tabelle1" in den Gelben Feldern, jeweils die Anzahl M bzw W aus Tabelle: "test" haben, aber da die Namen mehrfach vorkommen können sollte jeweils nur einmal...
  6. Anzahl Tage berechnen, inclusiv Startdatum

    in Microsoft Excel Hilfe
    Anzahl Tage berechnen, inclusiv Startdatum: Guten Tag zusammen, ich benötige einmal Hilfe für eine Funktion (wenn es sie denn gibt) für die Berechnung von Anzahl Tagen, jedoch inclusiv des Starttages. Ich kenne es so, dass man den...
  7. Variable Anzahl immer 9er Kombination StellenBerechnung

    in Microsoft Excel Hilfe
    Variable Anzahl immer 9er Kombination StellenBerechnung: Hallo schönen Guten Abend mit Bauchweh, das ich bereits habe bei meiner Nicht weiter kommenden Formel. Folgendes Es lässt sich Schwer beschreiben doch ich versuche es Ich habe in J3 einen Wert...
  8. Makro für variable Anzahl von Datensätzen

    in Microsoft Excel Hilfe
    Makro für variable Anzahl von Datensätzen: Hallo zusammen, ich habe wieder einmal ein kleines Excel-Problem, bei dem Ihr mir sicherlich helfen könnt. Ich habe eine Excel-Liste, das ist ein Export aus einem anderen Programm (siehe...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden