Excell Formular ausfüllen

Hallo Leute,
Ich möchte in VBA eine Schleife basteln, die die Zeilen der Tabelle „Daten“ nacheinander ausliest und dann in das zweite Tabellenblatt „Formular“ einsetzt.
Soll dann eine For next Schleife werden.
Könnt Ihr mir den Anfang geben, ich hab das lange nicht mehr gemacht.

Gruß Christian

Hallo Christian,

Ich möchte in VBA eine Schleife basteln, die die Zeilen der
Tabelle „Daten“ nacheinander ausliest und dann in das zweite
Tabellenblatt „Formular“ einsetzt.

Frage, ist das Blatt "Formular ein normales Blatt oder ein besonderes Blatt?
Der Begriff "Formulr ist mehrdeutig.

Soll dann eine For next Schleife werden.
Könnt Ihr mir den Anfang geben, ich hab das lange nicht mehr
gemacht.

Ich weiß bislang nicht genau was du vorhast. Ich weiß aber daß mit For Next alle Zellen/Zeilen abzuklapperen recht langsam ist.
Klar, bei 100 Zeilen nicht merkbar, bei 1 Mio Zellen aber schon deutlich.

Wie auch immer müßtest du m.E. mehr Infos liefern. Z,B, sollen alle Datenzeilen in das andere Blatt geschaufelt werden oder sollen die gefiltert werden.
Und wohin sollen sie im anderen Blatt, Unten, oben, einsortiert, sonstwas,…

Gruß
Reinhard

Gruß Christian

Hallo Christian,

Hallo Reihard,

Frage, ist das Blatt "Formular ein normales Blatt oder ein
besonderes Blatt?
Der Begriff "Formulr ist mehrdeutig.

als Formular meinte ich natürlich ( Du hast natürlich Recht…) ein Tabellenblatt

Ich weiß bislang nicht genau was du vorhast. Ich weiß aber daß
mit For Next alle Zellen/Zeilen abzuklapperen recht langsam
ist.
Klar, bei 100 Zeilen nicht merkbar, bei 1 Mio Zellen aber
schon deutlich.

Wie auch immer müßtest du m.E. mehr Infos liefern. Z,B, sollen
alle Datenzeilen in das andere Blatt geschaufelt werden oder
sollen die gefiltert werden.
Und wohin sollen sie im anderen Blatt, Unten, oben,
einsortiert, sonstwas,…

… sind ca. 30 Zeilen…

also For next - Schleife reicht völlig…

Wichtig ist mir, dass ich nicht dreißig mal das Formulare auf dem neuen Tabellenblatt bastle, sondern nur ein Formular und die Zeilen auf der Datentabelle einzeln ausgelesen werden und dann eingetragen und das Formular jeweils ausgedruckt werden.
(Die ganze Aktion soll einen Serienbrief in Word einsparen, weil mir das umschalten und ausdrucken nicht passt…)

Gruß Christian

… sind ca. 30 Zeilen…

also For next - Schleife reicht völlig…

Wichtig ist mir, dass ich nicht dreißig mal das Formulare auf
dem neuen Tabellenblatt bastle, sondern nur ein Formular und
die Zeilen auf der Datentabelle einzeln ausgelesen werden und
dann eingetragen und das Formular jeweils ausgedruckt werden.
(Die ganze Aktion soll einen Serienbrief in Word einsparen,
weil mir das umschalten und ausdrucken nicht passt…)

Hallo Christian,

der Druckbefehl lautet .PrintOut aber zum testen reicht .PrintPreview aus und spart Papier.
Tabelle1!A1:B1 sind die Überschriften deiner Datenzeilen, die Datenzeilen stehen in Tabell1!A2:Bx
Tabelle2!B8 und Tabelle2!D5 sind die Zielzellen im „Formular“ = Tabelle2.

Gruß
Reinhard

in ein Standardmodul:

Option Explicit

Sub Serie()
Dim Zei As Long, wksF As Worksheet
Set wksF = Worksheets("Tabelle2")
With Worksheets("Tabelle1")
 For Zei = 2 To .Cells(.Rows.Count, "A").End(xlUp).Row
 .Cells(Zei, "A").Copy wksF.Range("D5")
 .Cells(Zei, "B").Copy wksF.Range("B8")
 wksF.PrintPreview
 Next Zei
 wksF.Range("D5,B8").ClearContents
End With
End Sub

…oberklasse…

Danke Reinhard

Eine Frage noch, gibt es da so etwas wie einen Zähler davor, damit er nach dem Druck die Schleife so lange ausführt, bis alle Zeilen in der Tabelle1 „Daten“ abgearbeitet sind ?

Gruß Christian

Eine Frage noch, gibt es da so etwas wie einen Zähler davor,
damit er nach dem Druck die Schleife so lange ausführt, bis
alle Zeilen in der Tabelle1 „Daten“ abgearbeitet sind ?

Hallo Christian,

entschuldige, aber ich verstehe deine Frage nicht.

Wieso einen Zähler vor der For-Schleife? Die For-Schleife ist doch selbst der Zähler.
For Zei = 2 To .Cells(.Rows.Count, „A“).End(xlUp).Row
Hast du in der Datentabelle 35 Zeilen so durchläuft die Variable „Zei“ die Zahlen 2 bis 35. Da der Druckbefehl IN der Schleife steht wird er 34 mal ausgeführt.

Was genau ist dir noch unklar?

Gruß
Reinhard

Was genau ist dir noch unklar?

Gruß
Reinhard

Sorry Reinhard,

wer lesen kann ist klar im Vorteil !! - Mein Fehler !

Ich danke Dir außerordentlich für Deine Unterstützung

Christian