You must examine that is the Memo empty or not using below code in Delphi in before print event:
if TfrxMemoView(frxReport.FindObject('Memo2')).Text = '' then
TfrxMemoView(frxReport.FindObject('Memo3')).Top := TfrxMemoView(frxReport.FindObject('Memo2')).Top;