Angenommen, in einer Tabelle stehen einige Zeilen, die wie folgt aussehen:
(der | stellt die Spaltengrenze dar)
| EAX3YZRU | 3 |
| EBZKLOHP | 5 |
...dann soll daraus folgendes entstehen:
| EAX3YZRU | 3 | 1 |
| EAX3YZRU | 3 | 2 |
| EAX3YZRU | 3 | 3 |
| EBZKLOHP | 5 | 1 |
| EBZKLOHP | 5 | 2 |
| EBZKLOHP | 5 | 3 |
| EBZKLOHP | 5 | 4 |
| EBZKLOHP | 5 | 5 |
es soll also die Zeile so oft kopiert werden wie die Zahl in einer
bestimmten Spalte angibt. Außerdem wäre es noch super, wenn in einer
weiteren Spalte von eins beginnend hoch gezählt würde.
Übrigens: Derzeit arbeite ich noch mit Version 7.0
Ich danke Euch für Eure Unterstützung!
Manfred W.
Hallo Manfred,
für ein explizites PROGRAMM bin ich jetzt zu faul. Aber es gibt zwei
Möglichkeiten. Wenn das Ergebnis in einer anderen Tabelle stehen darf
ist es am einfachsten: Es geht mit einer For ... Next Schleife wobei
der obere Index aus der erstem Tabelle gelesen wird.
Wenn es in der selbe Tabelle eingefügt werden muß ist es komplzierter,
da du genau über den Zeilenindex buchführen mußt. Verwende zu einfügen
die insert-Methode.
Ich empfehle dir also, dich etas in die VBA-Programmierung einzulesen.
Gruß,
Thomas
P.S. 7.0 benutzt noch die deutsche SPRACHSYNTAX. Aber es geht analog
ohne VBA geht es auch. Text in Spalte A, Anzahl in Spalte B, jeweils ab
Zeile 1.
Dann in C1, F1 und G1 die Zahl 1 setzen.
In D1: =INDIREKT("A" & $C1), nach D2 kopieren,
In E1: =INDIREKT("B" & $C1), nach E2 kopieren,
in C2: =WENN($F2=1;C1+1;C1)
in F2: =WENN(F1=E1;1;F1+1)
in G2: =G1+1
Bereich D2:G2 markieren, mit Maus nach unten ziehen.
MfG
Franz-Josef
M. Wimmer schrieb:
Hallo Thomas,
es verwendet auch die Englische Syntax. In einer Tabelle verwenden IMO alle
Excel's die deutschen Befehle. D.h. du kannst in XL7 Deutsche wie auch
Englische Makros zum laufen bringen, nur die Deutschen laufen ab XL8 nicht
mehr soooooo reibungslos wegen der Übersetzung :(. Handarbeit ist da dann
angesagt:
MFG
Marco
--
mailto:ex...@pixeltester.de
http://www.pixeltester.de
Herzlichen Dank für Deinen Vorschlag!
Ohne Deine Tips wäre ich wie der "Ochs vor dem Tor" vor dieser Aufgabe
gestanden....
Wahrscheinlich ist es ein Tippfehler: Der Bereich, den man mit der Maus nach
unten ziehen muß, beginnt bei C2.
Die Bedingung WENN(F1=E1;1;F1+1) wurde nie wahr. Nach einigem probieren hat
sich gezeigt, daß =WENN(WERT(E1)=WERT(F1);1;F1+1) funktioniert.
Dies für alle, die sich ebenfalls für die Lösung interessiert haben.
Schönen Dank noch 'mal
Manfred W.