AW: Spielbericht drucken
02.01.2007 15:47:38
fcs
Hallo Andy,
hier das entsprechend angepasste Makro, das du im VBA-Editor nach Doppelklick auf "Tabelle5(Spielnummern)" im rechten Fenster einfügen muss.
Falls das Makro auch in der Spalte "Zeit" die Uhrzeit der Eingabe des Feldes eintragen soll (statt der Formel), dann muss du in der entsprechenden Zeile das Kochkomma am Zeilenanfang löschen.
Gruß
Franz
Private Sub Worksheet_Change(ByVal Target As Range)
'Prüfung der Wertänderung in Spalte O ab Zeile 2
If Target.Column = 15 And Target.Row > 1 Then
Call Spielbericht(Target.Row, Me, ActiveWorkbook.Worksheets("Spielbericht"))
End If
End Sub
Sub Spielbericht(Zeile As Long, BlattListe As Worksheet, BlattBericht As Worksheet)
If MsgBox("Spielbericht drucken?", vbYesNo, "Spielbericht") = vbNo Then Exit Sub
With BlattBericht
'Alt-Daten im Spielbericht löschen
.Range("B3:B4").ClearContents 'Klasse, Runde
.Range("D3:D4").ClearContents 'Disziplin,Gruppe
.Range("G2:G4").ClearContents 'Spielnummer, Leistungsklasse, Spiel
.Range("A7:C8").ClearContents 'Daten Team 1
.Range("E7:G8").ClearContents 'Daten Team 2
'Daten aus Liste in Spielbericht übertragen
.Range("G2").Value = BlattListe.Cells(Zeile, "A") 'Spielnummer
.Range("B3").Value = BlattListe.Cells(Zeile, "B") 'Altersklasse
.Range("B4").Value = BlattListe.Cells(Zeile, "E") 'Runde
.Range("D3").Value = BlattListe.Cells(Zeile, "C") 'Disziplin
.Range("D4").Value = BlattListe.Cells(Zeile, "F") 'Gruppe
.Range("G3").Value = BlattListe.Cells(Zeile, "D") 'Leistungsklasse
.Range("G4").Value = BlattListe.Cells(Zeile, "G") 'Spiel
.Range("A7:C7").Value = BlattListe.Cells(Zeile, "H").Range("A1:C1").Value 'Team 1, Spieler 1
.Range("A8:C8").Value = BlattListe.Cells(Zeile + 1, "H").Range("A1:C1").Value 'Team 1, Spieler 2
.Range("E7:G7").Value = BlattListe.Cells(Zeile, "L").Range("A1:C1").Value 'Team 2, Spieler 1
.Range("E8:G8").Value = BlattListe.Cells(Zeile + 1, "L").Range("A1:C1").Value 'Team 2, Spieler 2
' .PrintPreview 'Druck-Vorschau
.PrintOut 'Ausgabe auf Drucker
End With
'Eingabe-Zeit in Spalte P der Liste eintragen
' BlattListe.Cells(Zeile, "P").Value = Now - Date
End Sub