You can almost always find a way to make it work, even if it seems like it can't. The big thing is that everyone has to want to be there. A couple of options that I have found worked in bands I have been a part of.
Set a weekly rehearsal time in stone. If it's Tuesday night from 7-10, or Sunday afternoon from 2-5 or whatever, EVERY week rehearse at that time. If it's set, and if it is a priority for everyone, you can work your other commitments around it. Occasionally something will come up where one person can't be there because they have something come up that they absolutely can't reschedule or get out of, but "I'm not available Tuesday nights because I have rehearsal" is easy to say/remember instead of "I'm not sure what my schedule is like" or "we didn't set anything in stone..."
Set the next rehearsal at the end of the current one. Take 5 minutes for everyone to sit down with their schedule for the next week, and find something that works for everyone. Don't leave until you've made it work. This could mean someone has to compromise or reschedule something else, but again, it comes down to priorities.
Scheduling apps/websites. This works particularly well with bigger bands (5+) where if one or two members aren't there but the majority of you are, you can still get stuff done. There are a bunch of different ones, doodle being one I have used. Essentially you have a moderator who sets potential rehearsal times, and then everyone in the band fills in when they are or are not available. It takes less than a minute to click through everything and say "yes" or "no" to them all. It is also helpful in that you get to see who is constantly saying "no" and not available, and that might be something you need to address.
If someone can't be there consistently and their schedule never seems to work, then you need to figure out if it's a scheduling issue or a commitment issue. Either way, you need to ask yourself if they can pull their weight in the band with the number of rehearsals they can attend or if they are holding you back, and decide if they should be a part of the project or not.