3 Spalten mit Vierter vergleichen, ggf. löschen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: 3 Spalten mit Vierter vergleichen, ggf. löschen

Re: 3 Spalten mit Vierter vergleichen, ggf. löschen

von lorbass » Do, 15.08.2013 15:28

Hallo balu,

ja, ja, du hast ja recht. — Einmal auf dem falschen Dampfer und dann noch nachgeschobene Anforderungen, und schon kommt so was dabei raus. :oops:

Code: Alles auswählen

=WENN(ISTFEHLER(SVERWEIS(1000*A2+B2;$Tabelle1.$G$2:$G$4798;1;0));"löschen";"")
=WENN(ZÄHLENWENN($Tabelle1.$G$2:$G$4798;1000*A2+B2);"";"löschen")
=WENN(SUMMENPRODUKT($Tabelle1.E$2:E$4798=A2;$Tabelle1.F$2:F$4798=B2);"";"löschen")
Ein Musterexemplar für die Weisheit
Alles entwickelt sich vom Primitiven über das Komplizierte zum Einfachen.
  Antoine de St. Exupéry
Gruß
lorbass

Re: 3 Spalten mit Vierter vergleichen, ggf. löschen

von balu » Do, 15.08.2013 10:00

Hallo Leute,

@lorbass
Ich versteh nicht warum Du es dir mit deiner Formel so umständlich machst. Eigentlich müsstest Du doch mittlerweile wissen wie es einfacher geht.

Code: Alles auswählen

=WENN(ISTFEHLER(SVERWEIS(1000*A2+B2;$Tabelle1.$G$2:$G$4798;1;0));"löschen";"")
Das ist wahrlich einfach zu kompliziert, und zu lang.
Kürzer und einfacher gehts doch hiermit.

Code: Alles auswählen

=WENN(ZÄHLENWENN($Tabelle1.$G$2:$G$4798;1000*A2+B2);"";"löschen")
Bitte versteh mich nicht falsch, ich möchte dich nicht blöd anmachen. Und deshalb lassen wir das jetzt mal einfach so wie es ist, ohne das ich meine Formel genauer erkläre, und komme nun wohl zu der momentan einfacheren Formellösung um die zu löschenden Zeilen zu markieren.

Weder deine noch meine eben zitierte Formel sind optimal um die Zeilen zu markieren. Zumal beide auf die Hilfsspalte G angewiesen sind. Es reicht nämlich folgende Formel, und das ohne die Hilfsspalte G.

Code: Alles auswählen

=WENN(SUMMENPRODUKT($Tabelle1.E$2:E$4798=A2;$Tabelle1.F$2:F$4798=B2);"";"löschen")
lorbass hat geschrieben: leider beschreibst du selbst ja die Anforderung immer noch nicht präzise
Ich muss gestehen, dass ich auch so mein Verständigungsproblem mit seiner Problembeschreibung hatte. Hinzu kommt dabei noch das Jan immer wieder von "Zeile F" oder aber auch von "Zeile D" sprach, obwohl von der Beschreibung aus her gesehen es "Spalte F" oder "Spalte D" heisen muss.




@Jan
Eine Zeile hat keinen Buchstaben, sondern eine Zahl. Und eine Spalte hat einen Buchstaben.
Zeile 6
Spalte F
Und eine Zelle wird so angesprochen: Zelle A6
Bitte berücksichtige das beim nächstenmal, denn sonst kommt es wirklich sehr schnell zu Missverständnissen.

Held_der_Arbeit hat geschrieben: Ausserdem wäre es toll wenn es möglich wäre, dass der Code die Zeilen wirklich löscht, statt sie nur zur Löschung zu markieren.
Kommst Du mit dem Lösungsvorschlag von lorbass, ->Daten ->Filtern, zu recht?



Gruß
balu
Dateianhänge
Held_der_Arbeit_Sicherheitsratings Zwischenschritt_v3.ods
(115.65 KiB) 39-mal heruntergeladen

Re: 3 Spalten mit Vierter vergleichen, ggf. löschen

von lorbass » Do, 15.08.2013 00:44

Ist schon recht. Viel wichtiger: Passt's denn jetzt so?

Gruß
lorbass

Re: 3 Spalten mit Vierter vergleichen, ggf. löschen

von Held_der_Arbeit » Mi, 14.08.2013 21:48

Vielen Dank.

War nicht meine Absicht das die Intention nicht gleich klar wurde. Wollte mich möglichst kurz halten um nicht zu verwirren und habe damit dann leider das Gegenteil erreicht ;)

Gruß
Jan

Re: 3 Spalten mit Vierter vergleichen, ggf. löschen

von lorbass » Mi, 14.08.2013 17:33

Held_der_Arbeit hat geschrieben:das scheint nicht zu funktionieren.
Das funktioniert so, wie du es in deinem ersten Beitrag beschrieben hast. Die Zeilen mit einem Wert in Spalte C, der in Spalte F nicht vertreten ist, werden – nun ja – nicht gelöscht, sondern markiert. Markierte Zeilen kann man in einem zweiten Schritt mit einer einfachen Filter-Operation eliminieren.
Held_der_Arbeit hat geschrieben:Ausserdem wäre es toll wenn es möglich wäre, dass der Code die Zeilen wirklich löscht, statt sie nur zur Löschung zu markieren.
Dazu musst du programmieren.
Held_der_Arbeit hat geschrieben:Zeile F erreicht das Ende dieser 84 Zeilen allerdings "schneller", da es dort ja fehlende Werte gibt,[…]
Nee, entweder gibt es die Werte, oder sie fehlen. Es fehlen genau die in Spalten A:C zu löschenden.
Held_der_Arbeit hat geschrieben:[…] weshalb der Code ab einem bestimmten Punkt nicht mehr dieselben Zeilen vergleichen kann.
Die Begründung verstehe ich nicht. Bisher hast du die Aufgabe so beschrieben, dass die Werte aus Spalte C stets mit den wenigeren(!) Werten in Spalte F zu vergleichen sind. Ab welchem „bestimmten Punkt“ soll das jetzt nicht mehr gelten?
Held_der_Arbeit hat geschrieben:Im Anhang diesmal das komplette File zum besseren Verständnis
Wenn ich das nun richtig verstehe — leider beschreibst du selbst ja die Anforderung immer noch nicht präzise — muss nicht nur Spalte B mit F verglichen werden, sondern die Tupel (Ai:Bi) mit (Ej:Fj).

Dies habe ich in deiner Datei so umgesetzt, dass ich zunächst eine Hilfsspalte G benutze und das Tupel (Ej:Fj) als G=: 1000*Ej+Fj realisiere. Das Tupel (Ai:Bi) kann ich dynamisch in der schon zuvor benutzten Formel mit 1000*Ai+Bi realisiere. Die Formel lautet dann für i=2

Code: Alles auswählen

=WENN(ISTFEHLER(SVERWEIS(1000*A2+B2;$Tabelle1.$G$2:$G$4798;1;0));"löschen";"")
Nachdem Ausfüllen von D2:D5209 habe ich die Spalten A:D markiert, Daten → Filter… → Standarfilter gewählt und als Filterkriterium Feldname Anmerkung, Bedingung <> und Wert löschen und unter Mehr Optionen noch [✓] Filterergebnis ausgeben nach das Ziel $Tabelle2.$A$1 eingetragen. Fertig.

Abschließend: Ich würde es sehr begrüßen, wenn du beim nächsten Mal von vornherein die komplette Aufgabestellung bekannt geben würdest. Das spart Zeit und Arbeit.

Gruß
lorbass
 
 
Dateianhänge
Held_der_Arbeit_Sicherheitsratings Zwischenschritt.ods
(235.91 KiB) 41-mal heruntergeladen

Re: 3 Spalten mit Vierter vergleichen, ggf. löschen

von Held_der_Arbeit » Mi, 14.08.2013 15:30

Danke schonmal, aber das scheint nicht zu funktionieren.
Ab einem bestimmten Punkt sortiert dieser Code fast alle Zeilen aus.

Zur Klärung; das File ist insgesamt auch deutlich länger als 84 Zeilen, wiederholt sich aber vom Aufbau her. Alle 84 Zeilen ändert sich der Inhalt von Zeile A. Grund für die Verwirrung mit 11-95 war, dass Trial 52 ausgelassen wird (dort wurde eine Pause eingelegt und kein Wert erfasst)
Zeile F erreicht das Ende dieser 84 Zeilen allerdings "schneller", da es dort ja fehlende Werte gibt, weshalb der Code ab einem bestimmten Punkt nicht mehr dieselben Zeilen vergleichen kann.

Ausserdem wäre es toll wenn es möglich wäre, dass der Code die Zeilen wirklich löscht, statt sie nur zur Löschung zu markieren. Zeile D im Beispielfile war nur gedacht um zu zeigen welche Art Zeilen gelöscht werden sollte.

Im Anhang diesmal das komplette File zum besseren Verständnis
Dateianhänge
Sicherheitsratings Zwischenschritt.ods
(76.57 KiB) 31-mal heruntergeladen

Re: 3 Spalten mit Vierter vergleichen, ggf. löschen

von lorbass » Mi, 14.08.2013 14:54

Held_der_Arbeit hat geschrieben:84x den Wert 1 […] und B fortlaufend von 11-95 nummeriert
Entweder 84x 1 in Spalte A oder fortlaufend bis 94 in Spalte B, sonst passt's nicht zusammen.

Schreibe in D2

Code: Alles auswählen

=WENN(ISTFEHLER(SVERWEIS(B2;$F$2:$F$9;1;0));"löschen";"")
und kopiere die Formel bis D85 oder D86, je nachdem wie du dich oben entschieden hast…

Gruß
lorbass

3 Spalten mit Vierter vergleichen, ggf. löschen

von Held_der_Arbeit » Mi, 14.08.2013 11:29

Hallo,

Ich habe schon ein paar ähnliche Threads gefunden, aber mit keinem davon mein spezifisches Problem lösen können. Entschuldigt also bitte, wenn es für euch sehr ähnlich klingt ;)

Es geht um folgendes:
Der mich interessierende Wert "Sicherheit" in C, korrespondiert im Moment mit den Spalten A und B (wobei A 84x den Wert 1 enthält und B fortlaufend von 11-95 nummeriert ist)
Nun sollen diese Spalten mit der deutlich kürzeren Spalte F verglichen werden, bei der einige Nummern in einer vorherigen Rechnung herausgefiltert wurden.

Zellen die in B, aber NICHT in F vorkommen sollen (zusammen mit den dazugehörigen Werten in A und C) gelöscht werden.

Wäre für Hilfe sehr dankbar!

Gruß
Jan
Dateianhänge
3Spalten Beispiel.ods
(9.77 KiB) 48-mal heruntergeladen

Nach oben