Anyone Interested in a Switch List Generator? If you are, I'll "pretty it up" for printing and post it to Google Docs (You're welcome to the Excel version, but I don't take spreadsheets from strangers and neither should you).
It's quick to use and especially useful for those of us who run switching layouts and want both lots of variety but with a purpose when we operate our layouts.
What it looks like:

How It works:
Set it up once....
In the body of the form a list of your Industries, the cars they receive (by spot, if appropriate), and the number of times per week (operating cycles) they receive that type of car (less than once per week and use fraction - see line 22). If they have capacity for more than one car, enter the car on more than one line (see Woods Furniture - lines 18 & 19). If they receive multiple types of cars, enter each car on a separate line. (See Brachs Candy - lines 15-17).
At the top of the form, indicate the likelihood they will receive more than one of any line, the likelihood a car already at an industry site will *not* be picked up and the number of days (operating cycles) you want to use as the basis for determining the likelihood of delivery.
Before each operating session:
Check on the layout to see what cars are located where before you start the cycle (in my case, these are the cars as they were left at the end of the previous operating session). In the occupied column, enter any character you want to show an occupied track.
Since each and every change anywhere in the sheet will change the pick ups and drop offs, that's really all you need to do to generate the sheet. The sheet will randomly determine which occupied spots should be picked up or not picked up (see Suburban Fuel Oil #2 spot - line 13 - for not picked up) and where there is more than one car to be delivered on a given line (spot, if indicated) (see GE Receiving Spot 1 - line 6). Just print your work orders.
What the sheet doesn't do and you'll have to do manually is determine whether a car can be spotted at a different location or has to be stored until a spot becomes available, next cycle (and what cars are currently "stored" from a previous operating cycle and where they are stored waiting to be delivered). Those will have to be entered in the notes (particularly any cars waiting to be delivered from a previous session - the crew is going to figure out fairly quickly when they have overflow that needs to be stored until next cycle - and can note where they're storing the car.)
Further, since I work in N Scale and care about the type of car, rather than its markings, I don't enter the road and car number. If there's anyone wishing that be added as specific columns (rather than just written in the "notes" column"), I'll be glad to do it. The sheet won't insert the markings, but the person building the incoming train can as they assemble it wherever they set up trains before a session.
Suggestions for modifications are more than welcome - so long as they enhance the sheet for some, without making it less useful for any.
Again, it'll free for anyone to copy (to their own Google Doc or download into their own Excel) and use. No restrictions, no legalisms, no responsibility on my part if it doesn't work for you. You take it and try to sell it to others, a pox on your house. But I pity the fool who pays for what they could have had for free....