Hi. Ich habe hin und wieder das Problem, dass ein Bericht, welcher Gruppiert ist, eine neue Gruppe kurz vor dem Seitenende beginnt. Somit habe ich dann z.B. nur die Gruppenüberschrift dort stehen und auf der nächsten Seite beginnt dann der Detailsbereich.
Ist es nicht irgendwie möglich, dass der Bericht erkennt, dass nur noch wenig Platz zum Seitenende ist, einen Seitenumbruch einbaut und die komplette Gruppe auf der nächsten Seite "abarbeitet"?
LG
datekk
Hallo,
eine Gruppe hat auch die Eigenschaft "Zusammen halten", gibt es sowohl im Gruppieren Fenster als auch in den Eigenschaften des Bereichs. Damit solltest Du mal etwas rum probieren .
Da gibt es wiederum das Problem, dass Access mit der kompletten Gruppe auf der nächsten freien Seite beginnt und die vorherige dann z.B. nur halb oder viertel voll ist. Es handelt sich um Angebote welche direkt an meine Kunden gehen. Das sollte ordentlich und professionell aussehen. Gibt es da andere Möglichkeiten?
Hallo,
Zitatdass der Bericht erkennt, dass nur noch wenig Platz zum Seitenende ist
Der Bericht kann halt mit "wenig" nix anfangen.....
Schau mal bei lebans.com nach, ob es dort ein Beispiel zur Vermeidung solcher "Schusterjungen" gibt....
Den Bericht als Word-Dokument auszuführen und mit den Access-Daten zu befüllen wäre eine Alternative.
Hi,
ZitatDa gibt es wiederum das Problem, dass Access mit der kompletten Gruppe auf der nächsten freien Seite beginnt
dazu sollte es die Einstellung "Zusammenhalten mit 1. Datensatz" geben.
Hallo Maggi,
wo finde ich diese Einstellung?
Problem ist:
Kopfbereich / Überschrift
Detail
Detail
Detail
Kopfbereich / Überschrift
Seitenende
nächste Seite
Detail
Detail
Detail
Der Kopfbereich müsste mit dem Detailbereich zusammengehalten werden können.
Hallo,
zu finden im Fenster für das Gruppieren, als eine der Möglichkeiten zum Zusammenhalten.
Auf das Gruppierenfenster hate ich weiter oben (in #1) schon hingewiesen.
Hi,
das "Gruppenfenster" gibt es ja leider in der gewohnten Form nicht mehr, statt dessen klickt man auf "mehr" im Gruppeneintrag und dann auf "... zusammenhalten". Dort kann dann die Option "Kopfzeile und ersten Datensatz auf einer Seite zusammenhalten" gewählt werden.
Die Eigenschaft "Zusammenhalten" des Gruppenkopfes sollte dann wohl auf "Nein" eingestellt werden. Auch die Eigenschaft "Bereich wiederholen" könnte für dich von Interesse sein.
Gibt es dafür auch vba code? Die Berichtsgruppierung wird bei mir durch VBA Code vorgenommen und kann sich je nach Situation auch ändern.
Dann zeig doch bitte mal deinen VBA-Code, damit man ihn ergänzen kann.
Das sieht z.B. so aus:
If Me.OpenArgs = "Angebot" Then
Select Case Forms!frm_Angebotsdruck_Optionen!Formatwahl
Case "normal":
Me.GroupLevel(0).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(1).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(2).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(3).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(4).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(5).ControlSource = "Ausgabe"
Me.GroupLevel(6).ControlSource = "Ausgabe"
Me.GroupLevel(7).ControlSource = "Ausgabe"
Me.GroupLevel(8).ControlSource = "ET"
'Me.GroupLevel(9).ControlSource = "Ausgabe"
Me.OrderBy = "ET"
Me.OrderByOn = True
Case "nach Format":
Me.GroupLevel(0).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(1).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(2).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(3).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(4).ControlSource = "Format"
Me.GroupLevel(5).ControlSource = "Format"
Me.GroupLevel(6).ControlSource = "Format"
Me.GroupLevel(7).ControlSource = "Format"
Me.GroupLevel(8).ControlSource = "Ausgabe"
Me.OrderBy = "ET"
Me.OrderByOn = True
End Select
End If
If Me.OpenArgs = "Auftrag" Then
Me.GroupLevel(0).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(1).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(2).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(3).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(4).ControlSource = "AngebotAuftrag_ID"
Me.GroupLevel(5).ControlSource = "Ausgabe"
Me.GroupLevel(6).ControlSource = "Ausgabe"
Me.GroupLevel(7).ControlSource = "Ausgabe"
Me.GroupLevel(8).ControlSource = "Ausgabe"
Me.OrderBy = "ET"
Me.OrderByOn = True
End If
hi,
die Access-Hilfe gibt zur Eigenschaft GroupLevel folgende Informationen, inkl. weiterführende Links:
ZitatAnmerkung Sie können diese Eigenschaft nur in Visual Basic verwenden, um die Eigenschaften SortOrder, GroupOn, GroupInterval, KeepTogether und ControlSource festzulegen. Sie legen diese Eigenschaften in der Open-Ereignisprozedur eines Berichts fest.
Damit sollte sich doch wohl etwas anfangen lassen.