Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1280to1284
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

Werte in eine 3x16 Matrx schreiben

Werte in eine 3x16 Matrx schreiben
19.10.2012 22:20:04
Michael
Liebe Excel Fachleute,
ich sitze seit einiger Zeit an einem Problem, habe verschiedene Lösungsansätze versucht, bin aber zu keinem Ergebnis gekommen. Zur Veranschaulichung habe ich ein Beispielblatt angefügt.
https://www.herber.de/bbs/user/82209.xls
In einem Tabellenblatt werden nacheinander bis zu 60 Eingabe getätigt, die in einem Protokoll entsprechend automatisch ausgegeben werden sollen.
In diesem Ausgabeprotokoll gibt es zwei Tabellen mit 4 Spalten und 16 Zeilen, wobei die ersten Spalte jeweils von 1 bis 16 durchnummeriert ist.
Ich habe die einzelnen Eingabewerte schon in einer Spalte zusammengefasst, die Werte lauten z.B. "W2A", "B13S", W10AS" - die Systematik sollte also erkennbar sein. Der 1. Wert bezeichnet die Zieltabelle, der nummerische Wert die Zeilenzahl der Zieltabelle (bei x Zeile 16 - Beispiel "Wxau"), der Rest ist der Text, der in die Zieltabelle eingetragen werden soll. Es gibt noch andere Werte für Texte, z.B. "W4T", die aber nicht in diese Zieltabelle eingetragen werden.
Als Regel für das Eintragen in die jeweilige Zieltabelle gilt: Für jede Nummer (nummerischer Wert) sind max. 3 Einträge (Spalte 2 - 4 der Zieltabelle) möglich, beginnend mit Spalte 2 in Abhängigkeit der Zeilenzahl - kleinste, nächst höhere Spalte 3, höchste Spalte 4 - der Eingabezelle.
Da die eingebenenen Werte dynamisch sind und im Nachhinein auch geändert werden können, müssten auch die beiden Zieltabellen dynamisch ausgefüllt werden.
Vielleicht hat der eine oder andere einen Vorschlag, wie ich an das Problem herangehen kann. Ich habe einen Ansatz in Basic - habe ich in den 80er und 90er programmiert, aber keine Ahnung von der speziellen Syntax von VBA. Einen fertigen VBA Code könnte ich aber im prinzipiellen Ablauf - DIM, Variablenübergabe, Schleifen usw. - verstehen und ggf. an das originale Tabellenblatt anpassen.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte in eine 3x16 Matrx schreiben
19.10.2012 22:29:01
Michael
Kleine Korrektur:
Im Beispiel muss die Überschrift von Spalte B natürlich lauten: Zusammenfassung der Spalten C-E.
In die Spalten C, D, und E werden die Werte eingegeben.

AW: Werte in eine 3x16 Matrx schreiben
20.10.2012 03:16:10
Christian
Hallo,
ein Ansatz mit Formeln:
 ABCDEFGHIJKLM
1Zeilenzahl Excel BlattZusammenfassung  der Spalten C-EWEISSBLAUTEXTZieltabelle WZieltabelle B
27W10t10 t1   1   
38B3a 3a2t  2t  
49W12s12 s3s  3aa 
510W2t2 t4   4   
611W12a12 a5   5ta 
712B3a 3a6   6   
813Bxau xau7   7   
914B2t 2t8   8   
1015B5t 5t9   9   
1116B5a 5a10t  10   
1217W3s3 s11   11   
1318    12sa 12   
1419    13   13   
1520    14   14   
1621    15   15   
1722    16   16au  

