If you use Excel to model businesses, business processes, or business transactions, this course will change your life. You’ll learn how to create tools for yourself that will amaze even you. Unrestricted use of this material is available in two ways.
To Order On Line
Order "Spreadsheet Models for Managers, on-line edition, one month" by credit card, for USD 69.95 each, using our secure server, and receive download instructions by return email. |
Order "Spreadsheet Models for Managers, on-line edition, three months" by credit card, for USD 199.00 each, using our secure server, and receive download instructions by return email. |
Order "Spreadsheet Models for Managers, downloadable hyperbook edition" by credit card, for USD 199.00 each, using our secure server, and receive download instructions by return email. |
To Order by Mail
Make your check payable to Chaco Canyon Consulting, for the amount indicated:
|
And send it to: Chaco Canyon Consulting 700 Huron Avenue, Suite 19C Cambridge, MA 02138 |
To use the course software you’ll need some other applications, which you very probably already have. By placing your order, you’re confirming that you have the software you need, as described on this site.
Be sure to check the list of worksheet functions that are needed for the homework assignments, to see which new functions (if any) might help with this assignment.
For a quick way to copy homework problem data into your homework solution, see “Avoid retyping homework problem data.”
Remember that some problems are slight extensions of what we show you in class, in the demonstrations and in the session notes, and some problems are somewhat ambiguous. This is intended to parallel what you’ll frequently encounter at work. If you feel a bit confused, there are some things you can do to help clarify things.
Before attempting this homework, you might find it helpful to read about:
Numbers in square brackets to the right of the problem numbers indicate point values.
Write a macro that computes, for any number, the multiple of 100 that’s nearest to that number. Call your macro “Round100”. For example, Round100(712) should return 700. You can assume that the argument to your macro is always a number. Your macro should round to the next largest 100 if the number ends in 50 or more. The behavior for negative numbers should be symmetric. That is, for any x, Round100(-x) should be the same as -Round100(x). Use your macro to demonstrate the following results:
|
Your result should be a single 4x1 range.
The price schedule provided to Jersey Fried Chicken for cases of fried chicken buckets offers discounts depending on the number of cases of buckets ordered. The schedule is shown in the table below, which is reproduced from Problem 11.3.
|
Write a macro called BucketPrice which accepts a single argument that represents the quantity ordered, and returns a value equal to the price of one case of buckets. Your macro should assume that its argument is any number greater than or equal to 1. If it receives an argument that isn’t an integer, it should truncate the fractional part of the argument and return a result as if it had received an integer argument. Demonstrate your macro for these arguments: 276.00, 402.00, 432.47, 1898.20. Your result should be a single 4x1 range.
In the course of modeling operations at JFC, you find that you buy several products with three-step “staircase” price schedules as in Problem 13.2. You could write a separate function macro for each one, but that approach is wasteful and creates duplicated code. So you decide instead to write a single macro that’s invoked by each specialized macro. This is more reliable because it concentrates all the “thinking” in a single place.
The macro is called Staircase3, and does all the hard work for all three-step staircase pricing. It returns a single floating-point number — the unit price for the quantity specified. It accepts six arguments, ordered as follows:
Write the macro Staircase3, and demonstrate that it gives correct chicken-bucket prices for the chicken-bucket price schedule and these order quantities: 276.00, 402.00, 432.47, 1898.20. Your result should be a single 4x1 range.
Write a new macro BucketPrice3, that behaves exactly like BucketPrice, but computes its results by invoking Staircase3 internally. BucketPrice3 takes a single argument, and produces results identical to Price. Demonstrate its use with the four values 276.00, 402.00, 432.47, 1898.20. Your result should be a single 4x1 range.
Last Modified: Wednesday, 27-Apr-2016 04:15:26 EDT
We focus on function macros in this course because they’re more likely than command macros to make a real difference in your facility with constructing models. For instance, when your customer wants to see result streams displayed as [Month1, Month2, Month3, Q1 Total, Month4, Month5, Month6, Q2 Total, …], you probably realize that such a layout makes copy/paste and fill very inconvenient. A macro can provide a simple means of producing the preferred layout from a more easily maintained pure month structure. It’s also easy to construct macros for running sums and running differences. Can you think of other applications for function macros that make your models easier to build and maintain?