Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1472to1476
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

Dokument Erstellung durch Tabellenauswertung

Dokument Erstellung durch Tabellenauswertung
17.02.2016 08:14:12
Alex
https://www.herber.de/bbs/user/103613.xlsm
Hallo liebe Excel-Gemeinde,
seit einiger Zeit quält mich ein Problem, bei dem ich auch nach etlichen Suchen nicht weiter gekommen bin.
Mein Ziel ist es ein Dokument zu erstellen, dass sich selbst anpasst anhand einer Auswahl per Dropdown. Meinem Beispiel folgend, wähle ich die "Nationalität" und "Marke" und das grüne und rote Feld füllt sich automatisch mit Daten.
Die Daten stammen aus den anderen Tabellenblättern. Dort sind Tabellen die ich nur per "X"-Eingabe pflegen möchte. Und hier liegt mein Problem: Ich habe mit einer verketteten wenn-Funktion immer gesagt: Wenn in dieser Zelle ein "X" ist dann gib mir den Wert aus dem ersten Zeile der Spalte mit dem "X" und das dann für jede Spalte. Das ist aber nicht besonders schön, da ich erstens bei 120 Spalten eine seeehr lange Funktion erhalte, die dann zweitens überhaupt nicht schnell änderbar ist, wenn man z.B. eine Spalte oder Zeile hinzufügt. Deshalb nehme ich an, dass ich eine Makro benötige, aber meine VBA-Künste sind echt dürftig. Ich bräuchte Hilfe für eine Makro, die die Zeile B der Tabelle2 anhand eines Suchworts nach "X"'s durchsucht und mir dann jedes mal den Wert aus der ersten Zeile der Spalte wiedergibt. Und alle gefundenen Inhalte per "; " getrennt hintereinander weg in das rote Feld schmeißt.
Das Grüne Feld soll mit Inhalten aus der Spalte A der Tabelle 3 gefüllt werden. Wenn also u.a. die Farbe "Schwarz; metallic; " aus Tabelle2 in dem roten Feld steht, soll im Grünen "dunkel; getrübt;" stehen, da Schwarz dort in der Tabelle3 jeweils ein "X" hat. Aber dann auch nur einmal "getrübt".
Und das soll alles dann noch funktionieren, wenn ich eine Spalte oder Zeile hinzufüge.
Ich hoffe es war einigermaßen verständlich, was ich machen möchte.
Ich würde mich echt freuen, wenn ihr mir bei diesem Thema helfen könnt.
Ich danke euch schon mal im Voraus für eure Antworten.
Viele Grüße
Alex

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: warum immer nur in eine Zelle? ...und ...
17.02.2016 08:25:23
...
Hallo Alex,
... Excel hat doch mehr als genug von diesen Zellen.
Auch wäre dann einfacher eine Formellösung möglich, wobei dies auch ohne die Aufsplittung möglich ist. Entweder mit einer UDF oder Hilfszellen.
Also was strebst Du weiter an?
Gruß Werner
.. , - ...

AW: warum immer nur in eine Zelle? ...und ...
17.02.2016 08:35:23
Alex
Hallo Werner,
erst mal Danke für deine Antwort, aber ich verstehe sie nicht ganz. Was ist eine UDF?
Grüße
Alex

AW: eine UDF ...
17.02.2016 08:44:13
...
Hallo Alex,
... das ist eine User definierte Funktion, die mit VBA erstellt wuerde. Hier im Forum hat z.B. Luc einige eingestellt (im Archiv zu finden)
Aber wenn Du meinen Vorschlag annimmst, bedarf es auch solcher für eine reine Formellösung nicht.
Gruß Werner
.. , - ...

Anzeige
AW: eine UDF ...
17.02.2016 08:58:26
Alex
Hallo Werner,
ich bin jedem Vorschlag offen, Hauptsache das funktioniert.
... Und je weniger VBA desto mehr verstehe ich auch^^
Grüße
Alex

AW: dann mit INDEX() und AGGREGAT() ...
17.02.2016 09:28:26
...
Hallo Alex,
... vorausgesetzt Du hast überall identische Namen zu stehen. (So hängt in Deiner Tabelle4 momentan noch ein nach führendes Leerzeichen an "Deutschland", dass dadurch in Tabelle 1 übernommen wurde)
Nachfolgende Formel C4 nach rechts ziehend kopieren und die Formel C6 nach rechts und unten:
Tabelle1

 ABCDE
1Nationalität wählen: Frankreich  
2Marke wählen: Peugeot  
3     
4Lack: Gelbmatt 
5     
6Helligkeit hellgetrübt 
7  getrübt  
8     

Formeln der Tabelle
ZelleFormel
C4=WENNFEHLER(INDEX(Tabelle2!$1:$1;AGGREGAT(15;6;SPALTE(Tabelle2!$C1:$Z1)/(Tabelle2!$A$2:$A$99=$C$1)/(Tabelle2!$B$2:$B$99=$C$2)/(Tabelle2!$C$2:$Z$99="x"); SPALTE(A1))); "")
C6=WENNFEHLER(INDEX(Tabelle3!$A:$A;AGGREGAT(15;6;ZEILE(Tabelle3!A$2:A$99)/(Tabelle3!$B$1:$Z$1=C$4)/(Tabelle3!$B$2:$Z$99="x"); ZEILE(A1))); "")


Tabelle2

 ABCDEFGHIJ
1NationalitätMarkeGelbWeißSchwarzGraumetallicmattglänzend 
2DeutschlandBMW x  x   
3DeutschlandAudi  x x   
4DeutschlandVWx    x  
5FrankreichRenault   x  x 
6FrankreichPeugeotx    x  
7FrankreichCitroen x  x   
8          


Tabelle3

 ABCDEFGH
1 GelbWeißSchwarzGraumetallicmattglänzend
2hellxx     
3dunkel  xx   
4getrübtx x xx 
5        


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Anzeige
AW: dann mit INDEX() und AGGREGAT() ...
17.02.2016 09:41:28
Alex
Hallo Werner,
vielen Dank für deinen Vorschlag und deine Mühe. Aber ich bräuchte es alles schon in einer Zelle mit dem ";".
Denn so müsste ich ja immer die Formeln im Dokument kopieren, um zu gucken, ob da vielleicht noch etwas kommt und bei 120 Spalten würde dies dann alles nicht mehr auf eine Seite passen.
Außerdem kommt so das "getrübt" wieder doppelt. Ich denke hier führt kein Weg an einer VBA Programmierung vorbei.
Trotzdem danke für deine Hilfe.
Viele Grüße
Alex

AW: Du hast wohl noch nicht getestet, ...
17.02.2016 10:00:07
...
Hallo Alex,
... denn wenn Du es getan hättest, hättest Du bemerken können, dass Du die Formel C3 von mir aus auch 120 Spalten nach rechts kopieren können (vorher muss natürlich auch der Auswertungsbereich in der Formel entsprechend angepasst werden). Der/n Formel/n ist es egal, ob es dann 1 oder 37 oder 119 dargestellte Ergebnisswerte für den Lack gibt.
Analog gilt gleiches für C6 eben da nur nach unten.
Dein Argument bzgl Druckausgabe ist da wohl eher nebensächlich. Ich hatte nicht umsonst eingangs gefragt.
Allerdings kann ich auch mit den 120 Formeln plus einer Dein Wunschergebnis erzielen. Nur eben mit dem Unterschied, dass ich die 120 Formeln als Hilfszeile-Zellen auswerte, die man auch einfach ausblenden kann.
Gruß Werner
.. , - ...

Anzeige
AW: Du hast wohl noch nicht getestet, ...
17.02.2016 14:42:40
Alex
Hallo Werner,
ich habe nochmal mit deiner Lösung rumgespielt und dein Ergebnis dann einfach per Array zusammenfassen lassen und dann mit ";" getrennt in eine Zelle einfügen lassen. Dankeschön nochmal!
Die Frage ist damit beantwortet.
Viele Grüße
Alex

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige