Strickly speaking, you don't need charging current to balance.
However, you should not balance until a cell is above 3.4v to get a definitive determination of which cells have greater state of charge.
Much above 3.4v cell voltage means you must have charge current to achieve that high of cell voltage.
So by default, it pretty much means you will be charging cell when balancing is going on.,
Balancing with an active balancer with higher balancing current can cause significant cell overpotential bump up due to cell current. Where there is little to no actual charging current the balance current will be the dominate source of cell overpotential voltage and balancing is only applied to selected cells. For five amps balancing and little to no charging current, this can bump up or slump a cell getting a balance push or pull to be plus or minus 15-25 mV of cell voltage shift.
When there is significant charge current, which will be the same for all series connected cells, the higher charge current will dominate the cells overpotential bump and the balancing bump or slump will be insignificant.
There is one condition that really needs balancing with no charge current. If you have a cell go overvoltage and BMS shuts off charging current, you want the balancing to continue to discharge the overvoltage cell to get the BMS out of its shutdown condition.
Why do you think LiFePO4 BMS cell balance programs require a charge current to work ?
Daly BMS is one example.
Many BMS's have a very confusing named function mode switch called 'charge balance'. It requires the BMS to detect charge current before balancing is allowed when this mode is activated.
This video talks about this function.