Formeln der Tabelle
ZelleFormel
G2{=WENN(UND($F2=16;SPALTE(A1)<=ZÄHLENWENN($C:$C;"x")); INDEX($E:$E;KKLEINSTE(WENN($C$1:$C$100="x";ZEILE($1:$100)); SPALTE(A1))); WENN(SPALTE(A1)>ZÄHLENWENN($C:$C;$F2); "";INDEX($E:$E;KKLEINSTE(WENN($C$1:$C$100=$F2;ZEILE($1:$100)); SPALTE(A1)))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


 K
2 

Formeln der Tabelle
ZelleFormel
K2{=WENN(UND($J2=16;SPALTE(A1)<=ZÄHLENWENN($D:$D;"x")); INDEX($E:$E;KKLEINSTE(WENN($D$1:$D$100="x";ZEILE($1:$100)); SPALTE(A1))); WENN(SPALTE(A1)>ZÄHLENWENN($D:$D;$J2); "";INDEX($E:$E;KKLEINSTE(WENN($D$1:$D$100=$J2;ZEILE($1:$100)); SPALTE(A1)))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
MfG Christian

Anzeige
AW: Werte in eine 3x16 Matrx schreiben
20.10.2012 11:17:13
Michael
Vielen Dank, der Ansatz funktioniert sehr gut und es werden alle Texte in die entsprechenden Zellen der Zieltabellen korrekt geschrieben, auch nach Übertrag der Formeln in mein originales Arbeitsblatt.
Auch war es mir möglich, die Protokollausgabe mit den Werten aus den Zieltabellen zu steuern.
So weit, so gut:
Bei der Lösung fehlt eigentlich nur noch den Text "t" generell zu elimieren, denn Eingaben mit "t" werden für eine andere Berechnung benötigt und dürfen nicht in die Zieltabellen eingetragen werden.
Eigentlich sollte das einfach über eine WENN Abfrage ="t" zu bewerkstelligen sein, aber ich bekomme das nicht hin.
Any ideas?

Anzeige
AW: Werte in eine 3x16 Matrx schreiben
21.10.2012 13:27:54
Christian
Hallo,
Vorschlag:
 ABCDEFGHIJKLM
1Zeilenzahl Excel BlattZusammenfassung  der Spalten C-EWEISSBLAUTEXTZieltabelle WZieltabelle B
27W10t10 t1   1   
38B3a 3a2   2   
49W12s12 s3s  3aa 
510W2t2 t4   4   
611W12a12 a5   5a  
712B3a 3a6   6   
813Bxau xau7   7   
914B2t 2t8   8   
1015B5t 5t9   9   
1116B5a 5a10a  10   
1217W3s3 s11   11   
1318W10a10 a12sa 12   
1419    13   13   
1520    14   14   
1621    15   15   
1722    16   16au  

Formeln der Tabelle
ZelleFormel
G2{=WENN(UND($F2=16;SPALTE(A1)<=ZÄHLENWENN($C:$C;"x")); INDEX($E:$E;KKLEINSTE(WENN($C$1:$C$100="x";ZEILE($1:$100)); SPALTE(A1))); WENN(ISTFEHLER(WENN(SPALTE(A1)>ZÄHLENWENN($C:$C;$F2); "";INDEX($E:$E;KKLEINSTE(WENN(($C$1:$C$100=$F2)*($E$1:$E$100<>"t"); ZEILE($1:$100)); SPALTE(A1))))); "";WENN(SPALTE(A1)>ZÄHLENWENN($C:$C;$F2); "";INDEX($E:$E;KKLEINSTE(WENN(($C$1:$C$100=$F2)*($E$1:$E$100<>"t"); ZEILE($1:$100)); SPALTE(A1))))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


 K
2 

Formeln der Tabelle
ZelleFormel
K2{=WENN(UND($J2=16;SPALTE(A1)<=ZÄHLENWENN($D:$D;"x")); INDEX($E:$E;KKLEINSTE(WENN($D$1:$D$100="x";ZEILE($1:$100)); SPALTE(A1))); WENN(ISTFEHLER(WENN(SPALTE(A1)>ZÄHLENWENN($D:$D;$J2); "";INDEX($E:$E;KKLEINSTE(WENN(($D$1:$D$100=$J2)*($E$1:$E$100<>"t"); ZEILE($1:$100)); SPALTE(A1))))); "";WENN(SPALTE(A1)>ZÄHLENWENN($D:$D;$J2); "";INDEX($E:$E;KKLEINSTE(WENN(($D$1:$D$100=$J2)*($E$1:$E$100<>"t"); ZEILE($1:$100)); SPALTE(A1))))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
MfG Chrisian

Anzeige
AW: Werte in eine 3x16 Matrx schreiben
21.10.2012 23:46:18
Michael
Super , vielen lieben Dank - klappt alles wunderbar.

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige