Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1672to1676
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datensuchen, übertragen und "x" setzen

Datensuchen, übertragen und "x" setzen
31.01.2019 15:21:00
Christian
Hallo miteinander,
ich habe mir mal wieder ein Problem an die Backe geheftet. Ich möchte aus einer Tabelle "KFZ Aufstellung" (soll mal eine eigenständige Arbeitsmappe sein) Daten holen und dann in einer anderen Tabelle speichern. Ich hätte mir das so vorgestellt:
In der Mappe "KFZ-Aufstellung" ist der "Opel" welcher 03/19 zum Öl-Wechsel und zum Tüv muss. Der Mercedes muss nur zum Öl-Wechsel.
Nun sollte in der Mappe "März" das Fahrzeug unter KFZ auftauchen und bei "ÖL" ein "X" und auch bei "TÜV" ein "X" erscheinen. Beim Mercedes natürlich nur bei ÖL.
Das ganze fortlaufend für die anderen Monate, welche aber jetzt nicht relevant sind.
Ich habe das ganze mit einer Index Funktion bzw. Array probiert. Ich finde zwar die Fahrzeuge, hab aber keinen Ansatz wie ich die Xe machen kann.
Auch per VBA fällt mir da nichts ein, und gesucht und gelesen hab ich einiges, aber nichts passendes gefunden.
Habt ihr da eine Idee?
Ich hab mal eine Test-Liste hochgeladen.
https://www.herber.de/bbs/user/127335.xlsx
Danke
Christian

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datensuchen, übertragen und "x" setzen
31.01.2019 15:32:49
SF
Hola,
in A2:
=WENNFEHLER(INDEX('KFZ Aufstellung'!$A$2:$A$9;AGGREGAT(15;6;ZEILE($A$2:$A$9) -1/('KFZ Aufstellung'!$B$2:$B$9="03/19");ZEILE(A1)));"") 

Nach unten kopieren.
In B2:
=WENN(INDEX('KFZ Aufstellung'!$A$1:$C$9;VERGLEICH($A2;'KFZ Aufstellung'!$A$1:$A$9;0); VERGLEICH('KFZ Aufstellung'!B$1;'KFZ Aufstellung'!$A$1:$C$1;0))="03/19";"x";"") 

Nach unten und nach rechts kopieren.
Voraussetzung ist, dass die Begriffe immer gleich sind, also "ÖL" und "ÖL" oder "Öl-Wechsel" und "Öl-Wechsel".
Gruß,
steve1da
Anzeige
AW: Datensuchen, übertragen und "x" setzen
02.02.2019 07:24:07
Christian
Hi steve1da,
hab´s leider erst jetzt probieren können.
Funktioniert soweit recht gut. Für den TÜV habe ich beim zweiten Vergleich auf C1 umgestellt, ich hoffe dass ich damit richtig liege.
=WENN(INDEX('KFZ Aufstellung'!$A$1:$C$9;VERGLEICH($A2;'KFZ Aufstellung'!$A$1:$A$9;0); VERGLEICH('KFZ Aufstellung'!C$1;'KFZ Aufstellung'!$A$1:$C$1;0))="03/19";"x";"")
Problematisch ist, dass ich, wenn kein ÖL 03/19 gefordert ist, auch der TÜV nicht angezeigt wird, da ja dann auch in Spalte KFZ nichts kommt. Es kommt dann nur die Fehlermeldung #NV.
Kann man das irgendwie umstellen, dass auch der Vergleich mit dem TÜV angezeigt wird, und kann man das #NV irgendwie loswerden? (wennfehler?)
Gruß
Christian
Anzeige
AW: Datensuchen, übertragen und "x" setzen
02.02.2019 08:17:25
Christian
Wer lesen kann....
Hab meinen Denkfehler beseitigt, damit auch das #NV :-)
Das Einzige, wo ich keinen Lösungsansatz finde ist das Problem, dass ich ohne "ÖL" auch keinen TÜV bekomme. Ich hab versucht die Funktion anzupassen, komme aber nicht drauf. Hmm
Christian
AW: Datensuchen, übertragen und "x" setzen
02.02.2019 08:17:51
Christian
Wer lesen kann....
Hab meinen Denkfehler beseitigt, damit auch das #NV :-)
Das Einzige, wo ich keinen Lösungsansatz finde ist das Problem, dass ich ohne "ÖL" auch keinen TÜV bekomme. Ich hab versucht die Funktion anzupassen, komme aber nicht drauf. Hmm
Christian
AW: das lässt sich realisieren ...
02.02.2019 14:11:53
neopa
Hallo Christian,
... aber wie willst Du dies denn gelistet bekommen?
Nachfolgend mal (m)ein Vorschlag, wie man in Abhängigkeit der Tabellenblattbezeichnung die monatliche Auswertung des aktuellen Jahres vornehmen könnte.
Formel A2 nach unten und B2 zusätzlich nach rechts ziehend kopieren:
Arbeitsblatt mit dem Namen 'März'
 ABCD
