AW: Erstellen eines Deckblattes aus Datensatz
01.12.2015 16:26:28
UweD
Hallo
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fehler
Dim Z As Double, TB1, TB2
If Not Intersect(Target, Columns(7)) Is Nothing Then
Set TB1 = ActiveSheet
Set TB2 = Sheets("Tabelle2")
Z = Target.Row
If WorksheetFunction.CountA(Range(Cells(Z, 1), Cells(Z, 7))) <> 7 Then
MsgBox " Alle Spalten der Reihe Ausfüllen"
Exit Sub
Else
With TB2
.Cells(2, 2) = TB1.Cells(Z, 2) ' Firma
.Cells(2, 6) = TB1.Cells(Z, 3) ' int. Re-Nr.
'.Cells(10, 2) = TB1.Cells(Z, ??) ' ext. Re-Nr.
.Cells(10, 6) = TB1.Cells(Z, 5) ' Abteilung.
.Cells(12, 2) = TB1.Cells(Z, 1) ' Eingang
.Cells(14, 2) = TB1.Cells(Z, 7) ' Fälligkeit.
.Cells(16, 2) = TB1.Cells(Z, 6) & " zus. Text" ' Skonto.
.Cells(16, 6) = TB1.Cells(Z, 4) ' Betrag.
.PrintOut
TB1.Cells(Z, 9) = "gedruckt"
End With
End If
End If
Err.Clear
Fehler:
If Err.Number <> 0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err. _
Clear
End Sub
- Rechtsclick auf den Tabellenblattreiter von Tabelle1
- Code anzeigen
- Das Makro dort reinkopieren
Wenn du in Spalte 1 anfängst und dich nach hinten durcharbeitest, wird, wenn du Spalte 7 verlässt
geprüft, ob alle Spalten gefüllt sind.
Dann werden die Daten übertragen und ausgedruckt
OK??
Gruß UweD