Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Zeile n-mal kopieren, n steht in einer Spalte

777 views
Skip to first unread message

M. Wimmer

unread,
Nov 25, 1999, 3:00:00 AM11/25/99
to
Servus!

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.


Thomas Nordhaus

unread,
Nov 25, 1999, 3:00:00 AM11/25/99
to

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

Franz-Josef Raabe

unread,
Nov 26, 1999, 3:00:00 AM11/26/99
to
Hallo Manfred,

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:

Marco Amistadi

unread,
Nov 27, 1999, 3:00:00 AM11/27/99
to
> P.S. 7.0 benutzt noch die deutsche SPRACHSYNTAX. Aber es geht analog

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

M. Wimmer

unread,
Nov 30, 1999, 3:00:00 AM11/30/99
to

Franz-Josef Raabe schrieb in Nachricht <383E5348...@Rhein-Main.Net>...

>Hallo Manfred,
>
>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.


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.

0 new messages