1KFZÖLTÜV03/19
2Opelxx 
3Mercedesx  
4VW x 
5    

ZelleFormel
A2=WENNFEHLER(INDEX('KFZ Aufstellung'!$A:$A;AGGREGAT(15;6;ZEILE($A$2:$A$99)/('KFZ Aufstellung'!$B$2:$C$99=D$1)/(ZÄHLENWENN(A$1:A1;'KFZ Aufstellung'!A$2:A$99)=0);1));"")
B2=WENN(ZÄHLENWENNS('KFZ Aufstellung'!$A:$A;$A2;'KFZ Aufstellung'!B:B;$D$1);"x";"")
D1=TEXT(("1-"&TEIL(ZELLE("Dateiname";$A$1);FINDEN("]";ZELLE("Dateiname";$A$1))+1;31))+0;"MM/JJ")
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
AW: das lässt sich realisieren ...
02.02.2019 15:36:27
Christian
Hallo Werner,
das funktioniert super :-). In D1 (oder wo auch immer) kann ich ja auch einen Wert schreiben, ohne deine Formel. Wenn das woanders steht, dann muss ich das halt auch in A2 und B2 ändern, wenn ich´s recht verstehe.
Jetzt hätte ich noch eine Aufgabe zu meistern (vermutlich nur mit VBA, wenn das überhaupt machbar ist).
Diese Einträge, die jetzt im März für das Jahr 2019 stehen, also Auto und ÖL und/bzw. TÜV sollten dort stehen bleiben, damit sie weiter bearbeitet werden können (die Tabelle ist wesentlich größer - Kosten, Statistik und so Zeug). Wenn ich nun bei der "KFZ Aufstellung" beim Opel nach erfolgter Abnahme beim TÜV dann 03/21 schreibe, fällt er natürlich im März 19 komplett raus.
Gäbe es da eine Möglichkeit, oder muss ich da mit mehreren Arbeitsmappen arbeiten?
Danke jetzt schon Mal für eure Zeit bzw. Geduld.
Christian
Anzeige
AW: hierzu ...
03.02.2019 16:50:07
neopa
Hallo Christian,
... evtl. ist Dir noch nicht zu 100% verständlich geworden, dass die Formel in D1 den jeweiligen Tabellenblattnamen auswertet und Du auf dieser Grundlage mit Hilfe einer Tabellenblattgruppierung alle 12 Monate (bei korrekter Schreibweise im Tabellenblattnamen) auf einen "Streich" auswerten kannst, oder?
Aber auf keinen Fall vergessen, abschließend die Gruppierung auch wieder aufzuheben.
Als Hilfszelle zur Auswertung des Tabellenblattnamens hab ich D1 genutzt. Du kannst natürlich jede andere in allen Monatstabellenblattern freie Zelle dafür nutzen. Natürlich musst Du dann die aufgezeigten Formeln in A2 und B2 entsprechend anpassen.
Das weitere was Du dann geschrieben hast, ist mir noch nicht verständlich geworden. Auf jeden Fall halte ich mich aus VBA-Lösungsangeboten außen vor.
Gruß Werner
.. , - ...
Anzeige
AW: hierzu ...
03.02.2019 17:35:11
Christian
Hallo Werner,
äh nein, ganz klar war das nicht. Werde es aber morgen gleich Mal probieren.
Was meinst du damit, dass ich die Gruppierung aufheben muss?
Gruß
Christian
AW: gruppierte Tabellenblätter ...
03.02.2019 18:45:42
neopa
Hallo Christian,
... aufheben kann nur, wenn man diese zuvor gruppiert hat.
Wenn man bei gedrückter Shifttaste im Tabellenblattreiter mehrere Tabellenblätter gleichzeitig aktiviert kann man danach in diesen identische Eintragungen oder Formatierungen (jedoch keine bedingten -) vornehmen. So z.B. eben auch Formeldefinitionen in den gleichen Zell.
Nach Betätigung der rechten Maustaste auf eins der gruppierten Tabellenblattnamen im Tabellenblattreiter erscheint im Kontextmenü ganz unten die Funktion: Gruppierung aufheben, die man aktiviert. Danach wird in jedem Tabellenblatt wieder getrennt gearbeitet.
Gruß Werner
.. , - ...
Anzeige
AW: gruppierte Tabellenblätter ...
03.02.2019 18:54:51
Christian
Ah,OK. Gruppierung war mir auf diese Weise nicht bekannt. Auch das probiere ich morgen.
Gruß Christian
AW: Original funzt nicht
04.02.2019 14:00:55
Christian
Hallo Werner,
hab´s gesehen. Das funktioniert soweit in der Test Datei. Jetzt habe ich versucht das auf das "Original" umzelegen, das kapier ich aber scheinbar nicht.
Das Blatt KFZ-Aufstellung bleibt wie es ist. Im Januar (u. alle anderen) steht nun in der Spalte "B" das Fahrzeug, und die Kreuze sollen in die Spalte L (ÖL) und Spalte N (Tüv). Das Ganze beginnt ab Zeile 7. In Zeile 6 also B6, L6 u. N6 würde ich die Bezeichnungen wie in A1,B1,C1 schreiben. In U1 ist die Formel aus D1 im Test. Irgendwo ist der Fehler, ich finde ihn aber nicht. Kreuze kommen gar nicht mehr und als KFZ kommt immer das Gleiche heraus.
Hier die Formeln:
B7:
=WENNFEHLER(INDEX('KFZ Aufstellung'!$A:$A;AGGREGAT(15;6;ZEILE($B$7:$B$99) /('KFZ Aufstellung'!$B$2:$C$99=U$1)/(ZÄHLENWENN(B$6:B6;'KFZ Aufstellung'!A$2:A$99)=0);1));"")
L7:
=WENN(ZÄHLENWENNS('KFZ Aufstellung'!$B:$B;$B7;'KFZ Aufstellung'!B:B;$U$1);"x";"")
N7:
=WENN(ZÄHLENWENNS('KFZ Aufstellung'!$A:$A;$B7;'KFZ Aufstellung'!C:C;$D$1);"x";"")
Bei der Formel hat sich ja nichts geändert, hoffe ich.
Gruß Christian
Anzeige
AW: so kann es auch nicht "funzen" ...
04.02.2019 15:25:21
neopa
Hallo Christian,
... die Formel in B7 muss noch bzgl. ZEILE() angepasst werden.
Und zwar so:
=WENNFEHLER(INDEX('KFZ Aufstellung'!$A:$A;AGGREGAT(15;6;ZEILE($B$2:$B$99)/
('KFZ Aufstellung'!$B$2:$C$99=U$6)/(ZÄHLENWENN(B$6:B6;'KFZ Aufstellung'!A$2:A$99)=0);1));"")
Für den Fall, dass Du in den Monatsblättern noch mal Zeilen vor Zeile 2 einfügen oder löschen willst, dann besser gleich so:
=WENNFEHLER(INDEX('KFZ Aufstellung'!$A:$A;AGGREGAT(15;6;ZEILE('KFZ Aufstellung'!A$2:A$99)/
('KFZ Aufstellung'!$B$2:$C$99=U$6)/(ZÄHLENWENN(B$6:B6;'KFZ Aufstellung'!A$2:A$99)=0);1));"")
Gruß Werner
.. , - ...
Anzeige
AW:Danke. Jetzt klappt´s
06.02.2019 08:08:26
Christian
Servus Werner,
danke für deine Hilfe. Jetzt klappt´s. Alles funktioniert.
Gruß
Christian
AW: prima owT
06.02.2019 08:48:29
neopa
Gruß Werner
.. , - ...
AW: hierzu ...
03.02.2019 17:35:13
Christian
Hallo Werner,
äh nein, ganz klar war das nicht. Werde es aber morgen gleich Mal probieren.
Was meinst du damit, dass ich die Gruppierung aufheben muss?
Gruß
Christian

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige