You are right. At this moment changing the captain will totally affect the dressing room atmosphere. But this is the right time to change the captaincy. Rohit Sharma is a successful captain in T20 matches, this is what we saw in IPL. So for the T20 format, Rohit Sharma is tested as a captain to see if he is suitable for the captaincy in an international match. We have seen in many cricket teams around the world different captains for 3 formats.
There are teams that normally have different captains for different cricket formats but it is not a common practice in the Indian cricket board. India is already playing well under Kohli's captaincy right then why there is a need for a change now? At least it is better to give time until the next WorldCup for Kohli to prove his captaincy skills before criticizing and talking about changing capitans.