QlikView Publisher can run Monday through Friday and only between particular hours on those days. I don't know of any way to give it a holiday list to skip, though, so it would still be running a little more often than you probably want. I also don't know if you have QlikView Publisher, since that wasn't specifically what you asked.
Thanks to all responders.
I don't have Publisher, but thanks for the info anyway.
In the end I put a test at the top of the script to see what day/time it is, then do an exit script if it's overnight or weekends. This particular qvw only extracts data into QVDs, so that works fine.
I haven't tried it yet, but I think that if I make downstream apps reload dependent on a successful run of the initial data extract I can control the whole thing this way.
I haven't tried figuring in public holidays - maybe in phase2;)