Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1384to1388
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
Inhaltsverzeichnis

Schleife in Spalte durchlaufen, Kopieren und druck

Schleife in Spalte durchlaufen, Kopieren und druck
16.10.2014 00:30:38
Ron
Hallo Ihr Excelfans,
ich brauche heute wieder mal Hilfe.
Folgendes Ziel verfolge ich:
Ich möchte in Tabelle 1 ab Zelle F5 die Spalte F bis Ende der genutzten Zeilen durchsuchen. Wenn ein Eintrag vorhanden ist, soll der Wert aus F in Tabelle 2 Ao3 kopiert werden, danach aus Tabelle 1 aus der Spalte E der gefundenen Zeile in Tabelle 2 AN3 kopiert werden und dann die Tabelle 2 ausgedruckt werden. Wie kann ich am Anfang einen Druckdialog mit einbauen, der die Wahl eines entsprechenden Druckers für die gesamte Schleife ermöglicht?
Kann jemand helfen?
Liebe Grüße
Ron

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife in Spalte durchlaufen, Kopieren und druck
16.10.2014 06:36:51
Martin
Hallo Ron,
ungestestet, aber theoretisch sollte es so klappen:
Sub Beispiel()
Dim iRow As Long, iLastRow As Long
Application.Dialogs(xlDialogPrinterSetup).Show
With Sheets("Tabelle1").Columns(6)
iLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For iRow = 5 To iLastRow
If .Cells(iRow, 6).Value  Empty Then
Sheets("Tabelle2").Range("AO3") = .Cells(iRow, 6).Value
Sheets("Tabelle2").Range("AN3") = .Cells(iRow, 7).Value
Sheets("Tabelle2").PrintOut
End If
Next
End With
End Sub
Viele Grüße
Martin

...doch einen kleinen Fehler gefunden
16.10.2014 06:41:18
Martin
Hallo Ron,
hatte irgendwie überlesen, habe versehentlich die Spalte danach (G) statt der Spalte davor (E) übertragen. Also hier noch einmal (hoffentlich) richtig:
Sub Beispiel()
Dim iRow As Long, iLastRow As Long
Application.Dialogs(xlDialogPrinterSetup).Show
With Sheets("Tabelle1").Columns(6)
iLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For iRow = 5 To iLastRow
If .Cells(iRow, 6).Value  Empty Then
Sheets("Tabelle2").Range("AO3") = .Cells(iRow, 6).Value
Sheets("Tabelle2").Range("AN3") = .Cells(iRow, 5).Value
Sheets("Tabelle2").PrintOut
End If
Next
End With
End Sub
Viele Grüße
Martin

Anzeige
AW: ...doch einen kleinen Fehler gefunden
16.10.2014 12:14:54
Ron
Hallo Martin,
erst einmal vielen Dank für die schnelle Meldung. Habe es einmal getestet, läuft noch nicht so richtig. Trotz Eintrag in F5 und F7 springt das Makro gleich an die End If Anforderung. Kann mir keinen Reim drauf machen. In der F Spalte sind jeweils Zahlenwerte eingetragen...
Er prüft mit:
For iRow = 5 To iLastRow
If .Cells(iRow, 6).Value Empty Then
und springt dann gleich zum Ende der IF Anweisung.
Hast Du noch eine Idee?
Grüße
Ron

AW: ...doch einen kleinen Fehler gefunden
16.10.2014 12:21:54
Martin
Hallo Ron,
das wahr wohl noch zu früh am morgen. Ich frage mich gerade, warum ich Columns(6) geschrieben habe.
Also ein neuer Versuch:
Sub Beispiel()
Dim iRow As Long, iLastRow As Long
Application.Dialogs(xlDialogPrinterSetup).Show
With Sheets("Tabelle1")
iLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For iRow = 5 To iLastRow
If .Cells(iRow, 6).Value  Empty Then
Sheets("Tabelle2").Range("AO3") = .Cells(iRow, 6).Value
Sheets("Tabelle2").Range("AN3") = .Cells(iRow, 5).Value
Sheets("Tabelle2").PrintOut
End If
Next
End With
End Su
Viele Grüße
Martin

Anzeige
AW: ...doch einen kleinen Fehler gefunden
16.10.2014 12:47:33
Ron
Hallo Martin,
das mit früh und spät kenne ich auch nur zu gut:). Die Columns Anweisung fand ich zwar logisch - war aber der Teufelsfuß. Vielen Dank für Deine Hilfe, passt jetzt alles!
Viele Grüße
Ron

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige