Last week's challenge is posted HERE!
OK, I have a problem... for you to solve!
We are selling bottles of wine - each of which has a unique ID since it's a limited vintage.
Customers can request their wine bottles be delivered in various different sizes of delivery box.
Customers order wine in ranges - from ID 1 to 25 for example.
Challenge: Build a macro that takes in order ranges, allows the user to input the box size, and outputs the order broken into the requested box sizes.
There are 3 sample outputs displayed to test the different box sizes:
- Box size of 6
- Box size of 12
- Box size of 96
The macro must check for, or prevent 3 specific error conditions:
- a null value for either the from or to value on an order range
- non-numeric values in the from & to values
- situations where the from ID is greater than the to ID
BONUS - Instead of using an interface tool to allow the user to set 6/12/96 box sizes, build a batch macro that will package all three scenarios at once!
DOUBLE BONUS - Complete this challenge whilst listening to some UB40
Thanks for pointing that out @alex! I updated the exercise and the post to reflect 96. However, the beauty of this macro could be that you could test all packaging conditions 🙂 Triple bonus?! I'm feeling generous - why not?
I created a standard macro that calculates all 3 options at once. No batch required.
I'm not shooting for bonus points this time round 😉
I believe I have catered for 2 of the three error conditions but I am a bit confused as to what is expected in the case of 'non-numeric values in the from & to values', but you can take a look at my macro too see how I have dealt with this.
My solution! And my kind of problem!! 🙂 (Admission: I finished this one with a glass of red, red wine right next to me. Cheers!)
Nice challenge! Wasnt as bad as I originally thought it would be but I definitely use too many tools. Personally I liked the idea of three separate outputs so I added a standard macro outside my batch to give S, M, L outputs. Cant upload packaged workflows for whatever reason so only screen shots this time :).