If Bernie Sanders wants to say that Fidel Castro occasionally did something good, while acknowledging that he often did things that were very bad, I think that’s a reasonable position. (It might also be reasonable to say that Adolf Hitler occasionally did something good, though offhand I can’t think of a good example.)
But surely — surely — if it’s reasonable to say this about Castro, then it’s enormously more reasonable to say that there were good people among the protestors in Charlottesville, Virginia, while acknowledging that there were also some very bad people. Because I have not the slightest shred of a doubt that the fraction of people on either side of that Charlottesville protest who were basically good is enormously greater than the fraction of Castro’s policies that were basically good.
You might want to argue that it’s not okay to acknowledge any goodness at all in a Hitler or a Castro or a large crowd of people that includes some number of violent neo-Nazis. I wouldn’t agree with you, because I think it’s always okay to acknowledge anything that happens to be true. But if that’s your position, you have to decide where to draw the line, and if you draw the line in a way that puts Trump beyond the pale, then Sanders is way beyond the pale.
In other words, I see how you can excommunicate both of them, I see how you can excommunicate just Sanders, and I see how you can excommunicate neither. My preference is neither. If your preference is otherwise, we can cheerfully disagree. But if you want to excommunicate just Trump, I’m very skeptical that you’re applying anything like a consistent standard. Feel free to prove me wrong in comments.