Excel: Platzhalter ersetzen und multiplizieren

...komplette Frage anzeigen

3 Antworten

Nein, einfach ist die Aufgabe nicht (xl ist auf Kombinatorik nicht allzugut eingerichtet) und Maxs Vorschlag für ein Makro mit zwei Schleifen ist tatsächlich der Beste.
Wenn Du aber eine Formel willst: ich hab da was ausgebrütet für 10x10, das ließe sich aber einfach ändern auf 100x100.
Die zu kombinierenden Werte stehen in A3:B12, die Formel in C3. Gibt vllt bessere Lösungen, ich hab das durch Ausprobieren und Substituieren von Formelteilen erstellt, ist ein ziemliches Ungetüm geworden:

C3: =INDEX(A$3:A$12;REST(ZEILEN(C$3:C3)-1;10)+1)&INDEX($B$3:$B$12;WENN(REST(REST(ZEILEN(C$3:C3)-1;10)+AUFRUNDEN(ZEILEN(C$3:C3)/10-0,001;0);10)=0;10;REST(REST(ZEILEN(C$3:C3)-1;10)+AUFRUNDEN(ZEILEN(C$3:C3)/10-0,001;0);10)))

(hier kopieren, in C3 einfügen, runterziehen bis Zeile 102, dann fängts wieder von vorne an. Du musst alle 10 zu 100 ändern, aber probiers erst mal so aus!)
Die Formel besteht aus der ersten-sich immer wiederholenden -und kürzeren- Teilformel1 (i.F: TFo1) und der wandernden Teilformel2 (TFo2)

Noch viel "ungetümer" wird die Formel aber, wenn Du den Text nochmal am Platzhalter spalten musst:

=links(TFo1;finden("$$$";TFo1;1)-1)&" "&TFo2&" "&Teil(TFo1;finden("$$$";TFo1;1)+3+1;999)

Dabei ist +3 die Länge des Platzhalters und +1 der Ort eins rechts von finden+3, ebenso wie -1 der Ort eins links von Finden("$$$"... ist.

Die Leerzeichen sind vorsichtshalber eingefügt, sie könnten ja schon vorgegeben sein?
xl sollte das auch 10.000 mal in recht kurzer Zeit schaffen, zu durchschauen ist diese Formel später kaum noch! (ich weiß aber keine bessere, ausser der Makro-Schleife:
wenn Du die brauchst, kann ich dir das Makro am Di oder Mi liefern, aber nur auf Nachfrage!).
Viel Erfolg!

Nun, das kannst du mit einem ziemlich einfachen VBA-Makro erledigen: Eine doppelte Schleife über die Sätze und die Namen.

Im neuen Excel (2010) kannst du die dann tatsächlich in eine neue Spalte ablegen (soviel ich weiß), beim alten wäre bei ca. 65000 Schluß. Aber da könntest du die Ergebnis-Sätze mit debug.print ausgeben und das Ergebnis sonstwohin kopieren.

Gruß, Max.

debug print macht nach 256 Zeilen schluss (oder ist da auch eine Neuerung?) bzw wirft die vorherigen Einträge raus.
Aber 100x100 ist nur 10.000 !
Man kann aber auch ein Feld mit 100 Zeilen und 100 Spalten erstellen und so alle Variatiionen darstellen! Würde nur sehr breit!

0

Ich weiss leider keine antwort kann dir aber sagen das Excel eher für berechnungen gedacht ist. Bei 100 Namen würd ich den Copy Past (Ctrl.+C / Ctrl.+V) befehl nehmen.

Hoffe konnte dir trotzdem weiterhelfen ;-)

10.000 mal???
Da lohnt es sich, etwas Grips reinzustecken, das ist keine Spielerei mehr (Es sei denn, die Aufgabe selbst ist Spielerei)

0

Was möchtest Du wissen?