(I hope to have right understood the Q.)
In a report of mine I check for the available space before to print the column and if it is less than required I force a newpage.
Something like this
procedure TForm1.ColumnHeaderBeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean);
var
Needed: extended;
begin
DetailBand.ExpandedHeight(Needed); //get the height required by the detailband
Needed := Needed+Sender.Height; //add the columnheader height
if Needed > QuickRep1.availablespace then
//There is no more space in this page? Let's print on a new page
QuickRep1.newpage;
end;