Try using a string variable formula. Something like:
whileprintingrecords;
global stringvar sRemarks:=sRemarks & (if next({table.EmpID})={table.EmpID}
or previous({table.EmpID})={table.EmpID}
then {table.Remarks} & ','
else '';
sRemarks;
You will have to make two more formulas: One that will restart it on the Emp ID group and one that will display it on the detail line.
The restart formula will just be:
Whileprintingrecords;
global stringvar sRemarks:=''
and the display one will be:
whileprintingrecords;
global stringvar sRemarks;
Place the restart formula in the Emp ID Group Header and the display one on the detail line. Also place the calculate formula in the detail line, but suppress it.
Then suppress the detail lines when {table.EmpID}=next({table.EmpID}).
You'll have to throw something in there for when it reaches the last record also so maybe:
(not onlastrecord
and
{table.EmpID}=next({table.EmpID}))
Not sure if the logic is completely sounds, but it may give you a good starting point.