Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
960to964
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
960to964
960to964
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA Schleife

VBA Schleife
13.03.2008 14:07:06
Christian
Hallo,
Der Makro soll auf dem Tabellenblatt "Kundenliste" ab Zeile 3, jede Zeile nacheinander in die Zeile 2 kopieren und dann auf das Tabellenblatt "Honorarabrechnung" springen, dieses ausdrucken und dann wieder auf das Tabellenblatt "Kundenliste" springen die 4 Zeile in die 2 Zeile kopieren --> Das Tabellenblatt "Honorarabrechnung" ausdrucken und dann die 5 Zeile auf dem Tabellenblatt " Kundenliste " in die 2 Zeile kopieren usw.
Ich habe diesen Makro aufgezeichnet.

Sub Makro1()
' Makro1 Makro
Rows("3:3").Select
Selection.Copy
Rows("2:2").Select
ActiveSheet.Paste
Sheets("Honorarblatt").Select
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Sheets("Kundenliste").Select
Rows("4:4").Select
Selection.Copy
Rows("2:2").Select
ActiveSheet.Paste
Sheets("Honorarblatt").Select
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub


Nachdem ich in der Uni ein bischen VBA gelernt habe, habe ich an eine Schleife gedacht.
Etwas so in der Art


Sub Honorarberechnung()
Do Until ActiveRows.Value = ""
Sheets("Kundenliste").Select
Rows("3:3").Select
Selection.Copy
Rows("2:2").Select
ActiveSheet.Paste
Sheets("Honorarblatt").Select
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Loop
End Sub


Aber nachdem ich nciht mehr so wirklich fit in VBA bin, wäre ich für eure Hilfe sehr dankbar!!
Grüße
Christian

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Schleife
13.03.2008 14:13:00
Rudi
Hallo,

Sub Abrechnung()
Dim lngRow As Long
Application.ScreenUpdating = False
With Sheets("Kundenliste")
For lngRow = 3 To .Cells(Rows.Count, 1).End(xlUp).Row
.Rows(lngRow).Copy .Rows(2)
Sheets("Honorarblatt").PrintOut
Next lngRow
End With
Application.ScreenUpdating = True
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: VBA Schleife
13.03.2008 14:29:00
Christian
Da passiert bei mir gar nichts, wenn ich das eingebe!!
Bei mir steht im Tabellenblatt "Kundenliste" erst in Spalte C etwas.
Die Werte die ich in die 2 Zeile kopiere werden dann in das Tabellenblatt "Honorarabrechnung" kopiert.
Hier besteht eine Verknüpfung zwischen den beiden Tabellenblättern.
Früher hat mein Kollege jede Zeile des Tabellenblattes "Kundenliste" in die 2 Zeile ( vom Tabellenblatt "Kundenliste") kopiert und dann das Tabellenblatt "Honorarabrechnung" ausgedruckt.
Diese Schritte hat er dann für 50 Kunden also 50 mal gemacht

Anzeige
AW: VBA Schleife
13.03.2008 15:25:52
Rudi
Hallo,

Bei mir steht im Tabellenblatt "Kundenliste" erst in Spalte C etwas.


glaubst du, ich bin Hellseher?
Du hast doch mal VBA gelernt. Analysiere den Code und passe ihn an.
Diese Zeile


For lngRow = 3 To .Cells(Rows.Count, 1).End(xlUp).Row


sollte schuld sein.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige