Excel (Makro) -> Zählen wenn 2 Bedingungen erfüllt sind?
Guten Morgen zusammen,
ich versuche seit gestern folgendes zu lösen:
Ich habe eine Tabelle mit Daten. Den auszuwertenden Zeitraum kann der Benutzer frei wählen -> somit ist die Länge der Tabelle unterschiedlich. Bedeutet ich bestimme das Ende der Tabelle mit einem Marko.
In Spalte Z werden für Bezeichnungen die in dem definierten Zeitraum produziert wurden.
In Spalte O ist das gefertigte Produkt aufgelistet.
In Spalte D ist die Unterbrechung aufgelistet.
Bei dem eingeblendeten Beispiel wurde P127-065 produziert und 5 mal gab es eine 1 sowie die 0
genau dies möchte ich jedes Produkt auswerten.
Folgendes habe ich probiert:
Leider funktioniert der "CountIfs" Befehl nicht.
Woran liegt dies?
Vielen Dank für eure Hilfe
2 Antworten
Du könntest - wenn ich Dich richtig verstanden habe - die
- Daten der Spalte O komplett in die Spalte Z kopieren
- Daten - Duplikate entfernen (ggf. sortieren)
- Zählennwenn(s) für die 1 / 0 nutzen
um Deine Informationen zu erhalten.
Dafür kannst Du ein Makro anlegen.
Mir scheint es nicht notwendig, das mit VBA lösen zu müssen, aber zunächst:
Im CountIfs verwendest du Z6, aber die Variable hast du nirgendwo definiert.
Tipp: Arbeite mit Option Explicit als erste Zeile im Modul. Dann würde das auffallen.
Die letzte Zeile brauchst du nicht zwingend, weil CountIfs sowieso keinen Match für leere Zellen liefern würde.
Wenn es keine keine Leerzellen innerhalb deiner Tabellenspalte gibt, kannst du die letzte Zelle mit Excel mittels ANZAHL2 + Erste Zeile bestimmen und den Bereich zum Beispiel mit INDIREKT konstruieren.
Oder zum Beispiel so:
=MAX(ZEILE(Z:Z)*(Z:Z<>""))
Dann könntest du einfach mit ZÄHLENWENN direkt in Excel arbeiten.
(Aber wie gesagt theoretisch auch ohne das Wissen um die letzte Zeile)
Die letzte Zeile nutze ich gerne, um mir Hyperlinks zu generieren, mit denen man ans Ende einer Tabelle springen kann.
Probier es mal mit CountIfs..."=Z6"...
Wenn du das für mehrere Produkte machen willst, wirst du sowieso in irgendeiner Form mit Schleifen arbeiten müssen.
Du solltest dir eine Produktübersicht machen, in der jedes Produkt genau einmal aufgelistet wird. Dann kannst du dir anhand der Produktnummer / -bezeichnung die Werte (Anzahl und Summen) aus dem Datenblatt ziehen.
So würde ich es auch in VBA lösen.
Eine Schleife, die alle Produkte einer neuen Liste hinzufügt, wenn sie noch nicht enthalten sind.
Danach eine Schleife, die die Werte zu jedes dieser Produkte ermittelt und in die Nachbarzellen schreibt. Oder du schreibst in die Nachbarzelle die CountIfs-Formel.
Danke für deine Antwort. Z6 soll die Zelle sein wo das Produkt drin steht