Microsoft Excel 2010: Data Analysis and Business Modeling ® ® Wayne L. Winston PUBLISHED BY Microsoft Press A Division of Microsoft Corporation One Microsoft Way Redmond, Washington 98052-6399 Copyright © 2011 by Wayne L. Winston All rights reserved. No part of the contents of this book may be reproduced or transmitted in any form or by any means without the written permission of the publisher. Library of Congress Control Number: 2010934987 ISBN: 978-0-7356-4336-9 4 5 6 7 8 9 10 11 12 M 7 6 5 4 3 2 Printed and bound in the United States of America. Microsoft Press books are available through booksellers and distributors worldwide. For further infor­mation about international editions, contact your local Microsoft Corporation office or contact Microsoft Press International directly at fax (425) 936-7329. Visit our Web site at www.microsoft.com/mspress. Send comments to mspinput@microsoft.com. Microsoft and the trademarks listed at http://www.microsoft.com/about/legal/en/us/IntellectualProperty/ Trademarks/EN-US.aspx are trademarks of the Microsoft group of companies. All other marks are property of their respective owners. The example companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious. No association with any real company, organization, product, domain name, e-mail address, logo, person, place, or event is intended or should be inferred. This book expresses the author’s views and opinions. The information contained in this book is provided without any express, statutory, or implied warranties. Neither the authors, Microsoft Corporation, nor its resellers, or distributors will be held liable for any damages caused or alleged to be caused either directly or indirectly by this book. Acquisitions Editor: Rosemary Caperton Developmental Editor: Devon Musgrave Project Editor: Rosemary Caperton Editorial and Production: John Pierce and Waypoint Press Technical Reviewer: Mitch Tulloch; Technical Review services provided by Content Master, a member of CM Group, Ltd. Cover: Twist Body Part No. X17-37446 [2012-01-20] Table of Contents Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix 1 What’s New in Excel 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Range Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3 Lookup Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4 The INDEX Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5 The MATCH Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 6 Text Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 7 Dates and Date Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 8 Evaluating Investments by Using Net Present Value Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 9 Internal Rate of Return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 10 More Excel Financial Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 11 Circular References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 12 IF Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 13 Time and Time Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 14 The Paste Special Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 What do you think of this book? We want to hear from you! Microsoft is interested in hearing your feedback so we can continually improve our books and learning resources for you. To participate in a brief online survey, please visit: www.microsoft.com/learning/booksurvey/ iii iv Table of Contents 15 Three-Dimensional Formulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 16 The Auditing Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 17 Sensitivity Analysis with Data Tables . . . . . . . . . . . . . . . . . . . . . . 127 18 The Goal Seek Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 19 Using the Scenario Manager for Sensitivity Analysis . . . . . . . . . 143 20 The COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 21 The SUMIF, AVERAGEIF, SUMIFS, and AVERAGEIFS Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 22 The OFFSET Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 23 The INDIRECT Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 24 Conditional Formatting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 25 Sorting in Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 26 Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 27 Spin Buttons, Scroll Bars, Option Buttons, Check Boxes, Combo Boxes, and Group List Boxes . . . . . . . . . . . . . . . . . . . . . . 229 28 An Introduction to Optimization with Excel Solver . . . . . . . . . . 241 29 Using Solver to Determine the Optimal Product Mix . . . . . . . . 245 30 Using Solver to Schedule Your Workforce . . . . . . . . . . . . . . . . . . 255 31 Using Solver to Solve Transportation or Distribution Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 32 Using Solver for Capital Budgeting . . . . . . . . . . . . . . . . . . . . . . . . 267 33 Using Solver for Financial Planning . . . . . . . . . . . . . . . . . . . . . . . . 275 34 Using Solver to Rate Sports Teams . . . . . . . . . . . . . . . . . . . . . . . . 281 Table of Contents 35 Warehouse Location and the GRG Multistart and Evolutionary Solver Engines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 36 Penalties and the Evolutionary Solver . . . . . . . . . . . . . . . . . . . . . 297 37 The Traveling Salesperson Problem . . . . . . . . . . . . . . . . . . . . . . . 303 38 Importing Data from a Text File or Document . . . . . . . . . . . . . . 307 39 Importing Data from the Internet . . . . . . . . . . . . . . . . . . . . . . . . . 313 40 Validating Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 41 Summarizing Data by Using Histograms . . . . . . . . . . . . . . . . . . . 327 42 Summarizing Data by Using Descriptive Statistics . . . . . . . . . . . 335 43 Using PivotTables and Slicers to Describe Data . . . . . . . . . . . . . . 349 44 Sparklines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 45 Summarizing Data with Database Statistical Functions . . . . . . . 387 46 Filtering Data and Removing Duplicates . . . . . . . . . . . . . . . . . . . 395 47 Consolidating Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411 48 Creating Subtotals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 49 Estimating Straight Line Relationships . . . . . . . . . . . . . . . . . . . . . 423 50 Modeling Exponential Growth . . . . . . . . . . . . . . . . . . . . . . . . . . . 431 51 The Power Curve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435 52 Using Correlations to Summarize Relationships . . . . . . . . . . . . . 441 53 Introduction to Multiple Regression . . . . . . . . . . . . . . . . . . . . . . . 447 54 Incorporating Qualitative Factors into Multiple Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 55 Modeling Nonlinearities and Interactions . . . . . . . . . . . . . . . . . . 463 v vi Table of Contents 56 Analysis of Variance: One-Way ANOVA . . . . . . . . . . . . . . . . . . . . 471 57 Randomized Blocks and Two-Way ANOVA . . . . . . . . . . . . . . . . . 477 58 Using Moving Averages to Understand Time Series . . . . . . . . . 487 59 Winters’s Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491 60 Ratio-to-Moving-Average Forecast Method . . . . . . . . . . . . . . . . 497 61 Forecasting in the Presence of Special Events . . . . . . . . . . . . . . . 501 62 An Introduction to Random Variables . . . . . . . . . . . . . . . . . . . . . 509 63 The Binomial, Hypergeometric, and Negative Binomial Random Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 64 The Poisson and Exponential Random Variable . . . . . . . . . . . . . 523 65 The Normal Random Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527 66 Weibull and Beta Distributions: Modeling Machine Life and Duration of a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535 67 Making Probability Statements from Forecasts . . . . . . . . . . . . . 541 68 Using the Lognormal Random Variable to Model Stock Prices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 69 Introduction to Monte Carlo Simulation . . . . . . . . . . . . . . . . . . . 549 70 Calculating an Optimal Bid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559 71 Simulating Stock Prices and Asset Allocation Modeling . . . . . . 565 72 Fun and Games: Simulating Gambling and Sporting Event Probabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575 73 Using Resampling to Analyze Data . . . . . . . . . . . . . . . . . . . . . . . . 583 74 Pricing Stock Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587 75 Determining Customer Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601 Table of Contents 76 The Economic Order Quantity Inventory Model . . . . . . . . . . . . . 607 77 Inventory Modeling with Uncertain Demand . . . . . . . . . . . . . . . 613 78 Queuing Theory: The Mathematics of Waiting in Line . . . . . . . 619 79 Estimating a Demand Curve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625 80 Pricing Products by Using Tie-Ins . . . . . . . . . . . . . . . . . . . . . . . . . 631 81 Pricing Products by Using Subjectively Determined Demand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 82 Nonlinear Pricing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639 83 Array Formulas and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647 84 PowerPivot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675 What do you think of this book? We want to hear from you! Microsoft is interested in hearing your feedback so we can continually improve our books and learning resources for you. To participate in a brief online survey, please visit: www.microsoft.com/learning/booksurvey/ vii Introduction Whether you work for a Fortune 500 corporation, a small company, a government agency, or a not-for-profit organization, if you’re reading this introduction the chances are you use Microsoft Excel in your daily work. Your job probably involves summarizing, reporting, and analyzing data. It might also involve building analytic models to help your employer increase profits, reduce costs, or manage operations more efficiently. Since 1999, I’ve taught thousands of analysts at organizations such as 3M, Bristol-Myers Squibb, Cisco Systems, Drugstore.com, eBay, Eli Lilly, Ford, General Electric, General Motors, Intel, Microsoft, NCR, Owens Corning, Pfizer, Proctor & Gamble, Tellabs, the U.S. Army, the U.S. Department of Defense, and Verizon how to use Excel more efficiently and productively in their jobs. Students have often told me that the tools and methods I teach in my classes have saved them hours of time each week and provided them with new and improved approaches for analyzing important business problems. Most of these classes used Excel 2003 or Excel 2007. With the added power of Excel 2010, you can be more productive than you ever dreamed! To paraphrase Alicia Silverstone in the movie Clueless, Excel 2007 is so five years ago. I’ve used the techniques described in this book in my own consulting practice to solve many business problems. For example, I use Excel to help the Dallas Mavericks NBA basketball team evaluate referees, players, and lineups. During the last 15 years I have also taught Excel business modeling and data analysis classes to MBA students at Indiana University’s Kelley School of Business. (As proof of my teaching excellence, I have won MBA teaching awards for 25 consecutive years, and have won the school’s overall MBA teaching award five times.) I would like to also note that 95 percent of MBA students at Indiana University take my spreadsheet modeling class even though it is an elective. The book you have in your hands is an attempt to make these successful classes available to everyone. Here is why I think the book will help you learn how to use Excel more effectively: ■ The materials have been tested while teaching thousands of analysts working for Fortune 500 corporations and government agencies, including the U.S. Army. ■ I’ve written the book as though I am talking to the reader. I hope this approach ­transfers the spirit of a successful classroom environment to the written page. ■ I teach by example, which makes concepts easier to master. These examples are ­constructed to have a real-world feel. Many of the examples are based on questions sent to me by employees of Fortune 500 corporations. ■ For the most part, I lead you through the approaches I take in Excel to set up and ­answer a wide range of data analysis and business questions. You can follow along with my explanations by referring to the sample worksheets that accompany each example. ix x Introduction However, I have also included template files for the book’s examples on the companion website. If you want to, you can use these templates to work directly with Excel and complete each example on your own. ■ For the most part, the chapters are short and organized around a single concept. You should be able to master the content of most chapters with at most two hours of study. By looking at the questions that begin each chapter, you’ll gain an idea about the types of problems you’ll be able to solve after mastering a chapter’s topics. ■ In addition to learning about Excel formulas, you will learn some important math in a fairly painless fashion. For example, you’ll learn about statistics, forecasting, optimization models, Monte Carlo simulation, inventory modeling, and the mathematics of waiting in line. You will also learn about some recent developments in business ­thinking, such as real options, customer value, and mathematical pricing models. ■ At the end of each chapter, I’ve provided a group of practice problems (over 600 in ­total) that you can work through on your own. These problems will help you master the information in each chapter. Answers to all problems are included in files on the book’s companion website. Many of these problems are based on actual problems faced by business analysts at Fortune 500 companies. ■ Most of all, learning should be fun. If you read this book, you will learn how to predict U.S. presidential elections, how to set football point spreads, how to determine the probability of winning at craps, and how to determine the probability of a specific team winning an NCAA tournament. These examples are interesting and fun, and they also teach you a lot about solving business problems with Excel. ■ To follow along with this book, you must have Excel 2010. Previous versions of this book can be used with Excel 2003 or Excel 2007. What You Should Know Before Reading This Book To follow the examples in this book you do not need to be an Excel guru. Basically, the two key actions you should know how to do are the following: ■ Enter a formula You should know that formulas must begin with an equal sign (=). You should also know the basic mathematical operators. For example, you should know that an asterisk (*) is used for multiplication, a forward slash (/) is used for division, and the caret key (^) is used to raise a quantity to a power. ■ Work with cell references You should know that when you copy a formula that contains a cell reference such as $A$4 (an absolute cell reference, which is created by including the dollar signs), the formula still refers to cell A4 in the cells you copy it to. When you copy a formula that contains a cell reference such as $A4 (a mixed cell ­address), the column remains fixed, but the row changes. Finally, when you copy a ­formula that contains a cell reference such as A4 (a relative cell reference), both the row and the column of the cells referenced in the formula change. Introduction xi How to Use This Book As you read along with the examples in this book, you can take one of two approaches: ■ You can open the template file that corresponds to the example you are studying and complete each step of the example as you read the book. You will be surprised how easy this process is and amazed with how much you learn and retain. This is the ­approach I use in my corporate classes. ■ Instead of working in the template, you can follow my explanations as you look at the final version of each sample file. Using the Companion Content This book features a companion website that makes available to you all the sample files you use in the book’s examples (both the final Excel workbooks and starting templates you can work with on your own). The workbooks and templates are organized in folders named for each chapter. The answers to all chapter-ending problems in the book are also included with the sample files. Each answer file is named so that you can identify it easily. For example, the file containing the answer to Problem 2 in Chapter 10 is named s10_2.xlsx. To work through the examples in this book, you need to copy the book’s sample files to your computer. These practice files, and other information, can be downloaded from the book’s detail page, located at: http://go.microsoft.com/fwlink/?Linkid=207235 Display the detail page in your Web browser, and follow the instructions for downloading the files. Your Companion eBook The eBook edition of this book allows you to: ■ Search the full text ■ Print ■ Copy and paste To download your eBook, please see the instruction page at the back of this book. xii Introduction Errata and Book Support We’ve made every effort to ensure the accuracy of this book and its companion content. If you do find an error, please report it on our Microsoft Press site at Oreilly.com: 1. Go to http://microsoftpress.oreilly.com. 2. In the Search box, enter the book’s ISBN or title. 3. Select your book from the search results. 4. On your book’s catalog page, under the cover image, you’ll see a list of links. 5. Click View/Submit Errata. You’ll find additional information and services for your book on its catalog page. If you need additional support, please e-mail Microsoft Press Book Support at mspinput@microsoft.com. Please note that product support for Microsoft software is not offered through the addresses above. We Want to Hear from You At Microsoft Press, your satisfaction is our top priority, and your feedback our most ­valuable asset. Please tell us what you think of this book at: http://www.microsoft.com/learning/booksurvey. The survey is short, and we read every one of your comments and ideas. Thanks in advance for your input! Stay in Touch Let’s keep the conversation going! We’re on Twitter: http://twitter.com/MicrosoftPress. Introduction xiii Acknowledgments I am eternally grateful to Jennifer Skoog and Norm Tonina, who had faith in me and first hired me to teach Excel classes for Microsoft finance. Jennifer in particular was instrumental in helping design the content and style of the classes on which the book is based. Keith Lange of Eli Lilly, Pat Keating and Doug Hoppe of Cisco Systems, and Dennis Fuller of the U.S. Army also helped me refine my thoughts on teaching data analysis and modeling with Excel. I was blessed to work with John Pierce again, who edited the first edition of the book. Mitch Tulloch did a great job with the technical editing. Thanks also to Steve Sagman for managing the book’s production and to proofreader Tom Speeches. Microsoft Press editors Rosemary Caperton and Devon Musgrave helped shepherd the project to completion. I am grateful to my many students at the organizations where I’ve taught and at the Kelley School of Business. Many of them have taught me things I did not know about Excel. Alex Blanton, formerly of Microsoft Press, championed this project at the start and shared my vision of developing a user-friendly text designed for use by business analysts. Finally, my lovely and talented wife, Vivian, and my wonderful children, Jennifer and Gregory, put up with my long weekend hours at the keyboard. Chapter 1 What’s New in Excel 2010 Microsoft Excel 2010 contains many new features that are helpful to the business analyst, ­including these: ■ Customizable ribbon ribbon. ■ Sparklines Cool graphs that summarize lots of data in a single cell. ■ Slicers Dashboard controls that make “slicing and dicing” PivotTable calculations much easier. ■ PowerPivot A free add-in that enables you to quickly create PivotTables with up to 100 million rows of data based on data from many sources (databases, spreadsheets, and websites). ■ Solver An improved Solver allows you to find the “best” solution to many business problems for which previous versions of the Solver returned incorrect answers. ■ File tab The new File tab on the ribbon replaces the Office button and allows easy access to the File and Print menus. ■ Updated statistical functions The accuracy of Excel statistical functions has been improved, and several new functions (including RANK.EX, AGGREGATE, WORKDAY.INTL, and NETWORKDAYS.INTL) have been added. ■ Equations You can now edit equations in Excel by using an equation editor that is similar to the Microsoft Word equation editor. ■ Data bars ■ Paste Special Paste Special options now include a live preview. Now you can completely customize the appearance of the Data bars have been improved. Let’s now examine each of these exciting new features in more detail. Customizable Ribbon In Excel 2007, users were not able to customize the tabs displayed across the top of the ribbon. In Excel 2010, it is easy to customize the appearance of the ribbon tabs. Begin by selecting File in the upper-left portion of the ribbon. After choosing Options, you’ll see the Customize Ribbon page shown in Figure 1-1. 1 2 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 1-1 How to customize the ribbon. As an example, suppose you want to show the Developer tab. Simply select Developer in the list at the right, and click OK. You can change the order in which the tabs appear by ­selecting a tab, and then using the Move Up and Move Down arrows on the right. If you click the drop-down arrow by Main Tabs, you can display Tool tabs. Then you can customize the tabs that appear when a given object is selected. For example, if you clear Design under Chart Tools, when you select a Chart object, the Design tab does not appear. Clicking the New Tab button allows you to create a new tab, and the New Group button lets you create a group within a tab. Of course, you can use the Rename button to change the name of a group or tab. Don’t Forget About the Quick Access Toolbar The Quick Access Toolbar is an old friend from Excel 2007 that can still be very useful. You probably use some Excel commands much more often than others. Having to switch ­between tabs to find the command you need might slow you down. The Quick Access Toolbar (see Figure 1-2) allows you to collect your favorite commands in one place. The ­default location of the Quick Access Toolbar is above the ribbon in the upper-left portion of the Excel window. Figure 1-2 Quick Access Toolbar. Chapter 1 What’s New in Excel 2010 3 You can add a command to the Quick Access Toolbar simply by right-clicking the command and choosing Add To Quick Access Toolbar. You can also add commands by clicking File in the upper-left portion of the ribbon. Next click Options, and then display the Customize the Quick Access Toolbar page (shown in Figure 1-3). After choosing a command you want to add, select Add, and click OK. Of course, the Move Up and Move Down arrows let you customize the order in which icons appear. You can remove any command from the Quick Access Toolbar by right-clicking the command, and then clicking Remove From Quick Access Toolbar. You can move the Quick Access Toolbar below the ribbon by right-clicking the ­toolbar, and selecting Show Below The Ribbon. Figure 1-3 You can add, remove, and arrange commands on the Quick Access Toolbar. People sometimes have trouble finding commands that appeared in earlier versions of Excel but seem to have disappeared from Excel 2010. For example, you might be a fan of the old method used to create PivotTables: the layout method. If you still want to use the layout method, you can find it by clicking the drop-down arrow to the right of Popular Commands and choosing Commands Not In The Ribbon. After scrolling down (pressing the P key several times is probably quicker!), you will find the PivotTable And PivotChart Wizard command, which you can then add to your Quick Access Toolbar. 4 Microsoft Excel 2010: Data Analysis and Business Modeling Sparklines Sparklines are small charts or graphs that fit in a single cell. Sparklines let you place a ­graphical summary of data next to the data. Figure 1-4 shows how sparklines can summarize daily customer counts at bank branches. Figure 1-4 Example of sparklines. The sparklines make it clear that each branch is busiest on Monday and Friday. Sparklines are discussed in Chapter 44, “Sparklines.” Slicers PivotTables are probably the single most used tool for summarizing data. PivotTables let you “slice and dice your data” and are discussed in Chapter 43, “Using PivotTables and Slicers to Summarize Data.” Excel 2010 allows you to use slicers to control the way you summarize your data. The Name and Product slicers in Figure 1-5 ensure that total sales for each month are computed for only the rows of data in which Eric and Rachel sold checking accounts or stock investment accounts. Slicers are also discussed in Chapter 43. Figure 1-5 Example of slicers. Chapter 1 What’s New in Excel 2010 PowerPivot Organizations often have to create reports based on data from different data sources. For example, a bank might have customer data for each branch in a separate spreadsheet or ­database. The bank might then want to create a corporate summary of total sales based on the data from the individual branches. In the past, it has been difficult to create PivotTables from different data sources. PowerPivot is a free add-in for Excel 2010 that allows you to easily create PivotTables based on data from different websites, spreadsheets, or databases. Using PowerPivot, you can quickly create PivotTables based on up to 100 million rows of data! PowerPivot is discussed in Chapter 84. New Excel Solver The Excel Solver is used to find the best way to do something. For example, what is the cheapest way to meet customer demand by shipping products from factories to customers? Excel 2010 contains a much improved version of the Solver that allows you to use many important functions (such as IF, MAX, MIN, and ABS functions) in Solver models. With previous versions of Excel, use of these functions in a Solver model might cause the Solver to report an incorrect solution. I discuss the Excel Solver in Chapters 28–37. File Tab Excel 2007 introduced the Office button. In Excel 2010, the Office button has been replaced by the File tab. The File tab is located at the left end of the ribbon. After selecting File, you are presented with the choices shown in Figure 1-6. 5 6 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 1-6 File tab options. You can see that the File tab combines the Print and File menus from previous versions of Excel. Also, selecting Options lets you perform a variety of tasks, such as customizing the ­ribbon or the Quick Access Toolbar, or installing add-ins. In Excel 2007 these tasks (except for customizing the ribbon) were performed after clicking the Office button. New Excel Functions Many new functions (mostly statistical functions that improve the accuracy of statistical ­functions in previous versions) have been added. For example, PERCENTILE.EXC improves the accuracy of the RANK function. Statistical functions are covered in Chapter 42, “Summarizing Data by Using Descriptive Statistics,” and Chapters 63–68. The new AGGREGATE function (see Chapter 12, “IF Statements”) enables calculations to be performed on cell ranges that contain errors! The new WORKDAY.INTL and NETWORKDAYS.INTL functions (see Chapter 7, “Dates and Date Functions”) recognize the fact that non-U.S. workers often get days other than Saturday and Sunday off from work. The accuracy of many financial functions (see Chapter 10, “More Excel Financial Functions”) has also been improved. Chapter 1 What’s New in Excel 2010 7 New Equation Editor Many readers of this book are probably long-time users of the Microsoft Word equation ­editor. In Excel 2010 you can now create equations in Excel. If you select Insert from the ­ribbon, you can then click Equation at the far right to bring up the equation templates shown in Figure 1-7. Figure 1-7 Equation editor templates. For example, if you want to type an equation involving a summation sign, choose one of the Large Operator options. Sometimes you want a well-known equation (such as the quadratic formula) to appear in your spreadsheet. After choosing Insert, click the drop-down arrow to the right of Equation to import an already completed equation (such as the quadratic formula). Of course, if after choosing Insert you select Symbol, you can insert mathematical symbols (such as the Greek letter µ) into a cell. Improved Data Bars Excel 2007 introduced using data bars as a method to summarize numerical data. In Excel 2010 data bars have been improved in two ways: ■ You can choose either Solid Fill or Gradient Fill for shading. ■ Data bars recognize negative numbers. Figure 1-8 shows an example of how the new data bars appear. Rows 4-11 contain gradient shading, and rows 12–17 contain solid shading. You’ll find a complete discussion of data bars in Chapter 24, “Conditional Formatting.” 8 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 1-8 Example of Excel 2010 data bars. Paste Special Live Preview If you right-click a range of cells and select Paste Special (see Chapter 14 for a discussion of the Paste Special command), Excel 2010 brings up a live preview of the possible menu ­choices, as shown in Figure 1-9. Figure 1-9 Paste Special live preview. Clicking an option lets you see a preview of how your spreadsheet will appear if you choose that option. Chapter 2 Range Names Questions answered in this chapter: ■ I want to total sales in Arizona, California, Montana, New York, and New Jersey. Can I use a formula to compute total sales in a form such as AZ+CA+MT+NY+NJ instead of SUM(A21:A25) and still get the right answer? ■ What does a formula like Average(A:A) do? ■ What is the difference between a name with workbook scope and one with worksheet scope? ■ I really am getting to like range names. I have started defining range names for many of the workbooks I have developed at the office. However, the range names do not show up in my formulas. How can I make recently created range names show up in ­previously created formulas? ■ How can I paste a list of all range names (and the cells they represent) into my worksheet? ■ I am computing projected annual revenues as a multiple of last year’s revenue. Is there a way to have the formula look like (1+growth)*last year? ■ For each day of the week we are given the hourly wage and hours worked. Can we compute total salary for each day with the formula wages*hours? You have probably worked with worksheets that use formulas such as SUM(A5000:A5049). Then you have to find out what’s contained in cells A5000:A5049. If cells A5000:A5049 ­contain sales in each U.S. state, wouldn’t the formula SUM(USSales) be easier to understand? In this chapter, I’ll teach you how to name individual cells or ranges of cells. I’ll also show you how to use range names in formulas. How Can I Create Named Ranges? There are three ways to create named ranges: ■ By entering a range name in the Name box. ■ By clicking Create From Selection in the Defined Names group on the Formulas tab. ■ By clicking Name Manager or Define Name in the Defined Names group on the Formulas tab. 9 10 Microsoft Excel 2010: Data Analysis and Business Modeling Using the Name Box to Create a Range Name The Name box (shown in Figure 2-1) is located directly above the label for column A. (To see the Name box, you need to display the Formula bar.) To create a range name in the Name box, simply select the cell or range of cells that you want to name, click in the Name box, and then type the range name you want to use. Press Enter, and you’ve created the range name. Clicking the Name arrow displays the range names defined in the current workbook. You can display all the range names in a workbook by pressing the F3 key to open the Paste Name dialog box. When you select a range name from the Name box, Microsoft Excel 2010 selects the cells corresponding to that range name. This enables you to verify that you’ve chosen the cell or range that you intended to name. Range names are not case sensitive. Figure 2-1 You can create a range name by selecting the cell range you want to name and then typing the range name in the Name box. For example, suppose you want to name cell F3 east and cell F4 west. See Figure 2-2 and the file Eastwest.xlsx. Simply select cell F3, type east in the Name box, and then press Enter. Then select cell F4, type west in the Name box, and press Enter. If you now reference cell F3 in ­another cell, you see =east instead of =F3. This means that whenever you see the reference east in a formula, Excel will insert whatever is in cell F3. Figure 2-2 Naming cell F3 east and cell F4 west. Suppose you want to assign a rectangular range of cells (such as A1:B4) the name Data. Simply select the cell range A1:B4, type Data in the Name box, and press Enter. Now a ­formula such as =AVERAGE(Data) would average the contents of cells A1:B4. See the file Data.xlsx and Figure 2-3. Figure 2-3 Naming range A1:B4 Data. Chapter 2 Range Names 11 Sometimes you want to name a range of cells made up of several noncontiguous r­ ectangular ranges. For example, in Figure 2-4 and the file Noncontig.xlsx, we might want to assign the name Noncontig to the range consisting of cells B3:C4, E6:G7, and B10:C10. To assign this name, select any one of the three rectangles making up the range (I chose B3:C4). Hold down the Ctrl key, and then select the other two ranges (E6:G7 and B10:C10). Now release the Ctrl key, type the name Noncontig in the Name box, and press Enter. Using Noncontig in any formula will now refer to the contents of cells B3:C4, E6:G7, and B10:C10. For example, entering the formula =AVERAGE(Noncontig) in cell E10 yields 4.75 (because the 12 numbers in our range add up to 57 and 57/12=4.75). Figure 2-4 Naming a noncontiguous range of cells. Creating Named Ranges by Using the Create From Selection Option The worksheet States.xlsx contains sales during March for each of the 50 U.S. states. Figure 2-5 shows a subset of this data. We would like to name each cell in the range B6:B55 with the correct state abbreviation. To do this, select the range A6:B55, and click Create From Selection in the Defined Names group on the Formulas tab (see Figure 2-6). Then select the Left Column check box, as indicated in Figure 2-7. Figure 2-5 By naming the cells that contain state sales with state abbreviations, you can use the abbreviation rather than the cell’s column letter and row number when you refer to the cell. 12 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 2-6 Select Create From Selection. Figure 2-7 Select the Left Column check box. Excel now knows to associate the names in the first column of the selected range with the cells in the second column of the selected range. Thus, B6 is assigned the range name AL, B7 is named AK, and so on. Note that creating these range names in the Name box would have been incredibly tedious! Click the Name arrow to verify that these range names have been created. Creating Range Names by Using the Name Manager Option If you click Name Manager on the Formulas tab and then choose New, the New Name dialog box shown in Figure 2-8 opens. Figure 2-8 The New Name dialog box before creating any range names. Suppose you want to assign the name range1 (range names are not case sensitive) to the cell range A2:B7. Simply type range1 in the Name box, and then point to the range or type =A2:B7 in the Refers To area. The New Name dialog box will now look like Figure 2-9. Click OK, and you’re done. Chapter 2 Range Names 13 Figure 2-9 New Name dialog box after creating a range name. If you click the Scope arrow, you can select the option Workbook or any worksheet in your workbook. I’ll discuss this decision later, so for now just choose the default scope of Workbook. You can also add comments for any of your range names. The Name Manager If you now click the Name arrow, the name range1 (and any other ranges you have created) appears in the Name box. In Excel 2010, there is an easy way to edit or delete your range names. Simply open the Name Manager by selecting the Formulas tab and then clicking Name Manager. You will now see a list of all range names. For example, for the file States. xlsx, the Name Manager dialog box will look like Figure 2-10. Figure 2-10 Name Manager dialog box for States.xlsx. 14 Microsoft Excel 2010: Data Analysis and Business Modeling To edit any range name, simply double-click the range name or select the range name and click Edit. Then you can change the name of the range, the cells the range refers to, or the scope of the range. To delete any subset of range names, first select the range names you want to delete. If the range names are listed consecutively, simply select the first range name in the group you want to delete, hold down the Shift key, and select the last range name in the group. If the range names are not listed consecutively, you can select any range name you want to delete and then hold down the Ctrl key while you select the other range names for deletion. Then press the Delete key to delete the selected range names. Now let’s look at some specific examples of how to use range names. Answers to This Chapter’s Questions I want to total sales in Arizona, California, Montana, New York, and New Jersey. Can I use a formula to compute total sales in a form such as AZ+CA+MT+NY+NJ instead of SUM(A21:A25) and still get the right answer? Let’s return to the file States.xlsx, in which we assigned each state’s abbreviation as the range name for the state’s sales. If you want to compute total sales in Alabama, Alaska, Arizona, and Arkansas, you could clearly use the formula SUM(B6:B9). You could also point to cells B6, B7, B8, and B9, and the formula would be entered as =AL+AK+AZ+AR. The latter formula is, of course, much easier to understand. As another illustration of how to use range names, look at the file Historicalinvest.xlsx, shown in Figure 2-11, which contains annual percentage returns on stocks, T-Bills, and bonds. (Some rows are hidden in this figure; the data ends in row 89.) Figure 2-11 Historical investment data. Chapter 2 Range Names 15 After selecting the cell range B7:D89 and choosing Formulas, Create From Selection, I c­ reated names in the top row of the range. The range B8:B89 is named Stocks, the range C8:C89 T.Bills, and the range D8:D89 T.Bonds. Now you no longer need to remember where your data is. For example, in cell B91, after typing =AVERAGE(, you can press F3 and the Paste Name dialog box appears, as shown in Figure 2-12. Figure 2-12 You can add a range name to a formula by using the Paste Name dialog box. Then you can select Stocks in the Paste Name list and click OK. After entering the closing parenthesis, the formula, =AVERAGE(Stocks), computes the average return on stocks (12.05 percent). The beauty of this approach is that even if you don’t remember where the data is, you can work with the stock return data anywhere in the workbook! I would be remiss if I did not mention the exciting AutoComplete capabilities of Excel 2010. If you begin typing =Average(T, Excel shows you a list of range names and functions that begin with T. Then you can simply double-click T.Bills to complete the entry of the range name. What does a formula like Average(A:A) do? If you use a column name (in the form A:A, C:C, and so on) in a formula, Excel treats an e ­ ntire column as a named range. For example, entering the formula =AVERAGE(A:A) will average all numbers in column A. Using a range name for an entire column is very helpful if you ­frequently enter new data into a column. For example, if column A contains monthly sales of a product, as new sales data is entered each month, our formula computes an up-to-date monthly sales average. I caution you, however, that if you enter the formula =AVERAGE(A:A) in column A, you will get a circular reference message because the value of the cell containing the average formula depends on the cell containing the average. You will learn how to resolve circular references in Chapter 11, “Circular References.” Similarly, entering the formula =AVERAGE(1:1) will average all numbers in row 1. What is the difference between a name with workbook scope and one with worksheet scope? The file Sheetnames.xlsx will help you understand the difference between range names that have workbook scope and range names that have worksheet scope. When you create names 16 Microsoft Excel 2010: Data Analysis and Business Modeling with the Name box, the names have workbook scope. For example, suppose you use the Name box to assign the name sales to the cell range E4:E6 in Sheet3, and these cells contain the numbers 1, 2, and 4, respectively. Then if you enter a formula such as =SUM(sales) in any worksheet, you obtain an answer of 7. This is because the Name box creates names with workbook scope, so anywhere in the workbook where you refer to the name sales (which has workbook scope) the name refers to cells E4:E6 of Sheet3. In any worksheet, if you now enter the formula =SUM(sales), you will obtain 7 because anywhere in the workbook, Excel links sales to cells E4:E6 of Sheet3. Now suppose that you type 4, 5, and 6 in cells E4:E6 of Sheet1, and 3, 4, and 5 in cells E4:E6 of Sheet2. Next you go to the Name Manager, give the name jam to cells E4:E6 of Sheet1, and define the scope of this name as Sheet1. Then you move to Sheet2, go to the Name Manager, and give the name jam to cells E4:E6, and define the scope of this name as Sheet2. The Name Manager dialog box now looks like Figure 2-13. Figure 2-13 Name Manager dialog box with worksheet and workbook names. Now, what if you enter the formula =SUM(jam) in each sheet? In Sheet 1, =SUM(jam) will total cells E4:E6 of Sheet1. Because those cells contain 4, 5, and 6, you obtain 15. In Sheet2 =Sum(jam) will total cells E4:E6 of Sheet2, yielding 3 + 4 + 5=12. In Sheet3, however, the ­formula =SUM(jam) will yield a #NAME? error because there is no range named jam defined in Sheet3. If you enter anywhere in Sheet3 the formula =SUM(Sheet2!jam), Excel will recognize the worksheet-level name that represents cell range E4:E6 of Sheet2 and yield a result of 3 + 4 + 5 =12. Thus, prefacing a worksheet-level name by its sheet name followed by an exclamation point (!) allows you to refer to a worksheet-level range in a worksheet other than the sheet in which the range is defined. Chapter 2 Range Names 17 I really am getting to like range names. I have started defining range names for many of the workbooks I have developed at the office. However, the range names do not show up in my formulas. How can I make recently created range names show up in previously created formulas? Let’s look at the file Applynames.xlsx. See Figure 2-14. Figure 2-14 How to apply range names to formulas. I entered the price of a product in cell F3, and product demand of =10000–300*F3 in cell F4. The unit cost and fixed cost are entered in cells F5 and F6, respectively, and profit is computed in cell F7 with the formula =F4*(F3–F5)–F6. I used Formulas, Create From Selection, and chose the Left Row option to name cell F3 price, cell F4 demand, cell F5 unit cost, cell F6 fixed cost, and cell F7 profit. You would like these range names to show up in the cell F4 and cell F7 formulas. To apply the range names, first select the range where you want the range names applied (in this case, F4:F7). Now go to the Defined Names group on the Formulas tab, click the Define Name arrow, and then click Apply Names. Highlight the names you want to apply, and then click OK. Note that cell F4 now contains the formula =10000–300*price and cell F7 contains the formula =demand*(price–unitcost)–fixed_cost, as you wanted. By the way, if you want the range names to apply to the entire worksheet, simply select the entire worksheet by clicking the Select All button at the intersection of the column and row headings. How can I paste a list of all range names (and the cells they represent) into my worksheet? Press F3 to display the Paste Name box, and then click the Paste List button. (See Figure 2-12.) A list of range names and the cells each corresponds to will be pasted into your worksheet, beginning at the current cell location. I am computing projected annual revenues as a multiple of last year’s revenue. Is there a way to have the formula look like (1+growth)*last year? The file Last year.xlsx contains the solution to this problem. As shown in Figure 2-15, we want to compute revenues for 2012–2018 that grow at 10 percent per year off a base level of $300 million in 2011. 18 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 2-15 Creating a range name for last year. To begin, we use the Name box to name cell B3 growth. Now comes the neat part! Move the cursor to B7 and bring up the New Name dialog box by clicking Define Name in the Defined Names group on the Formulas tab. Then fill in the New Name dialog box as shown in Figure 2-16. Figure 2-16 In any cell, this name refers to the cell above the active cell. Because we are in cell B7, Excel interprets this range name to always refer to the cell above the current cell. Of course, this would not work if the cell reference B6 contains any dollar signs. Now if we enter in cell B7 the formula =lastyear*(1+growth) and copy it down to the range B8:B13, each cell will contain the formula we want and will multiply 1.1 by the contents of the cell directly above the active cell. For each day of the week we are given the hourly wage and hours worked. Can we ­compute total salary for each day with the formula wages*hours? As shown in Figure 2-17 (see the file Namedrows.xlsx), row 12 contains daily wage rates, and row 13 contains hours worked each day. Chapter 2 Range Names 19 Figure 2-17 In any cell, this name refers to the cell above the active cell. You can simply select row 12 (by clicking on the 12) and use the Name box to enter the name wage. Then select row 13 and use the Name box to enter the name hours. If you now enter in cell F14 the formula wage*hours and copy this formula to the range G14:L14, you can see that in each column Excel finds the wage and hour values and multiplies them. Remarks ■ Excel does not allow you to use the letters r and c as range names. ■ If you use Create From Selection to create a range name and your name contains ­spaces, Excel inserts an underscore (_) to fill in the spaces. For example, the name Product 1 is created as Product_1. ■ Range names cannot begin with numbers or look like a cell reference. For example, 3Q and A4 are not allowed as range names. Because Excel 2010 has over 16,000 columns, a range name such as cat1 is not permitted because there is a cell CAT1. If you try and name a cell CAT1, Excel tells you the name is invalid. Probably your best alternative is to name the cell cat1_. ■ The only symbols allowed in range names are periods (.) and underscores (_). Problems 1. The file Stock.xlsx contains monthly stock returns for General Motors and Microsoft. Name the ranges containing the monthly returns for each stock and compute the ­average monthly return on each stock. 2. Open a worksheet and name the range containing the cells A1:B3 and A6:B8 as Red. 3. Given the latitude and longitude of any two cities, the file Citydistances.xlsx computes the distance between the two cities. Define range names for the latitude and longitude of each city and ensure that these names show up in the formula for total distance. 4. The file Sharedata.xlsx contains the numbers of shares you own of each stock and the price of each stock. Compute the value of the shares of each stock with the formula shares*price. 5. Create a range name that averages the last five years of sales data. Assume annual sales are listed in a single column. Chapter 3 Lookup Functions Questions answered in this chapter: ■ How do I write a formula to compute tax rates based on income? ■ Given a product ID, how can I look up the product’s price? ■ Suppose that a product’s price changes over time. I know the date the product was sold. How can I write a formula to compute the product’s price? Syntax of the Lookup Functions Lookup functions enable you to “look up” values from worksheet ranges. Microsoft Excel 2010 allows you to perform both vertical lookups (by using the VLOOKUP function) and ­horizontal lookups (by using the HLOOKUP function). In a vertical lookup, the lookup ­operation starts in the first column of a worksheet range. In a horizontal lookup, the operation starts in the first row of a worksheet range. Because the majority of formulas using ­lookup functions involve vertical lookups, I’ll concentrate on VLOOKUP functions. VLOOKUP Syntax The syntax of the VLOOKUP function is as follows. The brackets ([ ]) indicate optional arguments. VLOOKUP(lookup value,table range,column index,[range lookup]) ■ Lookup value is the value that you want to look up in the first column of the table range. ■ Table range is the range that contains the entire lookup table. The table range includes the first column, in which you try and match the lookup value, and any other columns in which you want to look up formula results. ■ Column index is the column number in the table range from which the value of the lookup function is obtained. ■ Range lookup is an optional argument. The point of range lookup is to allow you to specify an exact or approximate match. If the range lookup argument is True or omitted, the first column of the table range must be in ascending numerical order. If the range lookup argument is True or omitted and an exact match to the lookup value 21 22 Microsoft Excel 2010: Data Analysis and Business Modeling is found in the first column of the table range, Excel bases the lookup on the row of the table in which the exact match is found. If the range lookup argument is True or ­omitted and an exact match does not exist, Excel bases the lookup on the largest value in the first column that is less than the lookup value. If the range lookup argument is False and an exact match to the lookup value is found in the first column of the table range, Excel bases the lookup on the row of the table in which the exact match is found. If no exact match is obtained, Excel returns an #N/A (Not Available) response. Note that a range lookup argument of 1 is equivalent to True, whereas a range lookup argument of 0 is equivalent to False. HLOOKUP Syntax In an HLOOKUP function, Excel tries to locate the lookup value in the first row (not the first column) of the table range. For an HLOOKUP function, use the VLOOKUP syntax and change column to row. Let’s explore some interesting examples of lookup functions. Answers to This Chapter’s Questions How do I write a formula to compute tax rates based on income? The following example shows how a VLOOKUP function works when the first column of the table range consists of numbers in ascending order. Suppose that the tax rate depends on income, as shown in the following table. Income level Tax rate $0–$9,999 15% $10,000–$29,999 30% $30,000–$99,999 34% $100,000 and over 40% To see an example of how to write a formula that computes the tax rate for any income level, open the file Lookup.xlsx, shown in Figure 3-1. Chapter 3 Lookup Functions 23 Figure 3-1 Using a lookup function to compute a tax rate. The numbers in the first column of the table range are sorted in ascending order. I began by entering the relevant information (tax rates and break points) in cell range D6:E9. I named the table range D6:E9 lookup. I recommend that you always name the cells you’re using as the table range. If you do so, you need not remember the exact location of the table range, and when you copy any formula involving a lookup function, the lookup range will always be correct. To illustrate how the lookup function works, I entered some incomes in the range D13:D17. By copying from E13:E17 the formula VLOOKUP(D13,Lookup,2,True), I computed the tax rate for the income levels listed in D13:D17. Let’s examine how the lookup function worked in cells E13:E17. Note that because the column index in the formula is 2, the answer always comes from the second column of the table range. ■ In D13, the income of –$1,000 yields #N/A because –$1,000 is less than the lowest ­income level in the first column of the table range. If you want a tax rate of 15 percent associated with an income of –$1,000, simply replace the 0 in D6 by a number that is –1,000 or smaller. ■ In D14, the income of $30,000 exactly matches a value in the first column of the table range, so the function returns a tax rate of 34 percent. ■ In D15, the income level of $29,000 does not exactly match a value in the first column of the table range, which means the lookup function stops at the largest number less than $29,000 in the first column of the range—$10,000 in this case. This function ­returns the tax rate in column 2 of the table range opposite $10,000, or 30 percent. ■ In D16, the income level of $98,000 does not yield an exact match in the first column of the table range. The lookup function stops at the largest number less than $98,000 in the first column of the table range. This returns the tax rate in column 2 of the table range opposite $30,000—34 percent. 24 Microsoft Excel 2010: Data Analysis and Business Modeling ■ In D17, the income level of $104,000 does not yield an exact match in the first column of the table range. The lookup function stops at the largest number less than $104,000 in the first column of the table range, which returns the tax rate in column 2 of the table range opposite $100,000—40 percent. ■ In F13:F17, I changed the value of the range lookup argument from True to False and copied from F13 to F14:F17 the formula VLOOKUP(D13,Lookup,2,False). Cell F14 still yields a 34 percent tax rate because the first column of the table range contains an ­exact match to $30,000. All the other entries in F13:F17 display #N/A because none of the other incomes in D13:D17 have an exact match in the first column of the table range. Given a product ID, how can I look up the product’s price? Often, the first column of a table range does not consist of numbers in ascending order. For example, the first column of the table range might list product ID codes or employee names. In my experience teaching thousands of financial analysts, I’ve found that many people don’t know how to deal with lookup functions when the first column of the table range does not consist of numbers in ascending order. In these situations, you need to remember only one simple rule: use False as the value of the range lookup argument. Here’s an example. In the file Lookup.xlsx (see Figure 3-2), you can see the prices for five products, listed by their product ID code. How do you write a formula that takes a product ID code and returns the product price? Figure 3-2 Looking up prices from product ID codes. When the table range isn’t sorted in ascending order, enter False as the last argument in the lookup function formula. Many people would enter the formula as I have in cell I18: VLOOKUP(H18,Lookup2,2). However, note that when you omit the fourth argument (the range lookup argument), the value is assumed to be True. Because the product IDs in the table range Lookup2 (H11:I15) are not listed in alphabetical order, an incorrect price ($3.50) is returned. If you enter the ­formula VLOOKUP(H18,Lookup2,2,False) in cell I18, the correct price ($5.20) is returned. You would also use False in a formula designed to find an employee’s salary by using the ­employee’s last name or ID number. Chapter 3 Lookup Functions 25 By the way, you can see in Figure 3-2 that columns A–G are hidden. To hide columns, you ­begin by selecting the columns you want to hide. Click the Home tab on the ribbon. In the Cells group, click Format, point to Hide & Unhide (under Visibility), and then click Hide Columns. Suppose that a product’s price changes over time. I know the date the product was sold. How can I write a formula to compute the product’s price? Suppose the price of a product depends on the date the product was sold. How can you use a lookup function in a formula that will pick up the correct product price? More specifically, suppose the price of a product is as shown in the following table. Date sold Price January–April 2005 $98 May–July 2005 $105 August–December 2005 $112 Let’s write a formula to determine the correct product price for any date on which the product is sold in the year 2005. For variety, we’ll use an HLOOKUP function. I’ve placed the dates when the price changes in the first row of the table range. See the file Datelookup.xlsx, shown in Figure 3-3. Figure 3-3 Using an HLOOKUP function to determine a price that changes depending on the date it’s sold. I copied from C8 to C9:C11 the formula HLOOKUP(B8,lookup,2,TRUE). This formula tries to match the dates in column B with the first row of the range B2:D3. At any date between 1/1/05 and 4/30/05, the lookup function stops at 1/1/05 and returns the price in B3; for any date between 5/01/05 and 7/31/05, the lookup stops at 5/1/05 and returns the price in C3; and for any date later than 8/01/05, the lookup stops at 8/01/05 and returns the price in D3. 26 Microsoft Excel 2010: Data Analysis and Business Modeling Problems 1. The file Hr.xlsx gives employee ID codes, salaries, and years of experience. Write a ­formula that takes a given ID code and yields the employee’s salary. Write another ­formula that takes a given ID code and yields the employee’s years of experience. 2. The file Assign.xlsx gives the assignment of workers to four groups. The suitability of each worker for each group (on a scale from 0 to 10) is also given. Write a formula that gives the suitability of each worker for the group to which the worker is assigned. 3. You are thinking of advertising Microsoft products on a sports telecast. As you buy more ads, the price of each ad decreases as shown in the following table. Number of ads Price per ad 1–5 $12,000 6–10 $11,000 11–20 $10,000 21 and higher $9,000 For example, if you buy 8 ads, you pay $11,000 per ad, but if you buy 14 ads, you pay $10,000 per ad. Write a formula that yields the total cost of purchasing any number of ads. 4. You are thinking of advertising Microsoft products on a popular TV music program. You pay one price for the first group of ads, but as you buy more ads, the price per ad decreases as shown in the following table. Ad number Price per ad 1–5 $12,000 6–10 $11,000 11–20 $10,000 21 or higher $9,000 For example, if you buy 8 ads, you pay $12,000 per ad for the first 5 ads and $11,000 for each of the next 3 ads. If you buy 14 ads, you pay $12,000 for each of the first 5 ads, $11,000 for each of the next 5 ads, and $10,000 for each of the last 4 ads. Write a formula that yields the total cost of purchasing any number of ads. Hint: You probably need at least three columns in your table range and your formula might involve two lookup functions. Chapter 3 Lookup Functions 27 5. The annual rate your bank charges you to borrow money for 1, 5, 10, or 30 years is shown in the following table. Duration of loan Annual loan rate 1 year 6% 5 years 7% 10 years 9% 30 years 10% If you borrow money from the bank for any duration from 1 through 30 years that’s not listed in the table, your rate is found by interpolating between the rates given in the table. For example, let’s say you borrow money for 15 years. Because 15 years is one quarter of the way between 10 years and 30 years, the annual loan rate would be calculated as follows: 1 3 (9) + (10) = 9.75% 4 4 Write a formula that returns the annual interest rate on a loan for any period between 1 and 30 years. 6. The distance between any two U.S. cities (excluding cities in Alaska and Hawaii) can be approximated by the formula 69 * (lat1 - lat2)2 + (long1 - long2)2 The file Citydata.xlsx contains the latitude and longitude of selected U.S. cities. Create a table that gives the distance between any two of the listed cities. 7. In the file Pinevalley.xlsx, the first worksheet contains the salaries of several employees at Pine Valley University, the second worksheet contains the age of the employees, and the third worksheet contains the years of experience. Create a fourth worksheet that contains the salary, age, and experience for each employee. 8. The file Lookupmultiplecolumns.xlsx contains information about several sales made at an electronics store. A salesperson’s name will be entered in B17. Write an Excel formula that can be copied from C17 to D17:F17 that will extract each salesperson’s radio sales to C17, TV sales to D17, printer sales to E17, and CD sales to F17. 28 Microsoft Excel 2010: Data Analysis and Business Modeling 9. The file Grades.xlsx contains student’s grades on an exam. Suppose the curve is as follows: Score Grade Below 60 F 61–69 D 70–79 C 80–89 B 90 and above A Use Excel to return each student’s letter grade on this exam. 10. The file Employees.xlsx contains the ranking each of 35 workers has given (on a 0-10 scale) to three jobs. The file also gives the job to which each worker is assigned. Use a formula to compute each worker’s ranking for the job to which the worker is assigned. 11. Suppose one dollar can be converted to 1,000 yen, 5 pesos, or 0.7 euros. Set up a spreadsheet where the user can enter an amount in U.S. dollars and a currency, and the spreadsheet converts dollars to the entered currency. Chapter 4 The INDEX Function Questions answered in this chapter: ■ I have a list of distances between U.S. cities. How do I write a function that returns the distance between, for example, Seattle and Miami? ■ Is there a way I can write a formula that references the entire column containing the distances between each city and Seattle? Syntax of the INDEX Function The INDEX function allows you to return the entry in any row and column within an array of numbers. The most commonly used syntax for the INDEX function is the following: INDEX(Array,Row Number,Column Number) To illustrate, the formula INDEX(A1:D12,2,3) returns the entry in the second row and third column of the array A1:D12. This entry is the one in cell C2. Answers to This Chapter’s Questions I have a list of distances between U.S. cities. How do I write a function that returns the distance between, for example, Seattle and Miami? The file Index.xlsx (see Figure 4-1) contains the distances between eight U.S. cities. The range C10:J17, which contains the distances, is named Distances. Figure 4-1 You can use the INDEX function to calculate the distance between cities. 29 30 Microsoft Excel 2010: Data Analysis and Business Modeling Suppose that you want to enter the distance between Boston and Denver in a cell. Because distances from Boston are listed in the first row of the array named Distances, and distances to Denver are listed in the fourth column of the array, the appropriate formula is INDEX(distances,1,4). The results show that Boston and Denver are 1,991 miles apart. Similarly, to find the (much longer) distance between Seattle and Miami, you would use the formula INDEX(distances,6,8). Seattle and Miami are 3,389 miles apart. Imagine that the Seattle Seahawks NFL team is embarking on a road trip in which they play games in Phoenix, Los Angeles (an exhibition against USC!), Denver, Dallas, and Chicago. At the conclusion of the road trip, the Seahawks return to Seattle. Can you easily compute how many miles they travel on the trip? As you can see in Figure 4-2, you simply list the ­cities the Seahawks visit (8-7-5-4-3-2-8) in the order they are visited, starting and ending in Seattle, and copy from D21 to D26 the formula INDEX(distances,C21,C22). The formula in D21 computes the distance between Seattle and Phoenix (city number 7), the formula in D22 ­computes the distance between Phoenix and Los Angeles, and so on. The Seahawks will travel a total of 7,112 miles on their road trip. Just for fun, I used the INDEX function to show that the Miami Heat travel more miles during the NBA season than any other team. Figure 4-2 Distances for a Seattle Seahawks road trip. Is there a way I can write a formula that references the entire column containing the distances between each city and Seattle? The INDEX function makes it easy to reference an entire row or column of an array. If you set the row number to 0, the INDEX function references the listed column. If you set the column number to 0, the INDEX function references the listed row. To illustrate, suppose you want to total the distances from each listed city to Seattle. You could enter either of the following formulas: SUM(INDEX(distances,8,0)) SUM(INDEX(distances,0,8)) The first formula totals the numbers in the eighth row (row 17) of the Distances array; the second formula totals the numbers in the eighth column (column J) of the Distances array. In either case, you find that the total distance from Seattle to the other cities is 15,221 miles, as you can see in Figure 4-1. Chapter 4 The INDEX Function 31 Problems 1. Use the INDEX function to compute the distance between Los Angeles and Phoenix and the distance between Denver and Miami. 2. Use the INDEX function to compute the total distance from Dallas to the other cities. 3. Jerry Jones and the Dallas Cowboys are embarking on a road trip that takes them to Chicago, Denver, Los Angeles (an exhibition against UCLA), Phoenix, and Seattle. How many miles will they travel on this road trip? 4. The file Product.xlsx contains monthly sales for six products. Use the INDEX function to compute the sales of Product 2 in March. Use the INDEX function to compute total sales during April. 5. The file Nbadistances.xlsx shows the distance between any pair of NBA arenas. Suppose you begin in Atlanta, visit the arenas in the order listed, and then return to Atlanta. How far would you travel? 6. Use the INDEX function to solve problem 10 of Chapter 3, “Lookup Functions.” Chapter 5 The MATCH Function Questions answered in this chapter: ■ Given monthly sales for several products, how do I write a formula that returns the sales of a product during a specific month? For example, how much of Product 2 did I sell during June? ■ Given a list of baseball players’ salaries, how do I write a formula that yields the player with the highest salary? How about the player with the fifth-highest salary? ■ Given the annual cash flows from an investment project, how do I write a formula that returns the number of years required to pay back the project’s initial investment cost? Suppose you have a worksheet with five thousand rows containing five thousand names. You need to find the name John Doe, which you know appears somewhere (and only once) in the list. Wouldn’t you like to know of a formula that would return the row number where the name John Doe is located? The MATCH function enables you to find within a given array the first occurrence of a match to a given text string or number. You should use the MATCH function instead of a lookup function in situations in which you want the position of a number in a range rather than the value in a particular cell. The syntax of the match function is: Match(lookup value,lookup range,[match type]) In the explanation that follows, we’ll assume that all cells in the lookup range are located in the same column. In this syntax: ■ Lookup value is the value you’re trying to match in the lookup range. ■ Lookup range is the range you’re examining for a “match” to the lookup value. The lookup range must be a row or column. ■ Match type=1 requires the lookup range to consist of numbers listed in ascending ­order. The MATCH function then returns the row location in the lookup range (relative to the top of the lookup range) that contains the largest value in the range that is less than or equal to the lookup value. ■ Match type=–1 requires the lookup range to consist of numbers listed in descending order. The MATCH function returns the row location in the lookup range (relative to the top of the lookup range) that contains the last value in the range that is greater than or equal to the lookup value. ■ Match type=0 returns the row location in the lookup range that contains the first exact match to the lookup value. (I discuss how to find the second or third match in Chapter 20, “COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions.”) 33 34 Microsoft Excel 2010: Data Analysis and Business Modeling When no exact match exists and match type=0, Excel returns the error message #N/A. Most MATCH function applications use match type=0, but if match type is not included, match type=1 is assumed. Thus, use match type=0 when the cell contents of the lookup range are unsorted. This is the situation you usually face. The file Matchex.xlsx, shown in Figure 5-1, contains three examples of the MATCH function’s syntax. Figure 5-1 Using the MATCH function to locate the position of a value in a range. In cell B13, the formula MATCH(“Boston”,B4:B11,0) returns 1 because the first row in the range B4:B11 contains the value Boston. Text values must be enclosed in quotation marks (“”). In cell B14, the formula MATCH(“Phoenix”,B4:B11,0) returns 7 because cell B10 (the seventh cell in B4:B11) is the first cell in the range that matches “Phoenix.” In cell E12, the formula MATCH(0,E4:E11,1) returns 4 because the last number that is less than or equal to 0 in the range E4:E11 is in cell E7 (the fourth cell in the lookup range). In cell G12, the formula MATCH(–4,G4:G11,–1) returns 7 because the last number that is greater than or equal to –4 in the range G4:G11 is contained in cell G10 (the seventh cell in the lookup range). The MATCH function can also work with an inexact match. For example, the formula MATCH(“Pho*”,B4:B11,0) returns 7. The asterisk is treated as a wildcard, which means that Excel searches for the first text string in the range B4:B11 that begins with Pho. Incidentally, this same technique can be used with a lookup function. For example, in the price lookup ­exercise in Chapter 3, “Lookup Functions,” the formula VLOOKUP(“x*”,lookup2,2) would ­return the price of product X212 ($4.80). If the lookup range is contained in a single row, Excel returns the relative position of the first match in the lookup range, moving from left to right. As shown in the following examples, the MATCH function is often very useful when it is combined with other Excel functions, such as VLOOKUP, INDEX, or MAX. Chapter 5 The MATCH Function 35 Answers to This Chapter’s Questions Given monthly sales for several products, how do I write a formula that returns the sales of a product during a specific month? For example, how much of Product 2 did I sell during June? The file Productlookup.xlsx (shown in Figure 5-2) lists sales of four NBA bobble-head dolls from January through June. How can you write a formula that computes the sales of a given product during a specific month? The trick is to use one MATCH function to find the row in which the given product is located, and another MATCH function to find the column in which the given month is located. You can then use the INDEX function to return the product sales for the month. Figure 5-2 The MATCH function can be used in combination with functions such as INDEX and VLOOKUP. I named the range B4:G7, which contains sales data for the dolls, as Sales. I entered the product I want to know about in cell A10 and the month in cell B10. In C10, I use the formula MATCH(A10,A4:A7,0) to determine which row number in the range Sales contains sales figures for the Kobe doll. Then, in cell D10, I use the formula MATCH(B10,B3:G3,0) to determine which column number in the range Sales contains June sales. Now that I have the row and column numbers that contain the sales figures we want, I can use the formula INDEX(Sales,C10,D10) in cell E10 to yield the piece of sales data that’s needed. For more ­information on the INDEX function, see Chapter 4, “The INDEX Function.” Given a list of baseball players’ salaries, how do I write a formula that yields the player with the highest salary? How about the player with the fifth-highest salary? The file Baseball.xlsx (see Figure 5-3) lists the salaries paid to 401 major league baseball ­players during the 2001 season. The data is not sorted by salary, and we want to write a formula that returns the name of the player with the fi salary, as well as the name of the player with the fifth-highest salary. To find the name of the player with the highest salary, proceed as follows: ■ Use the MAX function to determine the value of the highest salary. ■ Use the MATCH function to determine the row that contains the player with the highest salary. 36 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Use a VLOOKUP function (keying off the data row containing the player’s salary) to look up the player’s name. I named the range C12:C412, which includes the players’ salaries, as Salaries. I named the range used in our VLOOKUP function (range A12:C412) as Lookup. Figure 5-3 This example uses the MAX, MATCH, and VLOOKUP functions to find and display the highest value in a list. In cell C9, I find the highest player salary ($22 million) with the formula MAX(Salaries). Next, in cell C8, I use the formula MATCH(C9,Salaries,0) to determine the “player number” of the player with the highest salary. I used match type=0 because the salaries are not listed in ­either ascending or descending order. Player number 345 has the highest salary. Finally, in cell C6, I use the function VLOOKUP(C8,Lookup,2) to find the player’s name in the second column of the lookup range. Not surprisingly, we find that Alex Rodriguez was the highest paid player in 2001. To find the name of the player with the fifth-highest salary, you need a function that yields the fifth-largest number in an array. The LARGE function does that job. The syntax of the LARGE function is LARGE(cell range,k). When the LARGE function is entered this way, it returns the kth-largest number in a cell range. Thus, the formula LARGE(salaries,5) in cell D9 yields the fifth-largest salary ($12.6 million). Proceeding as before, we find that Derek Jeter is the player with the fifth-highest salary. (The dl before Jeter’s name indicates that at the beginning of the season, Jeter was on the disabled list.) The function SMALL(salaries,5) would return the fifth-lowest salary. Given the annual cash flows from an investment project, how do I write a formula that ­returns the number of years required to pay back the project’s initial investment cost? Chapter 5 The MATCH Function 37 The file Payback.xlsx, shown in Figure 5-4, shows the projected cash flows for an investment project over the next 15 years. We assume that in Year 1, the project required a cash outflow of $100 million. During Year 1, the project generated a cash inflow of $14 million. We expect cash flows to grow at 10 percent per year. How many years will pass before the project pays back its investment? The number of years required for a project to pay back an investment is called the payback period. In high-tech industries, the payback period is often used to rank investments. (You’ll learn in Chapter 8, “Evaluating Investments by Using Net Present Value Criteria,” that payback is flawed as a measure of investment quality because it ignores the value of money over time.) For now, let’s concentrate on how to determine the payback period for our simple ­investment model. Figure 5-4 Using the MATCH function to calculate an investment’s payback period. To determine the payback period for the project, you proceed as follows: ■ In column B, compute the cash flows for each year. ■ In column C, compute the cumulative cash flows for each year. Now you can use the MATCH function (with match type=1) to determine the row number of the first year in which cumulative cash flow is positive. This calculation gives you the payback period. I gave the cells in B1:B3 the range names listed in A1:A3. Year 0 cash flow (–Initial_investment) is entered in cell B5. Year 1 cash flow (Year_1_cf) is entered in cell B6. Copying from B7 to B8:B20 the formula B6*(1+Growth) computes the cash flow for Years 2 through 15. 38 Microsoft Excel 2010: Data Analysis and Business Modeling To compute the Year 0 cumulative cash flow, I used the formula B5 in cell C5. For later years, you can calculate cumulative cash flow by using a formula such as Year t cumulative cash flow=Year t–1 cumulative cash flow+Year t cash flow. To implement this relationship, simply copy from C6 to C7:C20 the formula =C5+B6. To compute the payback period, use the MATCH function (with match type=1) to compute the last row of the range C5:C20 containing a value less than 0. This calculation always gives you the payback period. For example, if the last row in C5:C20 that contains a value less than 0 is the sixth row in the range, that means the seventh value marks the cumulative cash flow for the first year the project is paid back. Because our first year is Year 0, the payback occurs during Year 6. Therefore, the formula in cell E2, MATCH(0,C5:C20,1), yields the payback period (6 years). If any cash flows after Year 0 are negative, this method fails because the range of cumulative cash flows would not be listed in ascending order. Problems 1. Using the distances between U.S. cities given in the file Index.xlsx, write a formula ­using the MATCH function to determine (based on the names of the cities) the distance ­between any two of the cities. 2. The file Matchtype1.xlsx lists in chronological order the dollar amounts of 30 ­transactions. Write a formula that yields the first transaction for which total volume to date exceeds $10,000. 3. The file Matchthemax.xlsx gives the product ID codes and unit sales for 265 products. Use the MATCH function in a formula that yields the product ID code of the product with the largest unit sales. 4. The file Buslist.xlsx gives the amount of time between bus arrivals (in minutes) at 45th Street and Park Avenue in New York City. Write a formula that, for any arrival time after the first bus, gives the amount of time you have to wait for a bus. For example, if you arrive 12.4 minutes from now, and buses arrive 5 minutes and 21 minutes from now, you wait 21–12.4=8.6 minutes for a bus. 5. The file Salesdata.xlsx contains the number of computers sold by each salesperson. Create a formula that returns the units sold by a given salesperson. 6. Suppose the VLOOKUP function was removed from Excel. Explain how you could still “get along” by using the MATCH and INDEX functions? Chapter 6 Text Functions Questions answered in this chapter: ■ I have a worksheet in which each cell contains a product description, a product ID, and a product price. How can I put all the product descriptions in column A, all the product IDs in column B, and all the prices in column C? ■ Every day I receive data about total U.S. sales, which is computed in a cell as the sum of East, North, and South regional sales. How can I extract East, North, and South sales to separate cells? ■ At the end of each school semester, my students evaluate my teaching performance on a scale from 1 to 7. I know how many students gave me each possible rating score. How can I easily create a bar graph of my teaching evaluation scores? When someone sends you data or you download data from the Web, it often isn’t formatted the way you want. For example, in sales data you download, dates and sales amounts might be in the same cell, but you need them to be in separate cells. How can you manipulate data so that it appears in the format you need? The answer is to become good at using the Microsoft Excel text functions. In this chapter, I’ll show you how to use the following Excel text functions to magically manipulate your data so that it looks the way you want: ■ LEFT ■ RIGHT ■ MID ■ TRIM ■ LEN ■ FIND ■ SEARCH ■ REPT ■ CONCATENATE ■ REPLACE ■ VALUE ■ UPPER ■ LOWER ■ CHAR 39 40 Microsoft Excel 2010: Data Analysis and Business Modeling Text Function Syntax The file Reggie.xlsx, shown in Figure 6-1, includes examples of text functions. You’ll see how to apply these functions to a specific problem later in the chapter, but let’s begin by seeing what each of the text functions does. Then we’ll combine the functions to perform some fairly complex manipulations of data. Figure 6-1 Examples of text functions. The LEFT Function The function LEFT(text,k) returns the first k characters in a text string. For example, cell C3 contains the formula LEFT(A3,4). Excel returns Regg. The RIGHT Function The function RIGHT(text,k) returns the last k characters in a text string. For example, in cell C4, the formula RIGHT(A3,4) returns ller. The MID Function The function MID(text,k,m) begins at character k of a text string and returns the next m ­characters. For example, the formula MID(A3,2,5) in cell C8 returns characters 2–6 from cell A3, the result being eggie. The TRIM Function The function TRIM(text) removes all spaces from a text string except for single spaces ­between words. For example, in cell C5 the formula TRIM(A3) eliminates two of the three spaces between Reggie and Miller and yields Reggie Miller. The TRIM function also removes spaces at the beginning and end of the cell. Chapter 6 Text Functions 41 The LEN Function The function LEN(text) returns the number of characters in a text string (including spaces). For example, in cell C6, the formula LEN(A3) returns 15 because cell A3 contains 15 characters. In cell C7, the formula LEN(C5) returns 13. Because the trimmed result in cell C5 has two spaces removed, cell C5 contains two fewer characters than the original text in A3. The FIND and SEARCH Functions The function FIND(text to find,actual text,k) returns the location at or after character k of the first character of text to find in actual text. FIND is case sensitive. SEARCH has the same ­syntax as FIND, but it is not case sensitive. For example, the formula FIND(“r”,A3,1) in cell C10 ­returns 15, the location of the first lowercase r in the text string Reggie Miller. (The uppercase R is ignored because FIND is case sensitive.) Entering SEARCH(“r”,A3,1) in cell C11 returns 1 because SEARCH matches r to either a lowercase character or an uppercase character. Entering FIND(“ “,A3,1) in cell C9 returns 7 because the first space in the string Reggie Miller is the seventh character. The REPT Function The REPT function allows you to repeat a text string a specified number of times. The syntax is REPT(text,number of times). For example REPT(“|”,3) produces the output |||. The CONCATENATE and & Functions The function CONCATENATE(text1,text2, . . .,text30) can be used to join up to 30 text strings into a single string. The & operator can be used instead of CONCATENATE. For example, entering in cell C12 the formula A1&” “&B1 returns Reggie Miller. Entering in cell D12 the ­formula CONCATENATE(A1,” “,B1) yields the same result. The REPLACE Function The function REPLACE(old text,k,m,new text) begins at character k of old text and replaces the next m characters with new text. For example, in cell C13, the formula REPLACE(A3,3,2,”nn”) replaces the third and fourth characters (gg) in cell A3 with nn. This formula yields Rennie Miller. 42 Microsoft Excel 2010: Data Analysis and Business Modeling The VALUE Function The function VALUE(text) converts a text string that represents a number to a number. For example, entering in cell B15 the formula VALUE(A15) converts the text string 31 in cell A15 to the numerical value 31. You can identify the value 31 in cell A15 as text because it is left justified. Similarly, you can identify the value 31 in cell B15 as a number because it is right justified. The UPPER and LOWER Functions The function UPPER(text) changes text to all uppercase. Thus, if cell A1 contains jan then UPPER(A1) yields JAN. Similarly, the function LOWER(text) changes text to lowercase. If A1 contains JAN, LOWER(A1) yields jan. The CHAR Function The function CHAR(number) yields (for a number between 1 and 255) the ASCII character with that number. For example, CHAR(65) yields A, CHAR(66) yields B, and so on. Answers to This Chapter’s Questions You can see the power of text functions by using them to solve some actual problems that were sent to me by former students working for Fortune 500 corporations. Often, the key to solving problems is to combine multiple text functions into a single formula. I have a worksheet in which each cell contains a product description, a product ID, and a product price. How can I put all the product descriptions in column A, all the product IDs in column B, and all the prices in column C? In this example, the product ID is always defined by the first 12 characters, and the price is always indicated in the last 8 characters (with two spaces following the end of each price). The solution, contained in the file Lenora.xlsx and shown in Figure 6-2, uses the LEFT, RIGHT, MID, VALUE, TRIM, and LEN functions. It’s always a good idea to begin by trimming excess spaces, which you can do by copying from B4 to B5:B12 the formula TRIM(A4). The only excess spaces in column A turn out to be the two spaces inserted after each price. To see this, put the cursor in cell A4 and press F2 to edit the cell. If you move to the end of the cell, you will see two blank spaces. The results of using the TRIM function are shown in Figure 6-2. To prove that the TRIM function removed the two extra spaces at the end of cell A4, you can use the formulas =LEN(A4) and =LEN(B4) to show that cell A4 contains 52 characters and cell B4 contains 50 characters. Chapter 6 Text Functions 43 Figure 6-2 Using the TRIM function to trim away excess spaces. To capture the product ID, you need to extract the 12 leftmost characters from column B. To do this, copy from C4 to C5:C12 the formula LEFT(B4,12). This formula extracts the 12 leftmost characters from the text in cell B4 and the following cells, yielding the product ID, as you can see in Figure 6-3. Figure 6-3 Using text functions to extract the product ID, price, and product description from a text string. To extract the product price, we know that the price occupies the last six digits of each cell, so we need to extract the rightmost six characters from each cell. I copied from cell D4 to D5:D12 the formula VALUE(RIGHT(B4,6)). I used the VALUE function to turn the extracted text into a numerical value. If you don’t convert the text to a numerical value, you can’t perform mathematical operations on the prices. Extracting the product description is much trickier. By examining the data, you can see that if we begin our extraction with the thirteenth character and continue until we are 6 characters from the end of the cell, we can get the data we want. Copying from E4 to E5:E12 the formula MID(B4,13,LEN(B4)–6–12) does the job. LEN(B4) returns the total number of characters in the trimmed text. This formula (MID for Middle) begins with the thirteenth character and then extracts the number of characters equal to the total number less the 12 characters at the beginning (the product ID) and the 6 characters at the end (price). This subtraction leaves only the product description. Now suppose you are given the data with the product ID in column C, the price in column D, and the product description in column E. Can you put these values together to recover our original text? Text can easily be combined by using the CONCATENATE function. Copying from F4 to F5:F12 the formula CONCATENATE(C4,E4,D4) recovers our original (trimmed) text, which you can see in Figure 6-3. 44 Microsoft Excel 2010: Data Analysis and Business Modeling The concatenation formula starts with the product ID in cell C4. Next you add the product description from cell E4. Finally, you add the price from cell D4. You have now recovered the entire text describing each computer! Concatenation can also be performed by using the & sign. You could recover the original product ID, product description, and price in a single cell with the formula C4&E4&D4. Note that cell E4 contains a space before the product description and a space after the product description. If cell E4 did not contain these spaces, you could use the formula C4&” “&E4&” “&D4 to insert the necessary spaces. Note that the space between each pair of quotation marks results in the insertion of a space. If the product IDs did not always contain 12 characters, this method of extracting the ­information would fail. You could, however, extract the product IDs by using the FIND function to discover the location of the first space. Then you could obtain the product ID by using the LEFT function to extract all characters to the left of the first space. The example in the next section shows how this approach works. If the price did not always contain precisely six characters, extracting the price would be a little tricky. See Problem 15 for an example of how to extract the last word in a text string. Every day I receive data about total U.S. sales, which is computed in a cell as the sum of East, North, and South regional sales. How can I extract East, North, and South sales to separate cells? This problem was sent to me by an employee in the Microsoft finance department. She ­received a worksheet each day containing formulas such as =50+200+400, =5+124+1025, and so on. She needed to extract each number into a cell in its own column. For example, she wanted to extract the first number (East sales) in each cell to column C, the second number (North sales) to column D, and the third number (South sales) to column E. What makes this problem challenging is that we don’t know the exact location of the character at which the second and third numbers start in each cell. In cell A3, North sales begin with the fourth character. In cell A4, North sales begin with the third character. The data for this example is in the file Salesstripping.xlsx, shown in Figure 6-4. You can ­identify the locations of the different regions’ sales as follows: ■ East sales are represented by every character to the left of the first plus sign (+). ■ North sales are represented by every character between the first and second plus signs. ■ South sales are represented by every character to the right of the second plus sign. By combining the FIND, LEFT, LEN, and MID functions, you can easily solve this problem as follows: ■ Use the Edit, Replace command to replace each equal sign (=) with a space. To remove the equal signs, select the range A3:A6. Then, on the Home tab in the Editing group, Chapter 6 Text Functions 45 click Find & Select, and then click Replace. In the Find What field, enter an equal sign and insert a space in the Replace With field. Then click Replace All. This converts each formula into text by replacing the equal sign by a space. ■ Use the FIND function to locate the two plus signs in each cell. Figure 6-4 Extracting East, North, and South sales with a combination of the FIND, LEFT, LEN, and MID functions. Begin by finding the location of the first plus sign for each piece of data. By copying from B3 to B4:B6 the formula FIND(“+”,A3,1), you can locate the first plus sign for each data point. To find the second plus sign, begin one character after the first plus sign, copying from C3 to C4:C6 the formula FIND(“+”,A3,B3+1). To find East sales, you can use the LEFT function to extract all the characters to the left of the first plus sign, copying from D3 to D4:D6 the formula LEFT(A3,B3-1). To extract North sales, use the MID function to extract all the characters between the two plus signs. Begin one character after the first plus sign and extract the number of characters equal to (Position of 2nd plus sign)–(Position of 1st plus sign) – 1. If you leave out the –1, you’ll get the second plus sign. (Go ahead and check this.) So, to get North sales, you copy from E3 to E4:E6 the formula MID(A3,B3+1,C3–B3–1). To extract South sales, you use the RIGHT function to extract all the characters to the right of the second plus sign. South sales will have the number of characters equal to (Total ­characters in cell) – (Position of 2nd plus sign). You compute the total number of ­characters in each cell by copying from F3 to F4:F6 the formula LEN(A3). Finally, you can ­obtain South sales by copying from G3 to G4:G6 the formula RIGHT(A3,F3-C3). Extracting Data by Using the Text To Columns Wizard There is an easy way to extract East, North, and South sales (and data similar to this example) without using text functions. Simply select cells A3:A6, and then on the Data tab on the ribbon, in the Data Tools group, click Text To Columns. Select Delimited, click Next, and then fill in the dialog box as shown in Figure 6-5. 46 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 6-5 Convert Text To Columns Wizard. Entering the plus sign in the Delimiters area directs Excel to separate each cell into columns, breaking at each occurrence of the plus sign. Note that options are provided for breaking data at tabs, semicolons, commas, or spaces. Now click Next, select the upper-left corner of your destination range (in the example, I chose cell A8), and click Finish. The result is shown in Figure 6-6. Figure 6-6 Results of Convert Text To Columns Wizard. At the end of each school semester, my students evaluate my teaching performance on a scale from 1 to 7. I know how many students gave me each possible rating score. How can I easily create a bar graph of my teaching evaluation scores? The file Repeatedhisto.xlsx contains my teaching evaluation scores (on a scale from 1 through 7). Two people gave me scores of 1, three people gave me scores of 2, and so on. Using the REPT function, you can easily create a graph to summarize this data. Simply copy from D4 to D5:D10 the formula =REPT(“|”,C4). This formula places in column D as many “|” characters as the entry in column C. Figure 6-7 makes clear the preponderance of good scores (6s and 7s) and the relative rarity of poor scores (1s and 2s). Repeating a character such as | enables you to easily mimic a bar graph or histogram. See Chapter 41, “Summarizing Data by Using Histograms,” for further discussion of how to create histograms with Excel. Chapter 6 Text Functions 47 Figure 6-7 Using the REPT function to create a frequency graph. Problems 1. Cells B2:B5 of the workbook Showbiz.xlsx contain the fictitious addresses of some of our favorite people. Use text functions to extract each person’s name to one column and each person’s street address to another. 2. The workbook IDprice.xlsx contains the product ID and prices for various products. Use text functions to put the product IDs and prices in separate columns. Then use the Text To Columns command on the Data tab on the ribbon to accomplish the same goal. 3. The workbook Quarterlygnpdata.xlsx contains quarterly GNP data for the United States (in billions of 1996 dollars). Extract this data to three separate columns, where the first column contains the year, the second column contains the quarter number, and the third column contains the GNP value. 4. The file Textstylesdata.xlsx contains information about the style, color, and size for a variety of shirts. For example, the first shirt is style 100 (indicated by digits between the colon and the hyphen). Its color is 65, and its size is L. Use text functions to extract the style, color, and size of each shirt. 5. The file Emailproblem.xlsx gives first and last names of several new Microsoft ­employees. To create an e-mail address for each employee, you need to follow the first letter of the employee’s first name by the employee’s last name and add @microsoft.com to the end. Use text functions to efficiently create the e-mail addresses. 6. The file Lineupdata.xlsx gives the number of minutes played by five-player combinations (lineups). (Lineup 1 played 10.4 minutes, and so on.) Use text functions to put this data into a form suitable for numerical calculations; for example, transform 10.4m into the number 10.4. 7. The file Reversenames.xlsx gives the first names, middle names or initials, and last names of several people. Transform these names so that the last name appears first, followed by a comma, followed by the first and middle names. For example, transform Gregory William Winston into Winston, Gregory William. 8. The file Incomefrequency.xlsx contains the distribution of starting salaries for MBA graduates of Faber College. Summarize this data by creating a frequency graph. 48 Microsoft Excel 2010: Data Analysis and Business Modeling 9. Recall that CHAR(65) yields the letter A, CHAR(66) yields the letter B, and so on. Use these facts to efficiently populate cells B1:B26 with the sequence A, B, C, and so on through Z. 10. The file Capitalizefirstletter.xlsx contains various song titles or phrases, such as “The rain in Spain falls mainly in the plain.” Ensure that the first letter of each song title is capitalized. 11. The file Ageofmachine.xlsx contains data in the following form: S/N: 160768, vib roller,84” smooth drum,canopy Auction: 6/2–4/2005 in Montgomery, Alabama Each row refers to a machine purchase. Determine the year of each purchase. 12. When downloading corporate data from the Security and Exchange Commission’s EDGAR site, you often obtain data for a company that looks something like this: Cash and Cash Equivalents $31,848 $ 31,881 How would you efficiently extract the Cash and Cash Equivalents for each company? 13. The file Lookuptwocolumns.xlsx gives the model, year, and price for each of a series of cars. Set up formulas that enable you to enter the model and year of a car and return its price. 14. The file Moviedata.xlsx contains the names of several movies followed by the number of copies of the movie DVD purchased by a local video store. Extract the title of each movie from this data. 15. The file Moviedata.xlsx contains the names of several movies followed by the number of copies of the movie DVD purchased by a local video store. For each movie, extract the number of copies purchased from this data. Hint: You probably want to use the SUBSTITUTE function. The syntax of the SUBSTITUTE function is SUBSTITUTE(text,old_ text,new_text,[instance_num]). If instance_num is omitted, every occurrence of old_text in text is replaced by new_text. If instance_num is given, then only that occurrence of old_text is replaced by new_text. For example, SUBSTITUTE(A4,1,2) would replace each 1 in cell A4 with a 2, but SUBSTITUTE(A4,1,2,3) would replace only the third occurrence of a 1 in cell A4 with a 2. 16. The file Problem16data.xlsx contains the number of people who responded 1–5 on a marketing questionnaire (1 = Very unlikely to buy product, …, 5 = Very likely to buy product). Summarize this data graphically by using the asterisk symbol. To make your summary look more appealing, you can go to the Home tab on the ribbon and choose Orientation in the Alignment group and make the text vertical. Then right-click the row number, and increase the row height. Finally, in the Alignment group choose Wrap Text so that you make the text of your graph vertical. 17. The file Problem17data.xlsx contains people’s names (such as Mr. John Doe). Use text functions to extract each person’s title and first name to separate columns. Chapter 7 Dates and Date Functions Questions answered in this chapter: ■ When I enter dates in Excel, I often see a number such as 37625 rather than a date such as 1/4/2003. What does this number mean, and how do I change it to a normal date? ■ Can I use a formula to automatically display today’s date? ■ How do I determine a date that is 50 workdays after another date? What if I want to exclude holidays? ■ How do I determine the number of workdays between two dates? ■ I have 500 different dates entered in an Excel worksheet. How do I write formulas to extract from each date the month, year, day of the month, and day of the week? ■ I am given the year, month, and day of the month for a date. Is there an easy way to recover the actual date? ■ My business has purchased and sold machines. For some, I have the date the machine was purchased and the date the machine was sold. Can I easily determine how many months we kept these machines? To illustrate the most commonly used month-day-year formats in Microsoft Excel 2010, let’s suppose today is January 4, 2004. You can enter this date as any of the following: ■ 1/4/2004 ■ 4-Jan-2004 ■ January 4, 2004 ■ 1/4/04 If you enter only two digits to represent a year, and the digits are 30 or higher, Excel assumes the digits represent years in the twentieth century; if the digits are lower than 30, Excel assumes they represent years in the twenty-first century. For example, 1/1/29 is treated as January 1, 2029, but 1/1/30 is treated as January 1, 1930. Each year, the year treated as dates in the twenty-first century increases by one. Answers to This Chapter’s Questions When I enter dates into Excel, I often see a number such as 37625 rather than a date such as 1/4/2003. What does this number mean, and how do I change it to a normal date? 49 50 Microsoft Excel 2010: Data Analysis and Business Modeling The way Excel treats calendar dates is sometimes confusing to the novice. The key is ­understanding that Excel can display a date in a variety of month-day-year formats, or it can display a date in serial format. A date in serial format, such as 37625, is simply a positive ­integer that represents the number of days between the given date and January 1, 1900. Both the current date and January 1, 1900 are included in the count. For example, Excel displays January 3, 1900, in serial format as the number 3, which means there are three days between January 1, 1900, and January 3, 1900 (including both days). Note Excel assumes that 1900 was a leap year containing 366 days. In reality, 1900 c­ ontained only 365 days. For some fascinating information on the origin of this “bug” see www.­joelonsoftware.com/items/2006/06/16.html. Figure 7-1 shows the worksheet named Serial Format in the file Dates.xlsx. Suppose you are given the dates shown in cells D5:D14 in serial format. For example, the value 37622 in cell D5 indicates a date that is 37,622 days after January 1, 1900 (including both January 1, 1900, and day 37,622). To display these serial dates in month-day-year format, copy them to E5:E14. Select the cell range E5:E14, right-click the selection, and choose Format Cells. At any time, by the way, you can bring up the Format Cells dialog box by pressing Ctrl+1. Now select the date format you want from the list shown in Figure 7-2. The dates in E5:E14 will be displayed in date format, as you can see in Figure 7-1. If you want to format dates in the serial number format, select E5:E14, right-click the selection, and choose Format Cells, General. Figure 7-1 Use the Format Cells command to change dates from serial number format to month-day-year format. Simply changing the date format of a cell to General will yield the date in serial format. Another way to obtain the date in serial format is to use the DATEVALUE function and enclose the date in quotation marks. For example, in the Date Format worksheet of the file Dates.xlsx, cell I5 contains the formula DATEVALUE(“1/4/2003”). Excel yields 37625, which is the serial format for January 4, 2003. Chapter 7 Dates and Date Functions 51 Figure 7-2 Reformatting a serial number to month-day-year format. Can I use a formula to automatically display today’s date? Displaying today’s date with a formula is easy, as you can see by looking at cell C13 of the Date Format worksheet shown in Figure 7-3. Entering the TODAY() function in a cell will ­display today’s date. I created this screenshot on July 10, 2010. Figure 7-3 Examples of date functions. How do I determine a date that is 50 workdays after another date? What if I want to ­exclude holidays? The function WORKDAY(start_date,#days,[holidays]) displays the date that is the number of workdays (a workday is a nonweekend day) indicated by #days after a given start date. Holidays is an optional argument for the function that allows you to exclude from the calculation any dates that are listed in a cell range. Thus, entering the formula WORKDAY(C14,50) in cell D14 of the Date Format worksheet tells us that 3/14/2003 is 50 workdays after 01/03/2003. If we believe that the only two holidays that matter are Martin Luther King Day and Independence Day, we can change the formula to WORKDAY(C14,50,F17:F18). With this addition, Excel does not count 01/20/2003 in its calculations, making 03/17/2003 the fiftieth 52 Microsoft Excel 2010: Data Analysis and Business Modeling workday after 01/03/2003. Note that instead of referring to the holidays in other cells, you can enter them directly in the WORKDAY formula with the serial number of each holiday enclosed in { }. For example, WORKDAY(38500,10,{38600,38680,38711}) would find the tenth workday after the date with serial number 38500, ignoring Labor Day, Thanksgiving, and Christmas of 2005. Excel 2010 contains a new function, WORKDAY.INTL, that allows you to choose your own ­definition of a “workday.” The syntax is WORKDAY.INTL(start_date,days,weekend, [holidays]). The third argument lets you specify the definition of a day off. You can use the following codes to specify the definition of a day off. 1 or omitted Saturday, Sunday 2 Sunday, Monday 3 Monday, Tuesday 4 Tuesday, Wednesday 5 Wednesday, Thursday 6 Thursday, Friday 7 Friday, Saturday 11 Sunday only 12 Monday only 13 Tuesday only 14 Wednesday only 15 Thursday only 16 Friday only 17 Saturday only For example, in sheet Date Format of the file Date.xlsx, I computed in cell C27 (see Figure 7-4) the date 100 workdays after 3/14/2011, with Sunday and Monday as days off, with the formula WORKDAY.INTL(C23,100,2). In cell C28 I computed the date 100 workdays after 3/14/2011 when only Sunday is a day off by using the formula WORKDAY.INTL(C23,100,11). You can also enter the definition of “days off” with a string of seven ones and zeroes, where a one indicates a day off and the first entry in the string is Monday, the second is Tuesday, and so on. Thus, in cells D26 and D27 I duplicated our previous results with the formulas WORKDAY.INTL(C23,100,”1000001”) and WORKDAY.INTL(C23,100,”0000001”), respectively. How do I determine the number of workdays between two dates? The key to solving this problem is to use the NETWORKDAYS function. The syntax for this function is NETWORKDAYS(start_date,end_date,[holidays]), where holidays is an optional argument identifying a cell range that lists the dates you want to count as holidays. The NETWORKDAYS function returns the number of working days between start_date and end_date excluding weekends and any listed holidays. As an illustration of the NETWORKDAYS function, look at cell C18 in the Date Format worksheet, which contains Chapter 7 Dates and Date Functions 53 the formula NETWORKDAYS(C14,C15). This formula yields the number of working days between 1/3/2003 and 8/4/2003, which is 152. The formula NETWORKDAYS(C14,C15,F17:F18) in cell C17 yields the number of workdays between 1/3/2003 and 8/4/2003, excluding Martin Luther King Day and Independence Day. The answer is 152–2=150. Excel 2010 includes a new function, NETWORKDAYS.INTL, that, like the WORKDAYS.INTL function, allows you to customize the definition of a weekend. For example, in cell C31 of the worksheet Date Format of the file Dates.xlsx, I computed the number of workdays (373) between 3/14/2011 and 8/16/2012, when Sunday and Monday are days off, with the formula NETWORKDAYS.INTL(C23,C24,2). (See Figure 7-4.) In cell D31 I computed the same result with the formula NETWORKDAYS.INTL(C23,C24,”1000001”). Figure 7-4 Examples of international date functions. I have 500 different dates entered in an Excel worksheet. How do I write formulas that will extract from each date the month, year, day of the month, and day of the week? The Date Format worksheet of the file Dates.xlsx (see Figure 7-3) lists several dates in the cell range B5:B10. In B5 and B7:B9, I used four different formats to display January 4, 2003. In columns D:G, I extracted the year, month, day of the month, and day of the week for each date. By copying from D5 to D6:D10 the formula YEAR(B5), I extracted the year for each date. By copying from E5 to E6:E10 the formula MONTH(B5), I extracted the month (1=January, 2=February, and so on) portion of each date. By copying from F5 to F6:F10 the formula DAY(B5), I extracted the day of the month for each date. Finally, by copying from G5 to G6:G10 the formula WEEKDAY(B5,1), I extracted the day of the week for each date. When the last argument of the WEEKDAY function is 1, then 1=Sunday, 2=Monday, and so on. When the last argument is 2, then 1=Monday, 2=Tuesday, and so on. When the last ­argument is 3, then 0=Monday, 1=Tuesday, and so on. I am given the year, month, and day of the month for a date. Is there an easy way to ­recover the actual date? The DATE function, whose arguments are DATE(year,month,day), returns the date with the given year, month, and day of the month. In the Date Format worksheet, copying from cell H5 to cells H6:H10 the formula DATE(D5,E5,F5) recovers the dates we started with. 54 Microsoft Excel 2010: Data Analysis and Business Modeling My business has purchased and sold machines. For some, I have the date the machine was purchased and the date the machine was sold. Can I easily determine how many months we kept these machines? The DATEDIF function can easily determine the number of complete years, months, or days between two dates. In file Datedif.xlsx (see Figure 7-5), you can see that a machine was bought on 10/15/2006 and was sold on 4/10/2008. How many complete years, months, or days was the machine kept? The syntax of the DATEDIF function is DATEDIF(startdate,enddate,time unit). If the unit is written as “y,” you get the number of complete years between the start and end dates; if the unit is written as “m,” you get the number of complete months between the start and end dates; and if the unit is written as “d,” you get the number of complete days between the start and end dates. Thus, entering DATEDIF(D4,D5,”y”) in cell D6 shows that the machine was kept for one full year. Entering the formula DATEDIF(D4,D5,”m”) in cell D7 shows the machine was kept for 17 complete months. Entering the formula DATEDIF(D4,D5,”d”) in cell D7 shows the machine was kept for 543 complete days. Figure 7-5 Using the DATEDIF function. Problems 1. What is the serial format for January 25, 2006? 2. What is the serial format for February 14, 1950? 3. To what actual date does a serial format of 4526 correspond? 4. To what actual date does a serial format of 45000 correspond? 5. Determine the day that occurs 74 workdays after today’s date (including holidays). 6. Determine the day that occurs 74 workdays after today’s date (including holidays but excluding the current year’s Christmas, New Year’s Day, and Independence Day). 7. How many workdays (including holidays) are there between July 10, 2005, and August 15, 2006? 8. How many workdays (including holidays but excluding Christmas, New Year’s Day, and Independence Day) are there between July 10, 2005, and August 15, 2006? Chapter 7 Dates and Date Functions 55 Note The file Datep.xlsx contains several hundred dates. Use this file for the next set of problems. 9. Determine the month, year, day of the month, and day of the week for each date. 10. Express each date in serial format. 11. A project begins on December 4, 2005. The project consists of three activities: Activities 1, 2, and 3. Activity 2 can start the day after Activity 1 finishes. Activity 3 can start the day after Activity 2 finishes. Set up a worksheet that accepts as inputs the duration (in days) of the three activities and outputs both the month and year during which each activity is completed. 12. We bought a stock on July 29, 2005, and sold it on December 30, 2005. The stock exchange is closed on Labor Day, Christmas, and Thanksgiving. Create a list of dates of when the stock market was open during the time we owned the stock. 13. The file Machinedates.xlsx contains dates on which several machines were bought and sold. Determine how many months and years each machine was kept. 14. Given any date, find a way to have Excel compute the day of the week of the first day of the date’s month. 15. Given any date, find a way to have Excel compute the last day of the date’s month. Hint: DATE(2005,13,1), surprisingly, returns 1/1/2006. 16. Given any date, how can you compute which day of the year it is? For example, what day of the year will 4/15/2020 be? Hint: The formula DATE(2020,1,0) will return the ­serial number for day 0 of January 2020, and Excel will treat this as December 31, 2019. 17. In the country of Fredonia, employees have Tuesday and Wednesday off. What date is 200 workdays after 5/3/2013? 18. In the country of Lower Ampere, employees have Friday and Saturday off. Also Valentine’s Day is a holiday. How many workdays are there between 1/10/2014 and 5/31/2015? 19. Suppose the first quarter of each year is January–March, the second quarter is April– June, and so on. Write a formula that returns for a given date the first day of the quarter. 20. Using the definitions of quarters given in Problem 19, write a formula that computes for any given date the last day of the previous quarter. 21. Set up a spreadsheet in which a person can enter his or her date of birth and the spreadsheet returns the person’s actual age. Chapter 8 Evaluating Investments by Using Net Present Value Criteria Questions answered in this chapter: ■ What is net present value (NPV)? ■ How do I use the Excel NPV function? ■ How can I compute NPV when cash flows are received at the beginning of a year or in the middle of a year? ■ How can I compute NPV when cash flows are received at irregular intervals? Consider the following two investments, whose cash flows are listed in the file NPV.xlsx and shown in Figure 8-1. ■ Investment 1 requires a cash outflow of $10,000 today and $14,000 two years from now. One year from now, this investment will yield $24,000. ■ Investment 2 requires a cash outflow of $6,000 today and $1,000 two years from now. One year from now, this investment will yield $8,000. Which is the better investment? Investment 1 yields total cash flow of $0, whereas Investment 2 yields a total cash flow of $1,000. At first glance, Investment 2 appears to be better. But wait a minute. Most of the cash outflow for Investment 1 occurs two years from now, while most of the cash outflow for Investment 2 occurs today. Spending $1 two years from now doesn’t seem as costly as spending $1 today, so maybe Investment 1 is better than first ­appears. To determine which investment is better, you need to compare the values of cash flows received at different points in time. That’s where the concept of net present value proves useful. Figure 8-1 To determine which investment is better, you need to calculate net present value. 57 58 Microsoft Excel 2010: Data Analysis and Business Modeling Answers to This Chapter’s Questions What is net present value? The net present value (NPV) of a stream of cash flow received at different points in time is simply the value measured in today’s dollars. Suppose you have $1 today and you invest this dollar at an annual interest rate of r percent. This dollar will grow to 1+r dollars in the first year, (1+r)2 dollars in two years, and so on. You can say, in some sense, that $1 today equals $(1+r) a year from now and $(1+r)2 two years from now. In general, you can say that $1 today is equal to $(1+r)n n years from now. As an equation, this calculation can be expressed as follows: $1 now=$(1+r)n received n years from now If you divide both sides of this equation by (1+r)n, you get the following important result: 1/(1+r)n now=$1 received n years from now This result tells you how to compute (in today’s dollars) the NPV of any sequence of cash flows. You can convert any cash flow to today’s dollars by multiplying the cash flow received n years from now (n can be a fraction) by 1/(1+r)n. You then add up the value of the cash flows (in today’s dollars) to find the investment’s NPV. Let’s assume r is equal to 0.2. You could calculate the NPV for the two investments we’re ­considering as follows: = Investment1NPV = –10,000 + 24,000 –14,000 = $277.78 + (1 + 0.20)1 (1 + 0.20)2 = Investment2NPV = –6,000 + 8,000 –1,000 = $–27.78 + (1 + 0.20)1 (1 + 0.20)2 On the basis of NPV, Investment 1 is superior to Investment 2. Although total cash flow for Investment 2 exceeds total cash flow for Investment 1, Investment 1 has a better NPV because a greater proportion of Investment 1’s negative cash flow comes later, and the NPV criterion gives less weight to cash flows that come later. If you use a value of .02 for r, Investment 2 has a larger NPV because when r is very small, later cash flows are not discounted as much, and NPV returns results similar to those derived by ranking investments ­according to total cash flow. Chapter 8 Evaluating Investments by Using Net Present Value Criteria 59 Note I randomly chose the interest rate r=0.2, skirting the issue of how to determine an ­ ppropriate value of r. You need to study finance for at least a year to understand the issues a involved in determining an appropriate value for r. The appropriate value of r used to compute NPV is often called the company’s cost of capital. Suffice it to say that most U.S. companies use an annual cost of capital between 0.1 (10 percent) and 0.2 (20 percent). If the annual interest rate is chosen according to accepted finance practices, projects with NPV>0 increase the value of a company, projects with NPV<0 decrease the value of a company, and projects with NPV=0 keep the value of a company unchanged. A company should (if it had unlimited investment capital) invest in every available investment having positive NPV. To determine the NPV of Investment 1 in Excel, I first assigned the range name r_ to the interest rate (located in cell C3). I then copied the Time 0 cash flow from C5 to C7. I determined the NPV for Investment 1’s Year 1 and Year 2 cash flows by copying from D7 to E7 the formula D5/(1+r_)^D$4. The caret symbol (^), located over the number 6 on the keyboard, raises a number to a power. In cell A5, I computed the NPV of Investment 1 by adding the NPV of each year’s cash flow with the formula SUM(C7:E7). To determine the NPV for Investment 2, I copied the formulas from C7:E7 to C8:E8 and from A5 to A6. How do I use the Excel NPV function? The Excel NPV function uses the syntax NPV(rate,range of cells). This function determines the NPV for the given rate of the cash flows in the range of cells. The function’s calculation assumes that the first cash flow is one period from now. In other words, entering the formula NPV(r_,C5:E5) will not determine the NPV for Investment 1. Instead, this formula (entered in cell C14) computes the NPV of the following sequence of cash flows: –$10,000 a year from now, $24,000 two years from now, and –$14,000 three years from now. Let’s call this Investment 1 (End of Year). The NPV of Investment 1 (End of Year) is $231.48. To compute the actual cash NPV of Investment 1, I entered the formula C7+NPV(r_,D5:E5) in cell C11. This formula does not discount the Time 0 cash flow at all (which is correct because Time 0 cash flow is already in today’s dollars), but first multiplies the cash flow in D5 by 1/1.2 and then multiplies the cash flow in E5 by 1/1.22. The formula in cell C11 yields the correct NPV of Investment 1, $277.78. How can I compute NPV when cash flows are received at the beginning of a year or in the middle of a year? To use the NPV function to compute the net present value of a project whose cash flows always occur at the beginning of a year, you can use the approach I described to determine the NPV of Investment 1: separate out the Year 1 cash flow and apply the NPV function to the remaining cash flows. Alternatively, observe that for any year n, $1 received at the beginning 60 Microsoft Excel 2010: Data Analysis and Business Modeling of year n is equivalent to $(1+r) received at the end of year n. Remember that in one year, a dollar will grow by a factor (1+r). Thus, if you multiply the result obtained with the NPV function by (1+r), you can convert the NPV of a sequence of year-end cash flows to the NPV of a sequence of cash flows received at the beginning of the year. You can also compute the NPV of Investment 1 in cell D11 with the formula (1+r_)*C14. Of course, you again obtain an NPV of $277.78. Now suppose the cash flows for an investment occur in the middle of each year. For an organization that receives monthly subscription revenues, you can approximate the 12 monthly revenues received during a given year as a lump sum received in the middle of the year. How can you use the NPV function to determine the NPV of a sequence of mid-year cash flows? For any Year n, $ 1+r received at the end of Year n is equivalent to $1 received at the middle of Year n because in half a year $1 will grow by a factor of 1+r If you assume the cash flows for Investment 1 occur mid year, you can compute the NPV of the mid-year version of Investment 1 in cell C17 with the formula SQRT(1+r_)*C14. You obtain a value of $253.58. How can I compute NPV when cash flows are received at irregular intervals? Cash flows often occur at irregular intervals, which makes computing the NPV or internal rate of return (IRR) of these cash flows more difficult. Fortunately, the Excel XNPV function makes computing the NPV of irregularly timed cash flows a snap. The XNPV function uses the syntax XNPV(rate,values,dates). The first date listed must be the earliest, but other dates need not be listed in chronological order. The XNPV function computes the NPV of the given cash flows assuming the current date is the first date in the sequence. For example, if the first listed date is 4/08/13, the NPV is computed in April 8, 2013 dollars. To illustrate the use of the XNPV function, look at the example on the NPV as of first date worksheet in the file XNPV.xlsx, which is shown in Figure 8-2. Suppose that on April 8, 2013, you paid out $900. Later you receive the following amounts: ■ $300 on August 15, 2013 ■ $400 on January 15, 2014 ■ $200 on June 25, 2014 ■ $100 on July 3, 2015 Chapter 8 Evaluating Investments by Using Net Present Value Criteria 61 If the annual interest rate is 10 percent, what is the NPV of these cash flows? I entered the dates (in Excel date format) in D3:D7 and the cash flows in E3:E7. Entering the formula XNPV(A9,E3:E7,D3:D7) in cell D11 computes the project’s NPV in April 8, 2013 dollars because that is the first date listed. This project would have an NPV, in April 8, 2013 dollars, of $20.63. Figure 8-2 Using the XNPV function. The computations performed by the XNPV function are as follows: 1. Compute the number of years after April 8, 2013, that each date occurred. (I did this in column F.) For example, August 15 is 0.3534 years after April 8. 2. Discount cash flows at the rate 1/(1+rate)years after. For example, the August 15, 2013 cash flow is discounted by 1 = 0.967 (1 + 0.1)3534 3. Sum up in cell E11 overall cash flows: (cash flow value)*(discount factor). Suppose that today’s date is actually July 11, 2010. How would you compute the NPV of an investment in today’s dollars? Simply add a row with today’s date and 0 cash flow and include this row in the range for the XNPV function. (See Figure 8-3 and the Today worksheet.) The NPV of the project in today’s dollars is $15.88. Figure 8-3 NPV converted to today’s dollars. I’ll close by noting that if a cash flow is left blank, the NPV function ignores both the cash flow and the period. If a cash flow is left blank, the XNPV function returns a #NUM error. 62 Microsoft Excel 2010: Data Analysis and Business Modeling Problems 1. An NBA player is to receive a $1,000,000 signing bonus today and $2,000,000 one year, two years, and three years from now. Assuming r=0.10 and ignoring tax considerations, would he be better off receiving $6,000,000 today? 2. A project has the following cash flows: Now One year from now Two years from now Three years from now –$4 million $4 million $4 million –$3 million If the company’s cost of capital is 15 percent, should it proceed with the project? 3. Beginning one month from now, a customer will pay his Internet provider $25 per month for the next five years. Assuming all revenue for a year is received at the middle of a year, estimate the NPV of these revenues. Use r=0.15. 4. Beginning one month from now, a customer will pay $25 per month to her Internet provider for the next five years. Assuming all revenue for a year is received at the middle of a year, use the XNPV function to obtain the exact NPV of these revenues. Use r=0.15. 5. Consider the following set of cash flows over a four-year period. Determine the NPV of these cash flows if r=0.15 and cash flows occur at the end of the year. Year 1 2 3 4 -$600 $550 -$680 $1,000 6. Solve Problem 5 assuming cash flows occur at the beginning of each year. 7. Consider the following cash flows: Date Cash flow 12/15/01 –$1,000 1/11/02 $300 4/07/03 $600 7/15/04 $925 If today is November 1, 2001, and r=0.15, what is the NPV of these cash flows? 8. After earning an MBA, a student will begin working at an $80,000-per-year job on September 1, 2005. She expects to receive a 5 percent raise each year until she retires on September 1, 2035. If the cost of capital is 8 percent a year, determine the total present value of her before-tax earnings. 9. Consider a 30-year bond that pays $50 at the end of Years 1–29 and $1,050 at the end of Year 30. If the appropriate discount rate is 5 percent per year, what is a fair price for this bond? Chapter 9 Internal Rate of Return Questions answered in this chapter: ■ How can I find the IRR of cash flows? ■ Does a project always have a unique IRR? ■ Are there conditions that guarantee a project will have a unique IRR? ■ If two projects each have a single IRR, how do I use the projects’ IRRs? ■ How can I find the IRR of irregularly spaced cash flows? ■ What is the MIRR and how do I compute it? The net present value (NPV) of a sequence of cash flows depends on the interest rate (r) used. For example, if you consider cash flows for Projects 1 and 2 (see the worksheet IRR in the file IRR.xlsx, shown in Figure 9-1), you find that for r=0.2, Project 2 has a larger NPV, and for r=0.01, Project 1 has a larger NPV. When you use NPV to rank investments, the outcome can depend on the interest rate. It is the nature of human beings to want to boil everything in life down to a single number. The internal rate of return (IRR) of a project is simply the ­interest rate that makes the NPV of the project equal to 0. If a project has a unique IRR, the IRR has a nice interpretation. For example, if a project has an IRR of 15 percent, you receive an annual rate of return of 15 percent on the cash flow you invested. In this chapter’s examples, you’ll find that Project 1 has an IRR of 47.5 percent, which means that the $400 invested at Time 1 is yielding an annual rate of return of 47.5 percent. Sometimes, however, a project might have more than one IRR or even no IRR. In these cases, speaking about the project’s IRR is useless. Figure 9-1 Example of the IRR function. 63 64 Microsoft Excel 2010: Data Analysis and Business Modeling Answers to This Chapter’s Questions How can I find the IRR of cash flows? The IRR function calculates internal rate of return. The function has the syntax IRR(range of cash flows,[guess]), where guess is an optional argument. If you do not enter a guess for a project’s IRR, Excel begins its calculations with a guess that the project’s IRR is 10 percent and then varies the estimate of the IRR until it finds an interest rate that makes the project’s NPV equal 0 (the project’s IRR). If Excel can’t find an interest rate that makes the project’s NPV equal 0, Excel returns #NUM. In cell B5, I entered the formula IRR(C2:I2) to compute Project 1’s IRR. Excel returns 47.5 percent. Thus, if you use an annual interest rate of 47.5 percent, Project 1 will have an NPV of 0. Similarly, you can see that Project 2 has an IRR of 80.1 percent. Even if the IRR function finds an IRR, a project might have more than one IRR. To check whether a project has more than one IRR, you can vary the initial guess of the project’s IRR (for example, from –90 percent to 90 percent). I varied the guess for Project 1’s IRR by copying from B8 to B9:B17 the formula IRR($C$2:$I$2,A8). Because all the guesses for Project 1’s IRR yield 47.5 percent, I can be fairly confident that Project 1 has a unique IRR of 47.5 percent. Similarly, I can be fairly confident that Project 2 has a unique IRR of 80.1 percent. Does a project always have a unique IRR? In the worksheet Multiple IRR in the file IRR.xlsx (see Figure 9-2), you can see that Project 3 (cash flows of –20, 82, –60, 2) has two IRRs. I varied the guess about Project 3’s IRR from –90 percent to 90 percent by copying from C8 to C9:C17 the formula IRR($B$4:$E$4,B8). Figure 9-2 Project with more than one IRR. Note that when a guess is 30 percent or less, the IRR is –9.6 percent. For other guesses, the IRR is 216.1 percent. For both these interest rates, Project 3 has an NPV of 0. Chapter 9 Internal Rate of Return 65 In the worksheet No IRR in the file IRR.xlsx (shown in Figure 9-3), you can see that no ­matter what guess you use for Project 4’s IRR, you receive the #NUM message. This message ­indicates that Project 4 has no IRR. When a project has multiple IRRs or no IRR, the concept of IRR loses virtually all meaning. Despite this problem, however, many companies still use IRR as their major tool for ranking investments. Figure 9-3 Project with no IRR. Are there conditions that guarantee a project will have a unique IRR? If a project’s sequence of cash flows contains exactly one change in sign, the project is ­guaranteed to have a unique IRR. For example, for Project 2 in the worksheet IRR, the sign of the cash flow sequence is – + + + + +. There is only one change in sign (between Time 1 and Time 2), so Project 2 must have a unique IRR. For Project 3 in the worksheet Multiple IRR, the signs of the cash flows are – + – +. Because the sign of the cash flows changes three times, a unique IRR is not guaranteed. For Project 4 in the worksheet No IRR, the signs of the cash flows are + – +. Because the signs of the cash flows change twice, a unique IRR is not guaranteed in this case either. Most capital investment projects (such as building a plant) begin with a negative cash flow followed by a sequence of positive cash flows. Therefore, most capital investment projects do have a unique IRR. If two projects each have a single IRR, how do I use the projects’ IRRs? If a project has a unique IRR, you can state that the project increases the value of the ­company if and only if the project’s IRR exceeds the annual cost of capital. For example, if the cost of capital for a company is 15 percent, both Project 1 and Project 2 would increase the value of the company. 66 Microsoft Excel 2010: Data Analysis and Business Modeling Suppose two projects are under consideration (both having unique IRRs), but you can undertake at most one project. It’s tempting to believe that you should choose the project with the larger IRR. To illustrate that this belief can lead to incorrect decisions, look at Figure 9-4 and the Which Project worksheet in IRR.xlsx. Project 5 has an IRR of 40 percent, and Project 6 has an IRR of 50 percent. If you rank projects based on IRR and can choose only one project, you would choose Project 6. Remember, however, that a project’s NPV measures the amount of value the project adds to the company. Clearly, Project 5 will (for virtually any cost of capital) have a larger NPV than Project 6. Therefore, if only one project can be chosen, Project 5 is it. IRR is problematic because it ignores the scale of the project. Whereas Project 6 is better than Project 5 on a per-dollar-invested basis, the larger scale of Project 5 makes it more valuable to the company than Project 6. IRR does not reflect the scale of a project, whereas NPV does. Figure 9-4 IRR can lead to an incorrect choice of which project to pursue. How can I find the IRR of irregularly spaced cash flows? Cash flows occur on actual dates, not just at the start or end of the year. The XIRR f­ unction has the syntax XIRR(cash flow, dates, [guess]). The XIRR function determines the IRR of a ­sequence of cash flows that occur on any set of irregularly spaced dates. As with the IRR function, guess is an optional argument. For an example of how to use the XIRR function, look at Figure 9-5 and worksheet XIRR of the file IRR.xlsx. Figure 9-5 Example of the XIRR function. The formula XIRR(F4:F7,E4:E7) in cell D9 shows that the IRR of Project 7 is -48.69 percent. What is the MIRR and how do I compute it? In many situations the rate at which a company borrows funds is different from the rate at which the company reinvests funds. IRR computations implicitly assume that the rate at which a company borrows and reinvests funds is equal to the IRR. If we know the actual rate at which we borrow money and the rate at which we can reinvest money, then the modified internal rate of return (MIRR) function computes a discount rate that makes the NPV of all Chapter 9 Internal Rate of Return 67 our cash flows (including paying back our loan and reinvesting our proceeds at the given rates) equal to 0. The syntax of MIRR is MIRR(cash flow values,borrowing rate,reinvestment rate). A nice thing about MIRR is that it is always unique. Figure 9-6 in worksheet MIRR of file IRR.xls contains an example of MIRR. Suppose you borrow $120,000 today and receive the following cash flows: Year 1: $39,000, Year 2: $30,000, Year 3: $21,000, Year 4: $37,000, Year 5: $46,000. Assume you can borrow at 10 percent per year and reinvest your profits at 12 ­percent per year. After entering these values in cells E7:E12 of worksheet MIRR, you can find the MIRR in cell D15 with the formula MIRR(E7:E12,E3,E4). Thus, this project has an MIRR of 12.61 percent. In cell D16 I computed the actual IRR of 13.07 percent. Figure 9-6 Example of the MIRR function. I’ll close by noting that if a cash flow is left blank, the IRR function ignores both the cash flow and the period. If a cash flow is left blank, the IRR function will return a #NUM error. Problems 1. Compute all IRRs for the following sequence of cash flows: Year 1 Year 2 Year 3 Year 4 Year 5 Year 6 Year 7 –$10,000 $8,000 $1,500 $1,500 $1,500 $1,500 –$1,500 2. Consider a project with the following cash flows. Determine the project’s IRR. If the ­annual cost of capital is 20 percent, would you undertake this project? Year 1 Year 2 Year 3 –$4,000 $2,000 $4,000 68 Microsoft Excel 2010: Data Analysis and Business Modeling 3. Find all IRRs for the following project: Year 1 Year 2 Year 3 $100 –$300 $250 4. Find all IRRs for a project having the given cash flows on the listed dates. 1/10/2003 7/10/2003 5/25/2004 7/18/2004 3/20/2005 4/1/2005 1/10/2006 –$1,000 $900 $700 $500 $350 $800 $500 5. Consider the following two projects, and assume a company’s cost of capital is 15 percent. Find the IRR and NPV of each project. Which projects add value to the company? If the company can choose only a single project, which project should it choose? Year 1 Year 2 Year 3 Year 4 Project 1 –$40 $130 $19 $26 Project 2 –$80 $36 $36 $36 6. Twenty-five-year-old Meg Prior is going to invest $10,000 in her retirement fund at the beginning of each of the next 40 years. Assume that during each of the next 30 years Meg will earn 15 percent on her investments and during the last 10 years before she retires, her investments will earn 5 percent. Determine the IRR associated with her investments and her final retirement position. How do you know there will be a unique IRR? How would you interpret the unique IRR? 7. Give an intuitive explanation of why Project 6 (on the worksheet Which Project in the file IRR.xlsx) has an IRR of 50 percent. 8. Consider a project having the following cash flows: Year 1 Year 2 Year 3 –$70,000 $12,000 $15,000 Try to find the IRR of this project without simply guessing. What problem arises? What is the IRR of this project? Does the project have a unique IRR? 9. For the cash flows in Problem 1, assume you can borrow at 12 percent per year and ­invest profits at 15 percent per year. Compute the project’s MIRR. 10. Suppose today that you paid $1,000 for the bond described in Problem 9 of Chapter 8, “Evaluating Investments by Using Net Present Value Criteria.” What would be the bond’s IRR? A bond’s IRR is often called the yield of the bond. Chapter 10 More Excel Financial Functions Questions answered in this chapter: ■ You are buying a copier. Would you rather pay $11,000 today or $3,000 a year for five years? ■ If at the end of each of the next 40 years I invest $2,000 a year toward my retirement and earn 8 percent a year on my investments, how much will I have when I retire? ■ I am borrowing $10,000 for 10 months with an annual interest rate of 8 percent. What are my monthly payments? How much principal and interest am I paying each month? ■ I want to borrow $80,000 and make monthly payments for 10 years. The maximum monthly payment I can afford is $1,000. What is the maximum interest rate I can afford? ■ If I borrow $100,000 at 8 percent interest and make payments of $10,000 per year, how many years will it take me to pay back the loan? When we borrow money to buy a car or house, we always wonder if we are getting a good deal. When we save for retirement, we are curious how large a nest egg we’ll have when we retire. In our daily work and personal lives, financial questions similar to these often arise. Knowledge of the Excel PV, FV, PMT, PPMT, IPMT, CUMPRINC, CUMIPMT, RATE, and NPER functions makes it easy to answer these types of questions. Answers to This Chapter’s Questions You are buying a copier. Would you rather pay $11,000 today or $3,000 a year for five years? The key to answering this question is being able to value the annual payments of $3,000 per year. Assume the cost of capital is 12 percent per year. You could use the NPV function to answer this question, but the Excel PV function provides a much quicker way to solve it. A stream of cash flows that involves the same amount of cash outflow (or inflow) each period is called an annuity. Assuming that each period’s interest rate is the same, you can easily value an annuity by using the Excel PV function. The PV function returns the value in today’s ­dollars of a series of future payments, under the assumption of periodic, constant payments and a constant interest rate. The syntax of the PV function is PV(rate,#per,[pmt],[fv],[type]), where pmt, fv, and type are optional arguments. 69 70 Microsoft Excel 2010: Data Analysis and Business Modeling Note When working with Microsoft Excel financial functions, I use the following conventions for the signs of pmt (payment) and fv (future value): money received has a positive sign and money paid out has a negative sign. ■ Rate is the interest rate per period. For example, if you borrow money at 6 p ­ ercent per year and the period is a year, then rate=0.06. If the period is a month, then rate=0.06/12=0.005. ■ #per is the number of periods in the annuity. For our copier example, #per=5. If ­payments on the copier are made each month for five years, then #per=60. Your rate must, of course, be consistent with #per. That is, if #per implies a period is a month, you must use a monthly interest rate; if #per implies a period is a year, you must use an ­annual interest rate. ■ Pmt is the payment made each period. For our copier example, pmt=-$3,000. A ­payment has a negative sign, whereas money received has a positive sign. At least one of pmt or fv must be included. ■ Fv is the cash balance (or future value) you want to have after the last payment is made. For our copier example, fv=0. For example, if you want to have a $500 cash balance ­after the last payment, then fv=$500. If you want to make an additional $500 payment at the end of a problem fv=–$500. If fv is omitted, it is assumed to equal 0. ■ Type is either 0 or 1 and indicates when payments are made. When type is omitted or equal to 0, payments are made at the end of each period. When type=1, payments are made at the beginning of each period. Note that you may also write True instead of 1 and False instead of 0 in all functions discussed in this chapter. Figure 10-1 (see the worksheet PV of file the Excelfinfunctions.xlsx) indicates how to solve our copier problem. Figure 10-1 Example of the PV function. Chapter 10 More Excel Financial Functions 71 In cell B3 I computed the present value of paying $3,000 at the end of each year for five years with a 12 percent cost of capital by using the formula =PV(0.12,5,–3000,0,0). Excel ­returns an NPV of $10,814.33. By omitting the last two arguments, I obtained the same ­answer with the formula =PV(0.12,5,–3000). Thus, it is a better deal to make payments at the end of the year than to pay out $11,000 today. If you make payments on the copier of $3,000 at the beginning of each year for five years, the NPV of the payments is computed in cell B4 with the formula =PV(0.12,5,–3000,0,1). Note that changing the last argument from a 0 to a 1 changed the calculations from end of year to beginning of year. You can see that the present value of our payments is $12,112.05. Therefore, it’s better to pay $11,000 today than make payments at the beginning of the year. Suppose you pay $3,000 at the end of each year and must include an extra $500 payment at the end of Year 5. You can now find the present value of all our payments in cell B5 by including a future value of $500 with the formula =PV(0.12,5,–3000–,500,0). Note the $3,000 and $500 cash flows have negative signs because you are paying out the money. The present value of all these payments is equal to $11,098.04. If at the end of each of the next 40 years I invest $2,000 a year toward my retirement and earn 8 percent a year on my investments, how much will I have when I retire? In this situation we want to know the value of an annuity in terms of future dollars (40 years from now) and not today’s dollars. This is a job for the Excel FV (future value) function. The FV function gives the future value of an investment assuming periodic, constant payments with a constant interest rate. The syntax of the FV function is FV(rate,#per,[pmt],[pv],[type]), where pmt, pv, and type are optional arguments. ■ Rate is the interest rate per period. In our case, rate equals 0.08. ■ #Per is the number of periods in the future at which you want the future value ­computed. #Per is also the number of periods during which the annuity payment is ­received. In our case, #per equals =40. ■ Pmt is the payment made each period. In our case pmt equals –$2,000. The negative sign indicates we are paying money into an account. At least one of pmt or pv must be included. ■ Pv is the amount of money (in today’s dollars) owed right now. In our case, pv equals $0. If today we owe someone $10,000, then pv equals $10,000 because the lender gave us $10,000 and we received it. If today we had $10,000 in the bank, then pv equals –$10,000 because we must have paid $10,000 into our bank account. If pv is omitted it is assumed to equal 0. ■ Type is a 0 or 1 and indicates when payments are due or money is deposited. If type equals 0 or is omitted, then money is deposited at the end of the period. In our case, type is 0 or omitted. If type equals 1, then payments are made or money is deposited at the beginning of the period. 72 Microsoft Excel 2010: Data Analysis and Business Modeling In worksheet FV of file Excelfinfunctions.xlsx (see Figure 10-2) I entered in cell B3 the formula =FV(0.08,40,–2000) to find that in 40 years our nest egg will be worth $518,113.04. Note that I entered a negative value for the annual payment. I did this because the $2,000 is paid into our account. You could obtain the same answer by entering the last two unnecessary ­arguments with the formula FV(0.08,40,–2000,0,0). If deposits were made at the beginning of each year for 40 years, the formula (entered in cell B4) =FV(0.08,40,–2000,0,1) would yield the value in 40 years of our nest egg: $559,562.08. Figure 10-2 Example of FV function. Finally, suppose that in addition to investing $2,000 at the end of each of the next 40 years you initially have $30,000 to invest. If you earn 8 percent per year on your investments, how much money will you have when you retire in 40 years? You can answer this q ­ uestion by ­setting pv equal to –$30,000 in the FV function. The negative sign is used because you have deposited, or paid, $30,000 into your account. In cell B5 the formula =FV(0.08,40,–2000,–30000,0) yields a future value of $1,169,848.68. I am borrowing $10,000 for 10 months with an annual interest rate of 8 percent. What are my monthly payments? How much principal and interest am I paying each month? The Excel PMT function computes the periodic payments for a loan assuming ­constant payments and a constant interest rate. The syntax of the PMT function is PMT(rate,#per,pv,[fv],[type]), where fv and type are optional arguments. ■ Rate is the per-period interest rate of the loan. In this example, I will use one month as a period, so rate equals 0.08/12=0.006666667. ■ #Per is the number of payments made. In this case, #per equals 10. Chapter 10 More Excel Financial Functions 73 ■ Pv is the present value of all the payments. That is, pv is the amount of the loan. In this case, pv equals $10,000. Pv is positive because we are receiving the $10,000. ■ Fv indicates the final loan balance you want to have after making the last payment. In our case fv equals 0. If fv is omitted, Excel assumes that it equals 0. Suppose you have taken out a balloon loan for which you make payments at the end of each month, but at the conclusion of the loan you pay off the final balance by making a $1,000 balloon payment. Then fv equals –$1,000. The $1,000 is negative because we are paying it out. ■ Type is a 0 or 1 and indicates when payments are due. If type equals 0 or is omitted, then payments are made at the end of the period. I first assumed end-of-month ­payments, so type is 0 or omitted. If type equals 1, then payments are made or money is deposited at the beginning of the period. In cell G1 of the worksheet PMT of the file Excelfinfunctions.xlsx (see Figure 10-3), I ­computed the monthly payment on a 10-month loan for $10,000, assuming an 8 percent annual interest rate and end-of-month payments with the formula=–PMT(0.08/12,10,10000,0,0). The monthly payment is $1,037.03. The PMT function by itself returns a negative value because we are making payments to the company giving us the loan. If you want to, you can use the Excel IPMT and PPMT functions to compute the amount of interest paid each month toward the loan and the amount of the balance paid down each month. (This is called the payment on the principal.) Figure 10-3 Examples of PMT, PPMT, CUMPRINC, CUMIPMT, and IPMT functions. To determine the interest paid each month, use the IPMT function. The syntax of the IPMT function is IPMT(rate,per,#per,pv,[fv],[type]), where fv and type are optional arguments. The per argument indicates the period number for which you compute the interest. The other 74 Microsoft Excel 2010: Data Analysis and Business Modeling arguments mean the same as they do for the PMT function. Similarly, to determine the amount paid toward the principal each month you can use the PPMT function. The s­ yntax of the PPMT function is PPMT(rate,per,#per,pv,[fv],[type]). The meaning of each argument is the same as it is for the IPMT function. By copying from F6 to F7:F16 the formula =–PPMT(0.08/12,C6,10,10000,0,0), you can compute the amount of each month’s payment that is applied to the principal. For example, during Month 1 you pay only $970.37 toward the principal. As expected, the amount paid toward the principal increases each month. The minus sign is needed because the principal is paid to the company giving you the loan, and PPMT will return a negative number. By copying from G6 to G7:G16 the formula =–IPMT(0.08/12,C6,10,10000,0,0), you can compute the amount of interest paid each month. For example, in Month 1 you pay $66.67 in interest. Of course, the amount of interest paid each month decreases. Note that each month (Interest Paid)+(Payment Toward Principal)=(Total Payment). Sometimes the total is off by a penny due to rounding. You can also create the ending balances for each month in column H by using the ­relationship (Ending Month t Balance)=(Beginning Month t Balance)–(Month t Payment ­toward Principal). Note that in Month 1, Beginning Balance equals $10,000. In column D, I created each month’s beginning balance by using the relationship (for t=2, 3, …10)(Beginning Month t Balance)=(Ending Month t–1 Balance). Of course, Ending Month 10 Balance equals $0, as it should. Interest each month can be computed as (Month t Interest)=(Interest rate)*(Beginning Month t Balance). For example, the Month 3 interest payment can be computed as =(0.0066667)*($8,052.80), which equals $53.69. Of course, the NPV of all payments is exactly $10,000. I checked this in cell D17 with the ­formula NPV(0.08/12,E6:E15). (See Figure 10-3.) If the payments are made at the beginning of each month, the amount of each payment is computed in cell D19 with the formula =–PMT(0.08/12,10,10000,0,1). Changing the last argument to 1 changes each payment to the beginning of the month. Because the lender is getting her money earlier, monthly payments are less than the end-of-month case. If she pays at the beginning of the month, the monthly payment is $1,030.16. Finally, suppose that you want to make a balloon payment of $1,000 at the end of 10 months. If you make your monthly payments at the end of each month, the formula =–PMT(0.08/12,10,10000,–1000,0) in cell D20 computes your monthly payment. The ­ monthly payment turns out to be $940. Because $1,000 of the loan is not being paid with monthly payments, it makes sense that your new monthly payment is less than the ­original end-of-month payment of $1,037.03. Chapter 10 More Excel Financial Functions 75 CUMPRINC and CUMIPMT Functions You’ll often want to accumulate the interest or principal paid during several periods. The CUMPRINC and CUMIPMT functions make this a snap. The CUMPRINC function computes the principal paid between two periods (inclusive). The syntax of the CUMPRINC function is CUMPRINC(rate,#per,pv,start period,end period,type). Rate, #per, pv, and type have the same meanings as described previously. The CUMIPMT function computes the interest paid between two periods (inclusive). The syntax of the CUMIPMT function is CUMIPMT(rate,#nper,pv,start period,end period,type). Rate, #per, pv, and type have the same meanings as described previously. For example, in cell F19 on the PMT worksheet, I computed the interest paid during months 2 through 4 ($161.01) by using the formula =CUMIPMT(0.08/12,10,10000,2,4,0). In cell G19 I computed the principal paid off in months 2 through 4 ($2,950.08) by using the formula =CUMPRINC(0.08/12,10,10000,2,4,0) I want to borrow $80,000 and make monthly payments for 10 years. The maximum monthly payment I can afford is $1,000. What is the maximum interest rate I can afford? Given a borrowed amount, the length of a loan, and the payment each period, the RATE function tells you the rate of the loan. The syntax of the RATE function is RATE(#per,pmt,pv ,[fv],[type],[guess]), where fv, type, and guess are optional arguments. #Per, pmt, pv, fv, and type have the same meanings as previously described. Guess is simply a guess at what the loan rate is. Usually guess can be omitted. Entering in cell D9 of worksheet Rate (in the file Excelfinfunctions.xlsx) the formula =RATE(120,–1000,80000,0,0,) yields .7241 percent as the monthly rate. I am assuming end-of-month payments. (See Figure 10-4.) Figure 10-4 Example of RATE function. In cell D15 I verified the RATE function calculation. The formula =PV(.007241,120,–1000,0,0) yields $80,000.08. This shows that payments of $1,000 at the end of each month for 120 months have a present value of $80,000.08. 76 Microsoft Excel 2010: Data Analysis and Business Modeling If you could pay back $10,000 during month 120, the maximum rate you could handle would be given by the formula =RATE(120,–1000,80000,–10000,0,0). In cell D12, this formula yields a monthly rate of 0.818 percent. If I borrow $100,000 at 8 percent interest and make payments of $10,000 per year, how many years will it take me to pay back the loan? Given the size of a loan, the payments each period, and the loan rate, the NPER function tells you how many periods it takes to pay back a loan. The syntax of the NPER function is NPER(rate,pmt,pv,[fv],[type]), where fv and type are optional arguments. Assuming end-of-year payments, the formula =NPER(0.08,–10000,100000,0,0) in cell D7 of worksheet Nper (in the file Excelfinfunctions.xlsx) yields 20.91 years. (See Figure 10-5.) Thus, 20 years of payments will not quite pay back the loan, but 21 years will overpay the loan. To verify the calculation, in cells D10 and D11 I used the PV function to show that paying $10,000 per year for 20 years pays back $98,181.47, and paying back $10,000 for 21 years pays back $100,168.03. Suppose that you are planning to pay back $40,000 in the final payment period. How many years will it take to pay back the loan? Entering in cell D14 the formula =NPER(0.08,–10000,100000,–40000,0) shows that it will take 15.90 years to pay back the loan. Thus, 15 years of payments will not quite pay off the loan, and 16 years of payments will slightly overpay the loan. Figure 10-5 Example of NPER function. Chapter 10 More Excel Financial Functions 77 Problems Unless otherwise mentioned, all payments are made at the end of the period. 1. You have just won the lottery. At the end of each of the next 20 years you will receive a payment of $50,000. If the cost of capital is 10 percent per year, what is the present value of your lottery winnings? 2. A perpetuity is an annuity that is received forever. If I rent out my house and at the beginning of each year I receive $14,000, what is the value of this perpetuity? Assume an annual 10 percent cost of capital. (Hint: Use the PV function and let the number of periods be many!) 3. I now have $250,000 in the bank. At the end of each of the next 20 years I withdraw $15,000. If I earn 8 percent per year on my investments, how much money will I have in 20 years? 4. I deposit $2,000 per month (at the end of each month) over the next 10 years. My investments earn 0.8 percent per month. I would like to have $1 million in 10 years. How much money should I deposit now? 5. An NBA player is receiving $15 million at the end of each of the next seven years. He can earn 6 percent per year on his investments. What is the present value of his future revenues? 6. At the end of each of the next 20 years I will receive the following amounts: Years Amounts 1–5 $200 6–10 $300 11–20 $400 Use the PV function to find the present value of these cash flows if the cost of capital is 10 percent. Hint: Begin by computing the value of receiving $400 a year for 20 years, and then subtract the value of receiving $100 a year for 10 years, etc. 7. You are borrowing $200,000 on a 30-year mortgage with an annual interest rate of 10 percent. Assuming end-of-month payments, determine the monthly payment, interest payment each month, and amount paid toward principal each month. 8. Answer each question in Problem 7 assuming beginning-of-month payments. 9. Use the FV function to determine the value to which $100 accumulates in three years if you are earning 7 percent per year. 10. You have a liability of $1,000,000 due in 10 years. The cost of capital is 10 percent per year. What amount of money do you need to set aside at the end of each of the next 10 years to meet this liability? 78 Microsoft Excel 2010: Data Analysis and Business Modeling 11. You are going to buy a new car. The cost of the car is $50,000. You have been offered two payment plans: ❑ A 10 percent discount on the sales price of the car, followed by 60 monthly ­payments financed at 9 percent per year. ❑ No discount on the sales price of the car, followed by 60 monthly payments ­financed at 2 percent per year. If you believe your annual cost of capital is 9 percent, which payment plan is a better deal? Assume all payments occur at the end of the month. 12. I presently have $10,000 in the bank. At the beginning of each of the next 20 years I am going to invest $4,000, and I expect to earn 6 percent per year on my investments. How much money will I have in 20 years? 13. A balloon mortgage requires you to pay off part of a loan during a specified time ­period and then make a lump sum payment to pay off the remaining portion of the loan. Suppose you borrow $400,000 on a 20-year balloon mortgage and the interest rate is .5 percent per month. Your end-of-month payments during the first 20 years are required to pay off $300,000 of your loan, at which point you have to pay off the ­remaining $100,000. Determine your monthly payments for this loan. 14. An adjustable rate mortgage (ARM) ties monthly payments to a rate index (say, the U.S. T-Bill rate). Suppose you borrow $60,000 on an ARM for 30 years (360 monthly payments). The first 12 payments are governed by the current T-Bill rate of 8 percent. In years 2–5, monthly payments are set at the year’s beginning monthly T-Bill rate + 2 percent. Suppose the T-Bill rates at the beginning of years 2–5 are as follows: Beginning of year T-Bill rate 2 10 percent 3 13 percent 4 15 percent 5 10 percent Determine monthly payments during years 1–5 and each year’s ending balance. 15. Suppose you have borrowed money at a 14.4 percent annual rate and you make monthly payments. If you have missed four consecutive monthly payments, how much should next month’s payment be to catch up? 16. You want to replace a machine in 10 years and estimate the cost will be $80,000. If you can earn 8 percent annually on your investments, how much money should you put aside at the end of each year to cover the cost of the machine? Chapter 10 More Excel Financial Functions 79 17. You are buying a motorcycle. You pay $1,500 today and $182.50 a month for three years. If the annual rate of interest is 18 percent, what was the original cost of the motorcycle? 18. Suppose the annual rate of interest is 10 percent. You pay $200 a month for two years, $300 a month for a year, and $400 for two years. What is the present value of all your payments? 19. You can invest $500 at the end of each six-month period for five years. If you want to have $6,000 after five years, what is the annual rate of return you need on your investments? 20. I borrow $2,000 and make quarterly payments for two years. The annual rate of interest is 24 percent. What is the size of each payment? 21. I have borrowed $15,000. I am making 48 monthly payments, and the annual rate of interest is 9 percent. What is the total interest paid over the course of the loan? 22. I am borrowing $5,000 and plan to pay back the loan with 36 monthly payments. The annual rate of interest is 16.5 percent. After one year, I pay back $500 extra and shorten the period of the loan to two years total. What will my monthly payment be during the second year of the loan? 23. With an adjustable rate mortgage, you make monthly payments depending on the interest rates at the beginning of each year. You have borrowed $60,000 on a 30-year ARM. For the first year, monthly payments are based on the current annual T-Bill rate of 9 percent. In years 2–5, monthly payments will be based on the following annual T-Bill rates +2 percent. ❑ Year 2: 10 percent ❑ Year 3: 13 percent ❑ Year 4: 15 percent ❑ Year 5: 10 percent The catch is that the ARM contains a clause that ensures that monthly payments can ­increase a maximum of 7.5 percent from one year to the next. To compensate the lender for this provision, the borrower adjusts the ending balance of the loan at the end of each year based on the difference between what the borrower actually paid and what he should have paid. Determine monthly payments during Years 1–5 of the loan. 24. You have a choice of receiving $8,000 each year beginning at age 62 and ending when you die, or receiving $10,000 each year beginning at age 65 and ending when you die. If you think you can earn an 8 percent annual return on your investments, which will net the largest amount? 80 Microsoft Excel 2010: Data Analysis and Business Modeling 25. You have just won the lottery and will receive $50,000 a year for 20 years. What rate of interest would make these payments the equivalent of receiving $500,000 today? 26. A bond pays a $50 coupon at the end of each of the next 30 years and pays $1,000 face value in 30 years. If you discount cash flows at an annual rate of 6 percent, what would be a fair price for the bond? 27. You have borrowed $100,000 on a 40-year mortgage with monthly payments. The ­annual interest rate is 16 percent. How much will you pay over the course of the loan? With four years left on the loan, how much will you still owe? 28. I need to borrow $12,000. I can afford payments of $500 per month and the annual rate of interest is 4.5 percent. How many months will it take to pay off the loan? 29. You are considering borrowing $50,000 on a 180 month loan. The annual interest rate on the loan depends on your credit score in the following fashion: Write a formula that gives your monthly payments as a function of your credit score. 30. You are going to borrow $40,000 for a new car. You want to determine the monthly payments and total interest paid for the following situations: ❑ 48 month loan, 6.85% annual rate. ❑ 60 month loan, 6.59% annual rate. Chapter 11 Circular References Questions answered in this chapter: ■ I often get a circular reference message from Excel. Does this mean I’ve made an error? ■ How can I resolve circular references? When Microsoft Excel 2010 displays a message that your workbook contains a circular ­reference, it means there is a loop, or dependency, between two or more cells in a worksheet. For example, a circular reference occurs if the value in cell A1 influences the value in D3, the value in cell D3 influences the value in cell E6, and the value in cell E6 influences the value in cell A1. Figure 11-1 illustrates the pattern of a circular reference. Figure 11-1 A loop causing a circular reference. As you’ll soon see, you can resolve circular references by clicking the File tab on the ribbon and then clicking Options. Choose Formulas, and then select the Enable Iterative Calculation check box. Answers to This Chapter’s Questions I often get a circular reference message from Excel. Does this mean I’ve made an error? A circular reference usually arises from a logically consistent worksheet in which several cells exhibit a looping relationship similar to that illustrated in Figure 11-1. Let’s look at a simple example of a problem that cannot easily be solved in Excel without creating a circular reference. A small company earns $1,500 in revenues and incurs $1,000 in costs. They want to give 10 percent of their after-tax profits to charity. Their tax rate is 40 percent. How much money should they give to charity? The solution to this problem is in worksheet Sheet1 in the file Circular.xlsx, shown in Figure 11-2. 81 82 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 11-2 A circular reference can occur when you’re calculating taxes. I began by naming the cells in D3:D8 with the corresponding names in cells C3:C8. Next I entered the firm’s revenue, tax rate, and costs in D3:D5. To compute a contribution to charity as 10 percent of after-tax profit, I entered in cell D6 the formula 0.1*after_tax_profit. Then I determined before-tax profit in cell D7 by subtracting costs and the charitable contribution from revenues. The formula in cell D7 is Revenues–Costs–Charity. Finally, I computed ­after-tax profit in cell D8 as (1–tax_rate)*before_tax_profit. Excel indicates a circular reference in cell D8 (see the bottom-left corner of file Circular.xlsx). What’s going on? 1. Charity (cell D6) influences before-tax profit (cell D7). 2. Before-tax profit (cell D7) influences after-tax profit (cell D8). 3. After-tax profit (cell D8) influences charity. Thus, we have a loop of the form D6-D7-D8-D6 (indicated by the blue arrows in Figure 11-2), which causes the circular reference message. The worksheet is logically correct; we have done nothing wrong. Still, you can see from Figure 11-2 that Excel is calculating an incorrect answer for charitable contributions. How can I resolve circular references? Resolving a circular reference is easy. Simply click the File tab at the left end of the ribbon, and then click Options to open the Excel Options dialog box. Choose Formulas in the left pane, and then select the Enable Iterative Calculation check box in the Calculation Options section, as shown in Figure 11-3. Chapter 11 Circular References 83 Figure 11-3 Use the Enable Iterative Calculation option to resolve a circular reference. When you activate the Enable Iterative Calculation option, Excel recognizes that your circular reference has generated the following system of three equations with three unknowns: Charity=0.1*(AfterTax Profit) BeforeTax Profit=Revenue–Charity–Costs AfterTax Profit= (1–Tax rate)*(BeforeTax Profit) The three unknowns are Charity, BeforeTax Profit, and AfterTax Profit. When you activate the Enable Iterative Calculation option, Excel iterates (based on my experience with circular references, 100 iterations should be used) to seek a solution to all equations generated by the circular reference. From one iteration to the next, the values of the unknowns are changed by a complex mathematical procedure (Gauss-Seidel Iteration). Excel stops if the maximum change in any worksheet cell from one iteration to the next is smaller than the Maximum Change value (0.001 by default). You can reduce the Maximum Change setting to a smaller number, such as 0.000001. If you do not reduce the Maximum Change setting to a smaller number, you might find Excel assigning a value of, for example, 5.001 to a cell that should equal 5, and this is annoying. Also, some complex worksheets might require more than 100 iterations before “converging” to a resolution of the circularity. For this example, however, the circularity is almost instantly resolved, and you can see the solution given in Figure 11-4. 84 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 11-4 Excel runs the calculations to resolve the circular reference. Note that the charitable contribution of $28.30 is now exactly 10 percent of after-tax profit of $283.01. All other cells in the worksheet are now correctly computed. Note Excel’s iteration procedure is only guaranteed to work when solving systems of linear equations. In other situations, convergence to a solution is not always guaranteed. In the tax example, resolving the circular references requires solving a system of linear equations, so you know Excel will find the correct answer. Here’s one more example of a circular reference. In any Excel formula, you can refer to an entire column or row by name. For example, the formula AVERAGE(B:B) averages all cells in column B. The formula =AVERAGE(1:1) averages all cells in row 1. This shortcut is useful if you’re continually dumping new data (such as monthly sales) into a column or row. The formula always computes average sales, and you do not need to ever change it. The problem is, of course, that if you enter this formula in the column or row that it refers to, you create a circular reference. By activating the Enable Iterative Calculation option, circular references such as these are resolved quickly. Problems 1. Before paying employee bonuses and state and federal taxes, a company earns profits of $60,000. The company pays employees a bonus equal to 5 percent of after-tax profits. State tax is 5 percent of profits (after bonuses are paid). Federal tax is 40 percent of profits (after bonuses and state tax are paid). Determine the amount paid in bonuses, state tax, and federal tax. 2. On January 1, 2002, I have $500. At the end of each month I earn 2 percent interest. Each month’s interest is based on the average of the month’s beginning and ending balances. How much money will I have after 12 months? 3. My airplane is flying the following route: Houston-Los Angeles-Seattle-MinneapolisHouston. On each leg of the journey, the plane’s fuel usage (expressed as miles per gallon) is 40–.02*(average fuel en route). Here, average fuel en route is equal to .5*(initial Chapter 11 Circular References 85 fuel en route+final fuel en route). My plane begins in Houston with 1,000 gallons of fuel. The distance flown on each leg of the journey is as follows: Leg Miles Houston to Los Angeles 1,200 Los Angeles to Seattle 1,100 Seattle to Minneapolis 1,500 Minneapolis to Houston 1,400 How many gallons of fuel remain when I return to Houston? 4. A common method used to allocate costs to support departments is the reciprocal cost allocation method. This method can easily be implemented by use of circular references. To illustrate, suppose Widgetco has two support departments: Accounting and Consulting. Widgetco also has two product divisions: Division 1 and Division 2. Widgetco has decided to allocate $600,000 of the cost of operating the Accounting department and $116,000 of the cost of operating the Consulting department to the two divisions. The fraction of accounting and consulting time used by each part of the company is as follows: Accounting Consulting Division 1 Division 2 Percentage of accounting work done for other parts of the company 0% 20% 30% 50% Percentage of consulting work done for other parts of the company 10% 0% 80% 10% How much of the accounting and consulting costs should be allocated to other parts of the company? You need to determine two quantities: total cost allocated to accounting and total cost allocated to consulting. Total cost allocated to accounting equals $600,000+.1*(total cost allocated to consulting) because 10 percent of all consulting work was done for the Accounting department. A similar equation can be written for the total cost allocated to consulting. You should now be able to calculate the correct allocation of both accounting and consulting costs to each other part of the company. 5. We start a year with $200 and receive $100 during the year. We also receive 10 percent interest at the end of the year with the interest based on our starting balance. In this case we end the year with $320. Determine the ending balance for the year if interest accrues on the average of our starting and ending balance. Chapter 12 IF Statements Questions answered in this chapter: ■ If I order up to 500 units of a product, I pay $3.00 per unit. If I order from 501 through 1,200 units, I pay $2.70 per unit. If I order from 1,201 through 2,000 units, I pay $2.30 per unit. If I order more than 2,000 units, I pay $2.00 per unit. How can I write a formula that expresses the purchase cost as a function of the number of units purchased? ■ I just purchased 100 shares of stock at a cost of $55 per share. To hedge the risk that the stock might decline in value, I purchased 60 six-month European put options. Each option has an exercise price of $45 and costs $5. How can I develop a worksheet that indicates the six-month percentage return on my portfolio for a variety of possible ­future prices? ■ Many stock market analysts believe that moving-average trading rules can outperform the market. A commonly suggested moving-average trading rule is to buy a stock when the stock’s price moves above the average of the last 15 months and to sell a stock when the stock’s price moves below the average of the last 15 months. How would this trading rule have performed against the Standard & Poor’s 500 Stock Index (S&P)? ■ In the game of craps, two dice are tossed. If the total of the dice on the first roll is 2, 3, or 12, you lose. If the total of the dice on the first roll is 7 or 11, you win. Otherwise, the game keeps going. How can I write a formula to determine the status of the game after the first roll? ■ In most pro forma financial statements, cash is used as the plug to make assets and ­liabilities balance. I know that using debt as the plug would be more realistic. How can I set up a pro forma statement having debt as the plug? ■ When I copy a VLOOKUP formula to determine salaries of individual employees, I get a lot of #NA errors. Then when I average the employee salaries, I cannot get a numerical answer because of the #NA errors. Can I easily replace the #NA errors with a blank space so I can compute average salary? ■ My worksheet contains quarterly revenues for Wal-Mart. Can I easily compute the ­revenue for each year and place it in the row containing the first quarter’s sales for that year? ■ IF statements can get rather large. How many IF statements can I nest in a cell? What is the maximum number of characters allowed in an Excel formula? 87 88 Microsoft Excel 2010: Data Analysis and Business Modeling The situations listed above seem to have little, if anything, in common. However, setting up Microsoft Excel 2010 models for each of these situations requires the use of an IF statement. I believe that the IF formula is the single most useful formula in Excel. IF formulas let you conduct conditional tests on values and formulas, mimicking (to a limited degree) the ­conditional logic provided by computing languages such as C, C++, and Java. An IF formula begins with a condition such as A1>10. If the condition is true, the formula returns the first value listed in the formula; otherwise, we move on within the formula and repeat the process. The easiest way to show you the power and utility of IF formulas is to use them to help answer each of this chapter’s questions. Answers to This Chapter’s Questions If I order up to 500 units of a product, I pay $3.00 per unit. If I order from 501 through 1200 units, I pay $2.70 per unit. If I order from 1201 through 2000 units, I pay $2.30 per unit. If I order more than 2000 units, I pay $2.00 per unit. How can I write a formula that expresses the purchase cost as a function of the number of units purchased? You can find the solution to this question on the Quantity Discount worksheet in the file Ifstatement.xlsx. The worksheet is shown in Figure 12-1. Figure 12-1 You can use an IF formula to model quantity discounts. Suppose cell A9 contains our order quantity. You can compute an order’s cost as a function of the order quantity by implementing the following logic: ■ If A9 is less than or equal to 500, the cost is 3*A9. ■ If A9 is from 501 through 1,200, the cost is 2.70*A9. ■ If A9 is from 1,201 through 2,000, the cost is 2.30*A9. ■ If A9 is more than 2,000, the cost is 2*A9. Chapter 12 IF Statements 89 Begin by linking the range names in A2:A4 to cells B2:B4, and linking the range names in cells D2:D5 to cells C2:C5. Then you can implement this logic in cell B9 with the following formula: IF(A9<=_cut1,price1*A9,IF(A9<=_cut2,price2*A9,IF(A9<=_cut3,price3*A9,price4*A9))) To understand how Excel computes a value from this formula, recall that IF statements are evaluated from left to right. If the order quantity is less than or equal to 500 (cut1), the cost is given by price1*A9. If the order quantity is not less than or equal to 500, the formula checks to see whether the order quantity is less than or equal to 1,200. If this is the case, the order quantity is from 501 through 1,200, and the formula computes a cost of price2*A9. Next, the formula checks whether the order quantity is less than or equal to 2,000. If this is true, the order quantity is from 1,201 through 2,000, and the formula computes a cost of price3*A9. Finally, if the order cost has not yet been computed, the formula defaults to the value price4*A9. In each case, the IF formula returns the correct order cost. Note that I entered three other order quantities in cells A10:A12 and copied the cost formula to B10:B12. For each order quantity, the formula returns the correct total cost. An IF formula containing more than one IF statement is called a nested IF formula. I just purchased 100 shares of stock at a cost of $55 per share. To hedge the risk that the stock might decline in value, I purchased 60 six-month European put options. Each option has an exercise price of $45 and costs $5. How can I develop a worksheet that indicates the six-month percentage return on my portfolio for a variety of possible future prices? Before tackling this problem, I want to review some basic concepts from the world of ­finance. A European put option allows you to sell at a given time in the future (in this case, six months) a share of a stock for the exercise price (in this case, $45). If the stock’s price in six months is $45 or higher, the option has no value. Suppose, however, that the price of the stock in 6 months is below $45. Then you can make money by buying a share and immediately reselling the stock for $45. For example, if in 6 months the stock is selling for $37, you can make a profit of $45–$37, or $8 per share, by buying a share for $37 and then using the put to resell the share for $45. You can see that put options protect you against downward moves in a stock price. In this case, whenever the stock’s price in six months is below $45, the puts start kicking in some value. This cushions a portfolio against a decrease in value of the shares it owns. Note also that the percentage return on a portfolio (assume that no dividends are paid by the stocks in the portfolio) is computed by taking the change in the portfolio’s value (final portfolio value–initial portfolio value) and dividing that number by the portfolio’s initial value. With this background, let’s look at how the six-month percentage return on this portfolio, consisting of 60 puts and 100 shares of stock, varies as the share price varies between $20 and $65. You can find this solution on the Hedging worksheet in the file Ifstatement.xlsx. The worksheet is shown in Figure 12-2. 90 Microsoft Excel 2010: Data Analysis and Business Modeling The labels in A2:A7 are linked to cells B2:B7. The initial portfolio value is equal to 100($55)+60($5)=$5,800, shown in cell B7. By copying from B9 to B10:B18 the formula IF(A9<exprice,exprice–A9,0)*Nputs, I compute the final value of the puts. If the six-month price is less than the exercise price, you can value each put as exercise price–six-month price. Otherwise, each put will in six months have a value of $0. Copying from C9 to C10:C18 the formula Nshares*A9, I compute the final value of the shares. Copying from D9 to D10:D18 the formula ((C9+B9)–startvalue)/startvalue) computes the percentage return on the hedged portfolio. Copying from E9 to E10:E18 the formula (C9–Nshares*pricenow)/ (Nshares*pricenow) computes the percentage return on the portfolio if we are unhedged (that is, buy no puts). Figure 12-2 Hedging example that uses IF statements. In Figure 12-2, you can see that if the stock price drops below $45, the hedged portfolio has a larger expected return than the unhedged portfolio. Also note that if the stock price does not decrease, the unhedged portfolio has a larger expected return. This is why the purchase of puts is often referred to as portfolio insurance. Many stock market analysts believe that moving-average trading rules can outperform the market. A commonly suggested moving-average trading rule is to buy a stock when the stock’s price moves above the average of the previous 15 months and to sell a stock when the stock’s price moves below the average of the previous 15 months’ price. How would this trading rule have performed against the Standard & Poor’s 500 Index? In this example, I’ll compare the performance of the moving-average trading rule (in the absence of transaction costs for buying and selling stock) to a buy-and-hold strategy. The strength of a moving-average trading rule is that it helps you follow market trends. A moving-average trading rule lets you ride up with a bull market and sell before a bear market destroys you. Chapter 12 IF Statements 91 The data set contains the monthly value of the S&P 500 Index for the time period January, 1871 through October, 2002. To track the performance of the moving-average trading ­strategy, I need to track the following information each month: ■ What is the average of the S&P 500 Index over the last 15 months? ■ Do I own stock at the beginning of each month? ■ Do I buy stock during the month? ■ Do I sell stock during the month? ■ What is the cash flow for the month (positive if I sell stock, negative if I buy stock, and 0 otherwise)? The worksheet for this situation requires you to scroll down many rows. It helps to keep ­columns A and B, as well as the headings in row 8, visible as you scroll down. To do this, in the file Matradingrule.xlsx, move the cursor to cell C9, click View on the ribbon, and then click Freeze Panes in the Windows group. This presents the choices shown in Figure 12-3. Figure 12-3 Freeze Panes options. Here you choose the Freeze Panes option, which keeps columns A and B and rows 6–8 visible as you scroll through the worksheet. The Freeze Top Row option lets you keep just the top row visible while scrolling through the rest of the worksheet. For example, if the top visible row is row 6, you see row 6 no matter how far down you scroll. If you choose the Freeze First Column option, you always see the leftmost column as you scroll through the worksheet. Selecting Unfreeze Panes from the menu returns you to normal worksheet view. The file Matradingrule.xlsx, shown in Figure 12-4, includes the formulas needed to track the effectiveness of a moving-average strategy. Tackling this problem requires several IF formulas, and some of the IF formulas require an AND operator. For example, I’ll buy the stock during a month if and only if I don’t own the stock at the beginning of the month and the current month’s price is higher than the 15-month moving average for the stock’s price. The first month for which I can compute a 15-month moving average is April, 1872, so I begin my calculations in row 24. 92 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 12-4 Moving-average trading rule beats buy and hold. Let’s assume I first owned the stock in April 1872, so Yes is entered in cell C24. ■ By copying from D24 to D25:D1590 the formula AVERAGE(B9:B23), I compute the 15-month moving average for each month. Note An easy way to copy the formula from D24 to D25:D1590 is to point at the lower-right corner of cell D24 (the pointer appears as a crosshair) and then double-click the left mouse button. Double-clicking copies the formula to all the cells in the column with a value in the column to the left. This trick can also be used to copy formulas in multiple columns. ■ By copying from E24 to E25:E1590 the formula IF(AND(C24="No",B24>D24),"yes","no"), I determine for each month whether the S&P share is purchased during the month. Remember that I purchase the share only if I did not own the stock at the beginning of the month and the current value of the S&P exceeds its 15-month moving average. Notice the AND portion of the formula. It contains two conditions (more than two are allowed) separated by a comma. If both conditions are satisfied, the formula returns Yes; otherwise, it returns No. For an IF formula to recognize text, you need to place quotation marks (“ “) around the text. ■ By copying from F24 to F25:F1590 the formula IF(AND(C24="Yes",B24<D24),"yes","no"), I determine for each month whether the S&P share is sold. The stock is sold if and only if I owned the S&P share at the beginning of the month and the current value of the S&P share is below the 15-month moving average. April, 1873 is the first month in which I sell our S&P stock. Chapter 12 IF Statements 93 ■ During any month before October 2002, if I buy a share of the S&P during the month, the cash flow is negative the value of the S&P share I bought. If I sell a share of the S&P during the month, the cash flow equals the value of the S&P. Otherwise, the cash flow is 0. During October, 2002, I sell any S&P share I own to get credit for its value. Therefore, by copying from G24 to G25:G1589 the formula IF(E24="yes",–B24,IF(F24="yes",B24,0)), I record the cash flow for all months before October, 2002. Entering in cell G1590 the formula IF(C1590="yes",B1590,0) gives me credit for selling any stock I own at the ­beginning of the last month. ■ In cell G6, I compute total profit from the moving-average trading strategy with the formula SUM(G24:G1590). You can see that the 15-month moving average strategy earns a profit of $1,319.75. ■ The profit from buying and holding shares is simply the October 2002 S&P value minus the April, 1872 S&P value. I compute the profit from the buy-and-hold strategy in cell G7 with the formula B1590–B24. As you can see, the buy and hold profit of $849.45 is far worse than the profit from the ­moving-average trading rule. Of course, this solution ignores the transaction costs incurred in buying and selling stocks. If transaction costs are large, this might wipe out the excess profits earned by the moving-average trading strategy. In the game of craps, two dice are tossed. If the total of the dice on the first roll is 2, 3, or 12, you lose. If the total of the dice on the first roll is 7 or 11, you win. Otherwise, the game keeps going. How can I write a formula to determine the status of the game after the first roll? The fact that you lose in craps if you throw a 2, 3, or 12 can be conveniently modeled by placing an OR formula within an IF formula. In cell B5 of the Craps worksheet of the file Ifstatement.xlsx, shown in Figure 12-5, I entered the formula IF(OR(A5=2,A5=3,A5=12), ”lose”,IF(OR(A5=7,A5=11),”win”,”keep going”)). This formula is then copied from B5 to B6:B7. The formula displays lose if a 2, 3, or 12 is entered in cell A5. It displays win if a 7 or 11 is entered, and it displays keep going for any other value. Figure 12-5 Using IF statements to model the first roll in craps. In most pro forma financial statements, cash is used as the plug to make assets and ­liabilities balance. I know that using debt as the plug would be more realistic. How can I set up a pro forma statement having debt as the plug? 94 Microsoft Excel 2010: Data Analysis and Business Modeling A pro forma is basically a prediction of a company’s financial future. A pro forma requires construction of a company’s future balance sheets and income statements. The balance sheet provides a snapshot of the company’s assets and liabilities at any point in time. An income statement tells you how the company’s financial status is changing at any point in time. Pro forma statements can help a company determine its future needs for debt and are also key parts of models that stock analysts use to determine whether a stock is properly valued. In the file Proforma.xlsx, I generated the free cash flows (FCFs) for a company for the next four years. Figure 12-6 shows the balance sheet, and Figure 12-7 shows the income statement. Figure 12-6 Pro forma assumptions and balance sheet. Figure 12-7 Pro forma income statement. Column D contains information about the company’s current status (during year 0). Our basic assumptions are as follows: ■ Sales growth (SG) is 2 percent per year. ■ Initial sales are $1,000. ■ Interest rate on debt is 10 percent. Chapter 12 IF Statements ■ Dividend payout is 5 percent of net income. ■ The tax rate is 53 percent. ■ Cost of goods sold (COGS) is 75 percent of sales. ■ Depreciation is 10 percent of gross fixed assets. ■ Liquid assets earn 9 percent. ■ Current assets are 15 percent of sales. ■ Current liabilities are 7 percent of sales. 95 I assigned the names in the cell range C3:C10 to the cells in the range D3:D10. Then, during each Year t, basic finance and accounting imply the following relationships, which are then implemented in a series of formulas: ■ Formula 12.1: Year t+1 sales=(Year t sales)*(1+SG). I computed sales during each year by copying from E28 to F28:H28 the formula D28*(1+SG). ■ Formula 12.2: Year t COGS=COGS*(Year t sales). Each year’s COGS are computed by copying from E29 to F29:H29 the formula COGS*E28. ■ Formula 12.3: If Year t assets>Year t liabilities, Year t debt must be set equal to Year t ­total assets–Year t current liabilities–Year t equity. Otherwise, Year t debt equals 0. I computed each year’s debt in E21:H21 with the formula IF(E18>E20+E24,E18–E20– E24,0). If Year t total assets are greater than Year t total liabilities, this formula sets Year t debt to Year t total assets–Year t current liabilities–Year t equity. This equalizes, or balances, assets and liabilities. Otherwise, you set Year t debt equal to 0. In this case, Year t cash and marketable securities are used to balance assets and liabilities. ■ Formula 12.4: Year t current liabilities=(CL/Sales ratio)*(Year t sales). In E20:H20, I use the formula $H$4*E28 to compute current liabilities for each year (copying this formula from E20 to F20:H20). ■ Formula 12.5: Year t equity=Year t stock+Year t retained earnings. In E24:H24, I compute equity by copying from E24 to F24:H24 the formula SUM(E22:E23). ■ Formula 12.6: If Year t debt is greater than 0, Year t cash and marketable securities equals 0. Otherwise, Year t cash and marketable securities equals MAX(0,Year t ­total liabilities–Year t current assets–Year t net fixed assets). In E13:H13, I compute cash and marketable securities for each year by copying from E13 to F13:H13 the formula IF(E21>0,0,MAX(0,E25–E14–E17)). If Year t debt is greater than 0, you need not use Year t cash and marketable securities to balance assets and liabilities. In this case, I set Year t cash and marketable securities equal to 0. Otherwise, I set Year t cash and marketable securities equal to Year t total assets–Year t current liabilities–Year t equity. This balances assets and liabilities if Year t assets (without cash and marketable securities) are less than Year t liabilities. If debt does not balance assets and liabilities, this creates liquid assets as the plug that does balance assets and liabilities. 96 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Formula 12.7: Year t interest expense=(Year t debt)*IRD. In E33, I compute interest ­expense by using the formula IRD*E21, copying this formula again to F33:H33. ■ Formula 12.8: Year t interest income=(Year t cash and marketable securities)*LAIR. In E32:H32, I compute interest income by copying from E32 to F32:H32 the formula LAIR*E13. ■ Formula 12.9: Year t operating income=Year t sales–Year t COGS–Year t depreciation. In E31:H31, operating income is computed by copying from E31 to F31:H31 the formula E28–E29–E30. ■ Formula 12.10: Year t dividends=(Year t net income)*DIV. In E39:H39, I copy from E39 to F39:H39 the formula E36*DIV to compute dividends for each year. ■ Formula 12.11: Year t+1 beginning retained earnings=Year t ending retained earnings. I compute beginning retained earnings each year in F38:H38, copying from F38 to G38:H38 the formula E40. ■ Formula 12.12: Year t end of year retained earnings=Year t beginning retained earnings+Year t net income–Year t dividends. In E40:H40, I compute each year’s ending retained earnings by copying from E40 to F40:H40 the formula E38+E36–E39. ■ Formula 12.13: Year t income before taxes=Year t operating income–Year t interest expense+Year t cash income. I compute income before taxes by copying from E34 to F34:H34 the formula E31–E33+E32. ■ Formula 12.14: Year t taxes=(Year t income before taxes)*TR. I compute each year’s taxes in E35:H35 by copying from E35 to F35:H35 the formula TR*E34. ■ Formula 12.15: Year t net income after taxes=(Year t income before taxes)–(Year t taxes). In E36:H36, I compute each year’s net income by copying from E36 to F36:H36 the ­formula E34–E35. ■ Formula 12.16: Year t gross fixed assets=Year t net fixed assets+Year t accumulated ­depreciation. In cells E15:H15, I compute gross fixed assets for each year by copying the formula E17+E16. ■ Formula 12.17: Year t depreciation=(Year t net fixed assets)*DEP. For each year, I use the formula DEP*E15 to compute depreciation, copying the formula from E30 to F30:H30. ■ Formula 12.18: Year t accumulated depreciation=Year t–1 accumulated depreciation+Year t depreciation. For each year, I use the formula D16+E30 to compute accumulated ­depreciation by copying the formula from E16 to F16:H16. ■ Formula 12.19: Year t net fixed assets=Year t gross fixed assets–Year t accumulated ­depreciation. In row 17, to compute net fixed assets, I copy from E17 to F17:H17 the ­formula E15–E16. Chapter 12 IF Statements 97 ■ Formula 12.20: Year t total assets=Year t liquid assets+Year t net fixed assets+Year t cash and marketable securities. By adding liquid assets, current assets, and net fixed assets, I compute total assets by copying from E18 to F18:H18 the formula SUM(E13,E14,E17). ■ Formula 12.21: Year t total liabilities=Year t current liabilities+Year t debt+Year t ­equity. By copying from E25 to F25:H25 the formula SUM(E20,E21,E24), I compute total ­liabilities for each period. Each year will balance because of our debt and liquid asset statements. Formulas 12.3 and 12.6 require the use of IF statements. This worksheet will also contain circular references. (For more information about solving circular references, see Chapter 11, “Circular References.”) For example, the following relationships create a circular reference: ■ Year t cash affects Year t total assets. ■ Year t total assets affect Year t debt. ■ Year t debt affects Year t cash. Because the worksheet contains circular references, you need to click the File tab, click Options, choose Formulas, and select the Enable Iterative Calculations check box. As ­explained in Chapter 11, this enables Excel to resolve circular references. Note that for each Year t, total assets in row 18 equal total liabilities in row 25. This shows the power of IF ­formulas combined with circular references. When I copy a VLOOKUP formula to determine salaries of individual employees, I get a lot of #N/A errors. Then when I average the employee salaries I cannot get a numerical answer because of the #N/A errors. Can I easily replace the #N/A errors with a blank space so I can compute average salary? The file Errortrap.xlsx (see Figure 12-8) contains salaries and names of five employees in the cell range D3:E7. In D11:D15 I have a list of five people, and I compute their salary by copying from E11 to E12:E15 the formula =VLOOKUP(D11,$D3:$E$7,2,False). Unfortunately, in cells E13 and E14 Excel displays an #N/A error. NA is short for “not available.” Excel returns an #N/A error value when a formula cannot return an appropriate result. Because JR and Josh have no listed salary, VLOOKUP cannot return a salary value for them. Thus, when I compute average salary in E16 with the formula =AVERAGE(E11:E15), I get an #N/A error. Many people I have taught go through and manually replace the #N/A errors with spaces so that their average formula will calculate properly (by ignoring the spaces). The IFERROR function makes replacing errors with a character (such as a space or a 0) a snap. The syntax of IFERROR is IFERROR(value,value_if_error). The first argument is the formula you want calculated, and the second argument is the value to insert in the cell if your formula returns an error value. (Other common error values are #DIV/0, #NAME, #NUM, #REF, #VALUE; more on these later in the section.) Therefore, ­copying from F11 to F12:F15 the formula IFERROR(VLOOKUP(D11,$D$3:$E3:$E7,2,False),” “) computes salary correctly for each actual employee and enters a blank space for people 98 Microsoft Excel 2010: Data Analysis and Business Modeling who are not actual employees. The formula =AVERAGE(F11:F15) now correctly computes the ­average salary for all listed employees. Figure 12-8 Error trapping formulas. Excel 2010 contains a new function, the AGGREGATE function, that allows you to perform calculations and ignore rows that contain errors. The syntax of the AGGREGATE function is AGGREGATE(function number, option, array). Function number is a code between 1 and 19 that gives the function involved in your calculations. For example, 1 = AVERAGE and 9 = SUM. See the Help topic on this function (obtained by clicking Help On This Function in the Function Wizard) for a complete list of available functions. Option gives the type of cells that should be ignored in your calculations. (See the following table.) I used Option 6 so that error values are ignored. Array is simply the range of cells used in your calculations. As shown in cell E18, the formula AGGREGATE(1,6,E11:E15) correctly computes the average (74.6667) of the listed salaries. Option Behavior 0 or omitted Ignore nested SUBTOTAL and AGGREGATE functions 1 Ignore hidden rows and nested SUBTOTAL and AGGREGATE functions 2 Ignore error values and nested SUBTOTAL and AGGREGATE functions 3 Ignore hidden rows, error values, and nested SUBTOTAL and AGGREGATE functions 4 Ignore nothing 5 Ignore hidden rows 6 Ignore error values 7 Ignore hidden rows and error values Chapter 12 IF Statements 99 The file Errortypes.xlsx, shown in Figure 12-9, contains examples of other common error values. Figure 12-9 Examples of Excel error values. ■ In cell D3, the formula =C3/B3 yields a #DIV/0! value because you can’t divide by 0. ■ In cell D6, the formula =C6+D6 yields a #VALUE! error because Jack is not the ­appropriate type of data for the entered formula. (Jack is text.) ■ In cell D7, the formula =SUM(Sales) returns a #NAME? error, indicating that the range name Sales referred to in the formula is not defined. ■ In cell D8, the formula =SQRT(–1) results in a #NUM! error. The #NUM error results when you enter an unacceptable argument in a function. Because negative numbers do not have square roots, Excel displays the #NUM! error. ■ In cell C9, I entered the formula SUM(A1:A3) and then deleted column A. This results in a #REF! error because the cells that are referred to in the formula (cells A1:A3) are no longer in the worksheet. The IFERROR function can be used to replace any of these error values by a number or text string. My worksheet contains quarterly revenues for Wal-Mart. Can I easily compute the revenue for each year and place it in the row containing the first quarter’s sales for that year? The file Walmartrev.xlsx contains quarterly revenues (in millions of dollars) for Wal-Mart. (See Figure 12-10.) Rows 6, 10, 14, and so on contain the revenues for the first quarter of each year. In each of these rows, I would like to compute total revenues for the year in column E. In other rows, column E should be blank. I could enter in cell E6 the formula SUM(D6:D9) and copy this formula to E10, then E14, then E18, and so on, but there must be a better way. Using an IF statement with two neat Excel functions, (ROW and MOD), gives me an easy way to enter my formula once and then copy the formula. The function ROW(cell reference) yields the row of reference. The function =ROW(A6) yields a 6; if you are in row 6, the =ROW() function would also yield a 6. The function MOD(number,divisor) yields the remainder when number is divided by divisor. For example, MOD(9,4) yields 1, whereas MOD(6,3) 100 Microsoft Excel 2010: Data Analysis and Business Modeling yields 0. Note that I want my formula to work only in rows that leave a remainder of 2 when ­divided by 4. Therefore, copying from E6 to E7:E57 the formula =IF(MOD(ROW(),4)= 2,SUM(D6:D9),” “) ensures that I add up revenues for the current year only in rows that leave a remainder of 2 when divided by 4. This means that I compute annual revenues only in the first quarter of each year, which is the goal. Figure 12-10 Summarizing Wal-Mart annual revenues. IF statements can get rather large. How many IF statements can I nest in a cell? What is the maximum number of characters allowed in an Excel formula? In Excel 2010, you can nest up to 64 IF statements in a cell. In previous versions of Excel, you could nest a maximum of seven IF statements. In Excel 2010 (and Excel 2007), a cell can contain up to 32,000 characters. Previous versions of Excel allowed only 1,000 characters in a cell. Problems 1. Suppose the price of a product will change at dates in the future as follows: Date Price On or before February 15, 2004 $8 From February 16, 2004, through April 10, 2005 $9 From April 11, 2005, through January 15, 2006 $10 After January 15, 2006 $11 Write a formula that computes the price of the product based on the date the product is sold. Chapter 12 IF Statements 101 2. The Blue Yonder Airline flight from Seattle to New York has a capacity of 250 people. The airline sold 270 tickets for the flight at a price of $300 per ticket. Tickets are nonrefundable. The variable cost of flying a passenger (mostly food costs and fuel costs) is $30 per passenger. If more than 250 people show up for the flight, the flight is overbooked and Blue Yonder must pay overbooking compensation of $350 per person to each overbooked passenger. Develop a worksheet that computes Blue Yonder’s profit based on the number of customers who show up for the flight. 3. A major drug company is trying to determine the correct plant capacity for a new drug. A unit of annual capacity can be built for a cost of $10. Each unit of the drug sells for $12 and incurs variable costs of $2. The drug will be sold for 10 years. Develop a worksheet that computes the company’s 10-year profit given the chosen annual capacity level and the annual demand for the drug. Assume demand for the drug is the same each year. You can ignore the time value of money in this problem. 4. The drug company is producing a new drug. The company has made the following assumptions: ❑ During Year 1, 100,000 units will be sold. ❑ Sales will grow for three years and then decline for seven years. ❑ During the growth period, sales will grow at a rate of 15 percent per year. During the decline, sales will drop at a rate of 10 percent per year. Develop a worksheet that takes values for Year 1 sales, the length of the growth cycle, the length of the decline cycle, the growth rate during the growth cycle, and the rate of decrease during the decline cycle and computes unit sales for Years 1–11. 5. You are bidding on a construction project. The low bid gets the project. You estimate the project cost at $10,000. Four companies are bidding against you. It costs $400 to prepare the bid. Write a formula that (given the bids of your four competitors and your bid) computes your profit. 6. We are bidding on a valuable painting. The high bid gets the painting. We estimate the painting’s value at $10,000. Four companies are bidding against us. It costs $400 to prepare the bid. Write a formula that (given the bids of our four competitors and our bid) determines whether we get the painting. 7. A drug company believes its new drug will sell 10,000 units during 2004. They expect two competitors to enter the market. The year in which the first competitor enters, the company expects to lose 30 percent of its market share. The year in which the second competitor enters, the company expects to lose 15 percent of its market share. The size of the market is growing at 10 percent per year. Given values for the years in which the two competitors enter, develop a worksheet that computes the annual sales for the years 2004–2013. 102 Microsoft Excel 2010: Data Analysis and Business Modeling 8. A clothing store has ordered 100,000 swimsuits. It costs $22 to produce a swimsuit. They plan to sell them until August 31 at a price of $40 and then mark the price down to $30. Given values for demand through August 31 and after August 31, develop a worksheet to compute the profit from this order. 9. In a game of craps, on each roll of the dice after the first roll, the rules are as follows: If the game has not ended and the current roll matches the first roll, you win the game. If the game has not ended and the current roll is a 7, you lose. Otherwise, the game continues. Develop a worksheet that tells you (given knowledge of the first four rolls) the status of the game after four dice rolls. 10. On the S&P moving-average example, suppose we still buy shares if the current price exceeds the 15-month moving average, but we sell if the current price is less than the 5-month moving average. Is this strategy more profitable than selling when the current price is less than the 15-month moving average? 11. A European call option gives you the right to buy at a specified future date a share of stock for a given exercise price. A butterfly spread involves buying one call option with a low exercise price, buying one call option with a high exercise price, and selling two call options with an exercise price midway between the low and high exercise prices. Here is an example of a butterfly spread: The current stock price is $60. You buy a $54 six-month European call option for $9, buy a $66 six-month European call option for $4, and sell two $60 European call options for the price of $6. Compute the profit (in dollars, not percentage) for this transaction as a function of six-month stock prices ranging from $40–$80. When a trader purchases a butterfly spread, which type of movement in the stock price during the next six months is the trader betting on? 12. Suppose a stock is currently selling for $32. You buy a six-month European call option with an exercise price of $30 for $2.50 and sell a six-month European call option with an exercise price of $35 for $1. Compute the profit of this strategy (in dollars) as a function of a six-month stock price ranging from $25–$45. Why is this strategy called a bull spread? How would you modify this strategy to create a bear spread? 13. Let’s reconsider our pro forma example. Suppose the interest rate on our debt depends on our financial well-being. More specifically, suppose that if our earnings before interest and taxes (EBIT) are negative, our interest rate on debt is 16 percent. If our interest expense is more than 10 percent of EBIT and EBIT is positive, our interest rate on debt is 13 percent. Otherwise, our interest rate is 10 percent. Modify the pro forma to account for this variable interest rate. 14. Do this problem independently of Problem 13. Suppose our firm wants a debt-to-­ equity ratio of 50 percent during each year. How would you modify the pro forma? Hint: You must keep each year’s stock nonnegative and use stock and cash or ­marketable securities to balance assets and liabilities. Chapter 12 IF Statements 103 15. Martin Luther King Day occurs on the third Monday in January. Write a formula that computes (given the year) the date of Martin Luther King Day. Hint: First determine the day of the week for January 1 of the given year. 16. Thanksgiving occurs on the fourth Thursday in November. Write a formula that ­computes (given the year) the date of Thanksgiving. Hint: First determine the day of the week for November 1 of the given year. 17. The first quarter of the year is January–March; the second quarter, April–June; the third quarter, July–September; and the fourth quarter, October–December. Write a formula that returns (for any given date) the quarter of the year. 18. Write a formula that returns a person’s age, given his or her date of birth. 19. Labor Day is the first Monday in September. Write a formula that determines the date of Labor Day for a given year. 20. The file Nancybonds.xlsx gives the bond rating for several bonds in a previous and future month. You want to efficiently count how many bonds were downgraded. Unfortunately, each company is listed in more than one row. Assuming you have sorted the data on the company name, how would you determine the number of downgraded bonds? 21. The file Addresses.xlsx gives people’s names on one line, their street address on the next line, and their city, state, and ZIP code on the following line. How could you put each person’s information on one line? 22. The file FormattingDDAnum.xlsx gives a bunch of text strings, such as DDA : D, DDA1250045, and so on. A cell is properly formatted if the first three characters are DDA and the last seven characters are a number 1 million or larger. Determine which cells are properly formatted. 23. Suppose the number of Group 1 members is listed in cell B1, the number of Group 2 members is listed in cell B2, and the number of Group 3 members is listed in cell B3. The total number of group members is always 100. Suppose that Group 1 has 50 members, Group 2 has 30 members, and Group 3 has 20 members. Efficiently place a 1 for each Group 1 member in column D, a 2 for each Group 2 member in column D, and a 3 for each Group 3 member in column D. Thus, column D should (in our example) have a 1 in D1:D50, a 2 in D51:D80 and a 3 in D81:D100. 24. The file Dividebyprice.xlsx contains units sold of each product and total revenue. You want to determine the average price for each product. Of course, if units sold is 0, then there is no average price. Error-trap the file Dividebyprice.xlsx to ensure that all products with zero sales yield the message “No sales” instead of a #DIV!0 error. 104 Microsoft Excel 2010: Data Analysis and Business Modeling 25. The School of Fine Art has 100 lockers numbered 1–100. At present, all lockers are open. We begin by closing every locker whose number evenly divides by 3. Then we “toggle” (toggling means opening a closed locker and closing an open locker) each locker whose number is divisible by 4; then we toggle each locker whose number is ­divisible by 5,…, and finally we toggle each locker whose number is divisible by 100. How many lockers are now open? 26. The file Matchlist.xlsx contains a list of people who bought your product in February and a list of people who bought it in March. Determine how many of your February customers purchased your product in March. 27. Set up a “calendar worksheet” that takes a given month and year as inputs and tells you the day of the week on which each day of the month occurs. 28. Some rows of column C of file Problem28data.xlsx contain the word and. Create ­formulas in column D that place an X in a row of column D if and only if column C in that row contains the word and. 29. Suppose you toss two 20-sided dice. The 400 possible outcomes are (1, 1), (1, 2),. … (20,20). Use IF statements to systematically generate all 400 possible outcomes. Chapter 13 Time and Time Functions Questions answered in this chapter: ■ How do I enter times in Excel? ■ How do I enter a time and date in the same cell? ■ How does Excel do computations with times? ■ How can I have my worksheet always display the current time? ■ How can I use the TIME function to create times? ■ How can I use the TIMEVALUE function to convert a text string to a time? ■ How do I extract the hour, minute, or second from a given time? ■ Given work starting and ending times, how do I determine the number of hours an ­employee worked? ■ I added up the total time an employee worked, and I never get more than 24 hours. What did I do wrong? ■ How can I easily create a sequence of regularly spaced time intervals? Recall from Chapter 7, “Dates and Date Functions,” that Microsoft Excel 2010 gives the date January 1, 1900, the serial number 1, January 2, 1900, the serial number 2, and so on. Excel also assigns serial numbers to times (as a fraction of a 24-hour day). The starting point is ­midnight, so 3:00 A.M. has a serial number of .125, noon has a serial number of .5, 6:00 P.M. has a serial number of .75, and so on. If you combine a date and time in a cell, the serial ­number is the number of days after January 1, 1900, plus the time fraction associated with the given time. Thus, entering January 1, 2007, in a cell yields (when formatted as General) a serial number of 39083, whereas January 1, 2007, 6:00 A.M. yields a serial number of 39083.25. Answers to This Chapter’s Questions How do I enter times in Excel? To indicate times, you enter a colon (:) after the hour and another colon before the seconds. For example, in file Time.xlsx (see Figure 13-1), I entered in cell C2 the time 8:30 A.M. as simply 8:30 or as 8:30 A.M. In cell C3, I entered 8:30 P.M. as 8:30 PM. As shown in cell D3, I could also have entered 8:30 P.M. with 24-hour military time as 20:30. In cell A4, I entered 3:10:30 PM. This represents 30 seconds after 3:10 P.M. 105 106 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 13-1 Examples of time formats. How do I enter a time and date in the same cell? Simply put a space after the date and enter the time. In cell F13 of file Time.xlsx, I ­entered January 1, 2007 5:35. Of course, this represents 5:35 A.M. on January 1, 2007. Excel immediately reformatted this to 1/1/2007 5:35. How does Excel do computations with times? When Excel computes differences in times, the result displayed depends on the format used in the cell. Figure 13-2 displays the various Excel time formats. Figure 13-2 Excel time formats. In the file Time.xlsx (see Figure 13-2), I took the difference between 8:30 P.M. and 8:30 A.M. in cells F5 and H5 with the formula =C3–C2. If you do not change the format, Excel thinks these times are 12 hours apart and enters 12:00 PM, as shown in cell H5. In most cases, you’ll want Excel to portray these times as .5 days apart. (Multiplying by 24, you could convert this time difference to hours.) To make Excel show .5 in cell F5, simply format cell F5 as a number. In cell F7, I tried to subtract an earlier time from a later time with the formula =D2–D3. Because I did not reformat the cell, Excel displays the dreaded ##############. If you simply change the cell containing the formula to the Number format (as in cell F8), you ­obtain the correct time difference, –.5 days. Cells B17 and C17 give the start times for two jobs, whereas cells B18 and C18 give the finish times for the jobs. (See Figure 13-3.) If you want to calculate how many hours it takes to Chapter 13 Time and Time Functions 107 c­ omplete each job, simply copy from B19 to C19 the formula =B18–B17 and reformat the cell as Number. Thus, the first job took 29.18 days, and the second job took 28.97 days. Figure 13-3 Determining time needed to complete jobs. How can I have my worksheet always display the current time? The Excel formula =NOW() gives today’s date and the current time. For example, in cell G2 (see Figure 13-4) of file Time.xlsx, entering =NOW() yielded 7/13/2010 21:50 because I created the screen capture at 21:50 P.M. on July 13, 2010. To compute the current time, simply enter in cell H2 or I2 the formula =NOW()–TODAY(). Cell H2 is formatted to show a time (9:50 P.M.), whereas cell I2 is formatted to show a number (.91 days). This represents the fact that 9:50 P.M. is 91 percent of the way between midnight of one day and midnight of the next day. Figure 13-4 Using the Now() and Today() functions. How can I use the TIME function to create times? The TIME function has the syntax TIME(hour,minute,second). Given an hour, minutes, and seconds, the TIME function returns a time of day. The TIME function never returns a value exceeding 24 hours. In cell A2 (see Figure 13-1), the formula =TIME(8,30,0) yields 8:30 A.M. In cell A3, the formula =TIME(20,30,0) yields 8:30 P.M. In cell A4, the formula =TIME(15,10,30) yields 3:10:30 P.M. Finally, note that in cell A5 the formula =TIME(25,10,30) treats the 25 like it is 25–24=1 and yields 1:10:30 A.M. Of course, if the number of seconds does not show up in a cell, just select a Time format that displays seconds. How can I use the TIMEVALUE function to convert a text string to a time? The function TIMEVALUE has the syntax =TIMEVALUE(timetext), where timetext is a text string that gives a time in a valid format. Then TIMEVALUE returns the time as a fraction ­between 0 and 1. (This means that the TIMEVALUE function ignores any date in timetext.) For example, in cell A7 (see Figure 13-1), the formula =TIMEVALUE(“8:30”) yields 0.354166667 because 8:30 A.M. is 35.4 percent of the way between midnight of one day and midnight of the next day. 108 Microsoft Excel 2010: Data Analysis and Business Modeling How do I extract the hour, minute, or second from a given time? The Excel HOUR, MINUTE, and SECOND functions extract the appropriate time unit from a cell containing time. For example (as shown in Figure 13-1), entering in cell C5 the formula =HOUR(A4) yields 15 (3:00 PM is 15:00 military time). Entering in cell D5 the formula =Minute(A4) yields 10, whereas entering =SECOND(A4) in cell E5 yields 30. Given work starting and ending times, how do I determine the number of hours an ­employee worked? In cells C10:D11 (see Figure 13-5), I entered the times that Jane and Jack started and ­ended work. We want to figure out how long each of them worked. The problem is that Jane finished work the day after she started, so simple subtraction does not give the actual number of hours she worked. Copying from C13 to C14 the formula =IF(D10>C10,24*(D10–C10),24+24*(D10–C10)) yields the correct result. Of course, I ­formatted these cells as Number. If the finish time is after the start time, subtracting the start time from the finish time and multiplying by 24 yields hours worked. If the finish time is before the start time, then 24*(finish time–start time) yields a negative number of hours, but adding 24 hours fixes things, assuming the end of the shift was one day later. Thus, Jane worked 9 hours and Jack worked 8.5 hours. Figure 13-5 Computing length of time worked by employees. I added up the total time an employee worked, and I never get more than 24 hours. What did I do wrong? In cells C31:D35 in Figure 13-6, I give the number of hours (formatted as h:mm) an employee worked on each day of her workweek. In cell D36, the formula =SUM(D31:D35) is used to compute the total number of hours worked during the week. Excel yields 14:48. This is clearly wrong! With the format h:mm, Excel never yields a value exceeding 24 hours. In cell D38, I chose a format (38:48:00) that allows for more than 24 hours. Then, summing up the hours worked each day yields the correct number of hours worked (38 hours and 48 minutes). Figure 13-6 Determining total hours worked during the week. Chapter 13 Time and Time Functions 109 How can I easily create a sequence of regularly spaced time intervals? Suppose a doctor takes appointments from 8:00 A.M. in 20 minute segments up to 5:00 P.M. How can I enter in different rows the list of possible appointment times? Simply use Excel’s great AutoFill feature. (See Figure 13-7.) Enter the first two times (8:00 A.M. and 8:20 A.M.) in cells L15:L16. Now select cells L15:L16 and move the cursor to the lower-right corner of cell L16 until you see the black cross. Drag the pointer down until you see 5:00 P.M. (the last appointment time). From cells L15:L16, Excel has guessed (correctly!) that you want to enter times that are 20 minutes apart. Of course, entering Monday in a cell and Tuesday below and using AutoFill will yield the sequence Monday, Tuesday, Wednesday,…, eventually restarting at Monday. Entering 1/1/2007 in one cell, 2/1/2007 in another cell, selecting these two cells, and using AutoFill yields a sequence of dates, like 1/1/2007, 2/1/2007, 3/1/2007, and so on. Figure 13-7 Entering a sequence of times. Problems 1. Write a formula that will return a time 18 hours after the current time. 2. The file Marathon.xlsx gives marathon race times for four runners. Problems A through C refer to this data. Compute the average time of the runners. a. How much faster was John than Jill? b. How many total minutes did each runner take? c. How many total seconds did each runner take? 3. The file Jobshop.xlsx gives the start time and date for several jobs and the time ­required to complete each job. Determine the completion time for each job. Chapter 14 The Paste Special Command Questions answered in this chapter: ■ How can I move the results of calculations (not the formulas) to a different part of a worksheet? ■ I have a list of names in a column. How can I make the list appear in a row instead of a column? ■ I’ve downloaded U.S. T-Bill interest rates from a website into Excel. The data displays a 5 when the interest rate is 5 percent, 8 when the interest rate is 8 percent, and so on. How can I easily divide my results by 100 so that a 5 percent interest rate, for example, is displayed as .05? With the Paste Special command in Microsoft Excel 2010, you can easily manipulate ­worksheet data. In this chapter, I’ll show how you can use the Paste Special command to ­perform the following types of operations: ■ Paste only the values in cells (not the formulas) to a different part of a worksheet. ■ Transpose data in columns to rows and vice versa. ■ Transform a range of numbers by adding, subtracting, dividing, or multiplying each number in the range by a given constant. Answers to This Chapter’s Questions How can I move the results of calculations (not the formulas) to a different part of a worksheet? In the Paste Special Value worksheet in the file Pastespecial.xlsx, the cell range E4:H9 ­contains the names, games, total points, and points per game for five 10–11-year-old basketball players from Bloomington, Indiana. In the cell range H5:H9, I used the data in cells F5:G9 to compute each child’s points per game, as shown in Figure 14-1. Suppose you want to copy this data and the calculated points per game—but not the formulas that perform the calculations—to a different cell range (E13:H18, for example). All you do is select the range E4:H9, press Ctrl+C, and then move to the upper-left corner of the range where you want to copy the data (cell E13 in this example). Next, right-click the upper-left corner cell in the target range, click Paste Special, and then fill in the Paste Special dialog box as indicated in Figure 14-2. After clicking OK, the range E13:H18 contains the data but not the formulas from the cell range E4:H9. You can check this by going to cell H16. You will see a value (7) but not the formula that was used to compute Gregory’s average points per game. Note that if you 111 112 Microsoft Excel 2010: Data Analysis and Business Modeling use the Paste Special command, select Values, and then paste the data into the same range from which you copied the data, your formulas disappear from the worksheet. Figure 14-1 Using the Paste Special command to paste only values. Figure 14-2 The Paste Special dialog box with Values selected. Selecting Values pastes only values and not any formulas. I have a list of names in a column. How can I make the list appear in a row instead of a column? To realign data from a row to a column (or vice versa), copy the data and then use the Paste Special command with Transpose selected. Essentially, the Transpose option in the Paste Special dialog box “flips” selected cells around so that the first row of the copied range becomes the first column of the range you paste data into, and vice versa. For an example, look at the Paste Special Transpose worksheet in the file Pastespecial.xlsx, shown in Figure 14-3. Suppose that you want to list the players’ names in one row (starting in cell E13). Simply ­select the range E5:E9, and then press Ctrl+C to copy the data. Right-click cell E13, click Paste Special, and select Transpose in the Paste Special dialog box. After you click OK, Excel ­transposes the players’ names into one row. Chapter 14 The Paste Special Command 113 Figure 14-3 Use the Transpose option in the Paste Special dialog box to transpose a row of data into a ­column or a column of data into a row. Suppose you want to transpose the spreadsheet content in E4:H9 to a range beginning in cell E17. Begin by selecting the range E4:H9. Next, press Ctrl+C. Now move to the upper-left corner of the range where you want to put the transposed information (E17). Right-click and choose Paste Special, select Transpose, and then click OK. You’ll see that the content of E4:H9 is transposed (turned on its side), as shown in Figure 14-3. Note that in F20:J20, Excel was smart enough to adjust the points-per-game formula so that the average for each player is now computed from data in the same column instead of the same row. Note When you select Paste Special and click Paste Link instead of OK, the transposed cells are linked to the original cells, and changes you make to the original data are reflected in the copy. By changing the value in cell F5 to 7, the value in cell F18 becomes 7 as well, and cell F20 would display Dan’s average as 4 points per game. I’ve downloaded U.S. T-Bill interest rates from a website into Excel. The data displays a 5 when the interest rate is 5 percent, 8 when the interest rate is 8 percent, and so on. How can I easily divide my results by 100 so that a 5 percent interest rate, for example, is ­displayed as .05? The Paste Special Divide Before worksheet in the file Pastespecial.xlsx (see Figure 14-4) ­contains the annual rate of interest paid by three-month U.S. T-Bills for each month between January 1970 and February 1987. In January 1970, the annual rate on a three-month T-Bill was 8.01 percent. Suppose you want to earn annual interest on $1 invested at the current T-Bill rate. The formula to calculate the rate is (1+(annual rate)/100). It would be easier to compute earned interest if the column of annual interest rates were divided by 100. The Operations area of the Paste Special dialog box lets you add, subtract, multiply, or divide each number in a range by a given number, providing an easy way to divide each interest rate by 100. Here we want to divide each number in column D. To begin, I entered our 114 Microsoft Excel 2010: Data Analysis and Business Modeling ­ ivisor (100). You can enter it anywhere in the worksheet. I chose F5. (See Figure 14-4.) With d F5 selected, press Ctrl+C. You will see the “moving ants” surrounding cell F5. Next, select the range of numbers you want to modify. To select all the data in column D, click in cell D10 and press Ctrl+Shift and then the Down Arrow key. This shortcut is a useful trick for selecting a “tall” cell range. (To select a “wide” set of data listed in one row, move to the first data point and then press Ctrl+Shift and the Right Arrow key.) Next, right-click and choose Paste Special, and then select Divide in the Paste Special dialog box, as shown in Figure 14-5. Figure 14-4 Data for using the Divide option in the Paste Special dialog box to divide a data range by a constant. Figure 14-5 You can apply an option in the Operation area of the Paste Special dialog box to a range of cells. After you click OK, Excel divides each selected number in column D by 100. The results are shown in Figure 14-6. If you had selected Add, D10 would display 108.01; if you had selected Subtract, D10 would display –91.99; and if you had selected Multiply, D10 would display 801. Chapter 14 The Paste Special Command 115 Figure 14-6 Results of using the Divide option in the Paste Special dialog box. Problems 1. The file Mavs.xlsx contains statistics for the great 2002–2003 Dallas Mavericks ­basketball team. Player names are listed in column A, statistical categories are listed in row 3, and statistical results are listed in rows 4–20. Change the worksheet so that all player names are listed in the same row and all statistical categories are listed in the same column. 2. Field goal percentage, free throw percentage, and three-point percentage are listed as decimals. For example, Steve Nash made 91.9 percent of his free throws, which is listed as .919. Change the worksheet so that all shooting percentages are listed as a number from 1 through 100. 3. The file Productpaste.xlsx contains data on quarterly sales for four products. Copy this data to another range so that quarterly sales are read across instead of down. Link your copied data to the original data so that your computation of annual sales in the copied data range will reflect changes entered in rows 5–8. 4. The file Productsalespaste.xlsx contains sales of Products X, Y, and Z (in thousands of units). Convert this sales data to sales in actual units. Hint: Remember you can use the Ctrl key (as explained in Chapter 2, “Range Names”) to select a noncontiguous range of cells. Chapter 15 Three-Dimensional Formulas Questions answered in this chapter: ■ Is there an easy way to setup a multiple-worksheet workbook in which each ­worksheet has a similar structure? Can I easily create formulas that involve cells in multiple worksheets? ■ In many business situations you have to set up workbooks in which each worksheet has a similar format or structure. Here are some examples: ■ You want to track your company’s sales in each region of the country in a separate worksheet and then summarize total sales in a summary worksheet. ■ You want to track your company’s sales for each month in a separate worksheet and then summarize year-to-date sales in a summary worksheet. In this chapter, you will learn how to set up workbooks in which the individual worksheets have a similar structure. In this chapter I also discuss three-dimensional formulas, which allow you to easily write formulas to perform calculations on cells in multiple worksheets. Answers to This Chapter’s Questions Is there an easy way to setup a multiple-worksheet workbook in which each ­worksheet has a similar structure? Can I easily create formulas that involve cells in multiple worksheets? Let’s suppose you want to set up a workbook that contains a separate worksheet to track sales in each region (East, South, Midwest and West) of the U.S. You also want to summarize total sales in a summary worksheet. In each worksheet you want to track your product’s price, unit cost, and units sold as well as your fixed cost and profits. In the summary worksheet you want to track just total profit and units sold. You want your individual region ­worksheets to look like Figure 15-1. Figure 15-1 Sales in the East. 117 118 Microsoft Excel 2010: Data Analysis and Business Modeling To set up this structure, you enter in cell C3 of each worksheet the product price, in cell C4 the unit cost, in cell C5 the units sold, and in cell C6 the fixed cost. Then, in cell C7, you would compute the East region profit with the formula (C3-C4)*C5-C6. Of course, you want the same structure in the worksheets for the other regions. It turns out you need to enter the headings and formula in only one worksheet, and then Excel will automatically copy them to the other region’s worksheets. To begin, open a blank workbook, which by default contains three worksheets. By ­clicking the Insert Worksheet icon to the right of the last-named worksheet (or by pressing Shift+F11), insert two new worksheets so that your workbook contains five worksheets. Name the first four worksheets East, South, Midwest, and West. Name the last worksheet Summary. All sales will be totaled in the Summary worksheet. (By the way, if you select Options on the File tab and then choose General, you can change the number of worksheets included in a workbook by default.) To set up the regional worksheets, select the first worksheet (East) and then hold down the Shift key and select the last individual worksheet (West). Now, whatever you enter in the East worksheet is duplicated in the other regional worksheets. Simply type Price in cell B3, Unit Cost in cell B4, Units Sold in cell B5, Fixed Cost in cell B6, and Profit in cell B7. Finally, enter the formula (C3-C4)*C5-C6 in cell C7. Now click the last sheet to leave this data entry procedure. You will see that each regional worksheet has the same headings in Column B and the correct Profit formula in cell C7. You are now ready to use three-dimensional formulas to compute total units sold and profit. In cell C5, you will compute total units sold. Remember that you entered units sold for each region in cell C5. Move your cursor to cell C5 of the Summary worksheet where you want to compute total units sold. Type =SUM( and then move your cursor to the first cell you want to total (cell C5 of sheet East). Next, hold down the Shift key and click the last cell you want to total (cell C5 of worksheet West). Lastly, enter a right parentheses in the formula bar, and you will see entered in cell C5 of the Summary sheet the formula SUM(east:west!C5). This formula is an example of a three-dimensional formula. Most Excel formulas operate in two dimensions (rows and columns.) A three-dimensional formula operates in a third dimension: across worksheets. This formula tells Excel to sum cell C5 in all worksheets, starting with the East worksheet and ending with the West worksheet. Of course, if you wanted to, you could have simply typed this formula in cell C5 of the Summary worksheet. Copying this formula and pasting it to cell C7 of the Summary worksheet computes our company’s total profit. (See Figure 15-2.) In Chapter 47, “Consolidating Data,” you will learn how Excel’s Data Consolidate command can be used to summarize data from multiple worksheets or workbooks. Chapter 15 Three-Dimensional Formulas 119 Figure 15-2 Summarizing unit sales and profit. Problems 1. You own six local coffee shops. The revenues and customer count for each coffee shop are given in the following table. Shop Revenues Customer Count 1 $8,000 1,950 2 $7,000 1,800 3 $9,000 2,200 4 $8,400 2,000 5 $5,900 1,400 6 $10,100 2,500 Set up a workbook that makes it easy to enter revenue and customer count for each store and create a summary worksheet (using three-dimensional formulas) that ­computes total weekly revenue and customer count. Chapter 16 The Auditing Tool Questions answered in this chapter: ■ I’ve just been handed a five thousand–row worksheet that computes the net present value (NPV) of a new car. In the worksheet, my financial analyst made an assumption about the annual percentage of the growth in the product’s price. Which cells in the worksheet are affected by this assumption? ■ I think my financial analyst made an error computing Year 1 before-tax profit. Which cells in the worksheet model were used for this calculation? ■ How does the auditing tool work when I’m working with data in more than one ­worksheet or workbook? When we hear the word structure, we often think about the structure of a building. The structure of a worksheet model refers to the way input assumptions (data such as unit sales, price, and unit cost) are used to compute outputs of interest, such as NPV, profit, or cost. The Microsoft Excel 2010 auditing tool provides an easy method for documenting the structure of a worksheet, which makes understanding the logic underlying complex worksheet models easier. To view the auditing options in Excel, display the Formulas tab on the ribbon, and then view the Formula Auditing group. (See Figure 16-1.) Figure 16-1 The Formula Auditing toolbar. In this chapter, I discuss the Trace Precedents, Trace Dependents, and Remove Arrows ­commands. I discuss the Evaluate Formula command in Chapter 22, “The OFFSET Function.” Clicking Show Formulas serves as a switch that toggles the display of formulas in cells and the display of the values that result from the formulas. You can also press Ctrl+~ to toggle ­between showing formulas in cells and showing the formulas’ results. By using the Watch Window you can select a cell or cells and then, no matter where you are in the workbook, you will see how the value of the selected cells change. For example, after selecting the Watch Window you can select Add Watch and add a formula (say to cell C3 in Sheet 1). Now even if you are working in a different workbook, the Watch Window shows you how cell C3 of Sheet 1 changes. Trace Precedents and Trace Dependents locate and display precedents and dependents for worksheet cells or formulas. A precedent is any cell whose value is needed to compute 121 122 Microsoft Excel 2010: Data Analysis and Business Modeling a selected formula’s value. For example, if you were analyzing a direct mail campaign, you would make assumptions about the number of letters mailed and the response rate for the mailing. Then you could compute the number of responses as response rate*letters mailed. In this case, the response rate and total letters mailed are precedents of the cell containing the formula used to compute total responses. A dependent is any cell containing a formula whose values can’t be computed without knowledge of a selected cell. In the previous example, the cell containing the total number of responses is a dependent of the cell containing the response rate. Excel marks precedents and dependents with blue arrows when you use the Auditing tool. The Remove Arrows button clears the display of the arrows. Let’s apply the Auditing tool to some practical problems. Answers to This Chapter’s Questions I’ve just been handed a five thousand–row worksheet that computes the net present ­value (NPV) of a new car. In the worksheet, my financial analyst made an assumption about the annual percentage of the growth in the product’s price. Which cells in the worksheet are affected by this assumption? The Original Model worksheet in the file NPVaudit.xlsx contains calculations that compute the NPV of after-tax profits for a car expected to be available from the manufacturer for five years. (See Figure 16-2.) Price and cost are in thousands of dollars. The parameter values assumed for the analysis are given in cells C1:C8 (with associated range names listed in cells B1:B8). I’ve assumed that the price of the product will increase by three percent per year. Which cells in the worksheet are dependents of this assumption? Figure 16-2 You can use the Auditing tool to trace formulas in complex spreadsheets. To answer this question, select cell C8 (the cell containing the assumption of 3 percent price growth), and then click the Trace Dependents button in the Formula Auditing group on the Chapter 16 The Auditing Tool 123 Formulas tab. Excel displays the set of arrows shown in Figure 16-3 pointing to dependent cells. By clicking the Trace Dependents button once, Excel points to the cells that directly ­depend on the price growth assumption. In Figure 16-3, you can see that only the unit prices for Years 2–5 depend directly on this assumption. Clicking Trace Dependents repeatedly shows all formulas whose calculation requires the value for annual price growth, as shown in Figure 16-4. Figure 16-3 Tracing dependent cells. Figure 16-4 Clicking Trace Dependents repeatedly shows all the dependents of the price growth assumption. You can see that in addition to unit price in Years 2–5, the price growth assumption affects Years 2–5 revenue, before-tax profits, tax paid, after-tax profits, and NPV. You can remove the arrows by clicking the Remove Arrows button. 124 Microsoft Excel 2010: Data Analysis and Business Modeling I think my financial analyst made an error in computing Year 1 before-tax profit. Which cells in the worksheet model were used for this calculation? Now we want to find the precedents for cell B15. These precedents are the cells needed to compute Year 1 before-tax profit. Select cell B15, and then click the Trace Precedents button once. You’ll see the arrows shown in Figure 16-5. Figure 16-5 Direct precedents for Year 1 before-tax profit. As you can see, the cells directly needed to compute before-tax Year 1 profit are Year 1 ­revenues and Year 1 cost. (Before-tax Year 1 profit equals Year 1 revenue minus Year 1 cost.) Repeatedly clicking the Trace Precedents button yields all precedents of Year 1 before-tax profit, as shown in Figure 16-6. Figure 16-6 Click Trace Precedents repeatedly to show all precedents of Year 1 before-tax profit. Here the only input assumptions that influence Year 1 before-tax profit are Year 1 sales, Year 1 price, and Year 1 cost. Chapter 16 The Auditing Tool 125 How does the auditing tool work when I’m working with data in more than one ­worksheet or workbook? Consider the simple worksheet model in the workbook Audittwosheets.xlsx, shown in Figure 16-7. The formula in the Profit worksheet computes a company’s profit (unit sales*(price–variable cost)–fixed cost) from information contained in the Data worksheet. Figure 16-7 Data for using the Auditing tool on multiple worksheets. Suppose you want to know the precedents of the profit formula. Select cell D7 in the Profit worksheet, and then click Trace Precedents in the Formula Auditing group on the Formulas tab. You’ll see a dotted line, an arrow, and the worksheet icon shown in Figure 16-8. Figure 16-8 Results of tracing precedents with data on multiple worksheets. The worksheet icon indicates that the precedents of the profit formula lie in another ­worksheet. Double-clicking the dotted line displays the Go To dialog box, shown in Figure 16-9. Figure 16-9 With the Go To dialog box, you can audit data in multiple worksheets. Now you can click any of the listed precedents (cells D4:D7 in the Data worksheet), and Excel will send you to the precedent you selected. 126 Microsoft Excel 2010: Data Analysis and Business Modeling Problems ■ In the car NPV example, determine the following: ❑ The direct dependents and all dependents of the interest rate. ❑ The direct dependents and all dependents of the tax rate. ❑ The direct precedents and all precedents for Year 4 unit sales. ❑ The direct precedents and all precedents for Year 3 costs. Chapter 17 Sensitivity Analysis with Data Tables Questions answered in this chapter: ■ I’m thinking of starting a store in the local mall to sell gourmet lemonade. Before ­opening the store, I’m curious about how my profit, revenue, and variable costs will ­depend on the price I charge and the unit cost. ■ I am going to build a new house. The amount of money I need to borrow (with a 15-year repayment period) depends on the price for which I sell my current house. I’m also unsure about the annual interest rate I’ll receive when I close. Can I determine how my monthly payments will depend on the amount borrowed and the annual ­interest rate? ■ A major Internet company is thinking of purchasing another online retailer. The ­retailer’s current annual revenues are $100 million, with expenses of $150 million. Current projections indicate that the retailer’s revenues are growing at 25 percent per year and its expenses are growing at 5 percent per year. We know projections might be in error, however, and would like to know, for a variety of assumptions about annual revenue and expense growth, the number of years before the retailer will show a profit. Most worksheet models contain assumptions about certain parameters or inputs to the ­model. In our lemonade example, the inputs include: ■ The price for which a glass of lemonade is sold ■ The unit cost of producing a glass of lemonade ■ The sensitivity of demand for lemonade to price charged ■ The annual fixed cost of running a lemonade stand Based on input assumptions, you can compute outputs of interest. For the lemonade ­example, the outputs of interest might include: ■ Annual profit ■ Annual revenue ■ Annual variable cost Despite best intentions, assumptions about input values can be in error. For example, your best guess about the variable cost of producing a glass of lemonade might be $0.45, but it’s possible that your assumption is in error. Sensitivity analysis determines how a spreadsheet’s outputs vary in response to changes to its inputs. For example, you might want to see how a change in product price affects yearly profit, revenue, and variable cost. A data table in Microsoft Excel 2010 lets you easily vary one or two inputs and perform a sensitivity analysis. 127 128 Microsoft Excel 2010: Data Analysis and Business Modeling With a one-way data table, you can determine how changing one input changes any number of outputs. With a two-way data table, you can determine how changing two inputs changes a single output. This chapter’s three examples will show how easy it is to use a data table and obtain meaningful sensitivity results. Answers to This Chapter’s Questions I’m thinking of starting a store in the local mall to sell gourmet lemonade. Before ­opening the store, I’m curious about how my profit, revenue, and variable costs will ­depend on the price I charge and the unit cost. The work required for this analysis is in the file Lemonade.xlsx. (See Figures 17-1, 17-2, and 17-4.) The input assumptions are given in the range D1:D4. I assume that annual demand for lemonade (see the formula in cell D2) equals 65000–9000*price. (Chapter 79, “Estimating a Demand Curve,” contains a discussion of how to estimate a demand curve.) I’ve created the names in C1:C7 to correspond to cells D1:D7. I computed annual revenue in cell D5 with the formula demand*price. In cell D6, I computed the annual variable cost with the formula unit_cost*demand. Finally, in cell D7, I computed profit by using the formula revenue–fixed_cost–variable_cost. Figure 17-1 The inputs that change the profitability of a lemonade store. Suppose that I want to know how changes in price (for example, from $1.00 through $4.00 in $0.25 increments) affect annual profit, revenue, and variable cost. Because I’m c­ hanging only one input, a one-way data table will solve the problem. The data table is shown in Figure 17-2. Chapter 17 Sensitivity Analysis with Data Tables 129 Figure 17-2 One-way data table with varying prices. To set up a one-way data table, begin by listing input values in a column. I listed the prices of interest (ranging from $1.00 through $4.00 in $0.25 increments) in the range C11:C23. Next, I moved over one column and up one row from the list of input values, and there I listed the formulas I want the data table to calculate. I entered the formula for profit in cell D10, the formula for revenue in cell E10, and the formula for variable cost in cell F10. Now select the table range (C10:F23). The table range begins one row above the first input; its last row is the row containing the last input value. The first column in the table range is the column containing the inputs; its last column is the last column containing an output. After selecting the table range, display the Data tab on the ribbon. In the Data Tools group, click What-If Analysis, and then click Data Table. Now fill in the Data Table dialog box as shown in Figure 17-3. Figure 17-3 Creating a data table. For the column input cell, you use the cell in which you want the listed inputs—that is, the values listed in the first column of the data table range—to be assigned. Because the listed inputs are prices, I chose D1 as the column input cell. After you click OK, Excel creates the one-way data table shown in Figure 17-4. 130 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 17-4 One-way data table with varying prices. In the range D11:F11, profit, revenue, and variable cost are computed for a price of $1.00. In cells D12:F12, profit, revenue, and variable cost are computed for a price of $1.25, and on through the range of prices. The profit-maximizing price among all listed prices is $3.75. A price of $3.75 would produce an annual profit of $58,125.00, annual revenue of $117,187.50, and an annual variable cost of $14,062.50. Suppose I want to determine how annual profit varies as price varies from $1.50 through $5.00 (in $0.25 increments) and unit cost varies from $0.30 through $0.60 (in $0.05 increments). Because here I’m changing two inputs, I need a two-way data table. (See Figure 17-5.) I list the values for one input down the first column of the table range (I’m using the range H11:H25 for the price values) and the values for the other input in the first row of the table range. (In this example, the range I10:O10 holds the list of unit cost values.) A two-way data table can have only one output cell, and the formula for the output must be placed in the upper-left corner of the table range. Therefore, I placed the profit formula in cell H10. Figure 17-5 A two-way data table showing profit as a function of price and unit variable cost. Chapter 17 Sensitivity Analysis with Data Tables 131 I select the table range (cells H10:O25) and display the Data tab. In the Data Tools group, I click What-If Analysis and then click Data Table. Cell D1 (price) is the column input cell, and cell D3 (unit variable cost) is the row input cell. These settings ensure that the values in the first column of the table range are used as prices, and the values in the first row of the table range are used as unit variable costs. After clicking OK, we see the two-way data table shown in Figure 17-5. As an example, in cell K19, when we charge $3.50 and the unit variable cost is $0.40, the annual profit equals $58,850.00. For each unit cost, I’ve highlighted the profitmaximizing price. Note that as the unit cost increases, the profit-maximizing price increases as some of the cost increase is passed on to customers. Of course, I can only guarantee that the profit-maximizing price in the data table is within $0.25 of the actual profit-maximizing price. When you learn about the Excel Solver in Chapter 79, you’ll learn how to determine (to the penny) the exact profit-maximizing price. Here are some other notes on this problem: ■ As you change input values in a worksheet, the values calculated by a data table change, too. For example, if you increased fixed cost by $10,000, all profit numbers in the data table would be reduced by $10,000. ■ You can’t delete or edit a portion of a data table. If you want to save the values in a data table, select the table range, copy the values, and then right-click and select Paste Special. Then choose Values from the Paste Special menu. If you take this step, however, changes to your worksheet inputs no longer cause the data table calculations to update. ■ When setting up a two-way data table, be careful not to mix up your row and column input cells. A mix-up will cause nonsensical results. ■ Most people set their worksheet calculation mode to Automatic. With this setting, any change in your worksheet will cause all your data tables to be recalculated. Usually, you want this, but if your data tables are large, automatic recalculation can be incredibly slow. If the constant recalculation of data tables is slowing your work down, click the File tab on the ribbon, click Options, and then click the Formulas tab. Then select Automatic Except For Data Tables. When Automatic Except For Data Tables is ­selected, all your data tables recalculate only when you press the F9 (recalculation) key. Alternatively, you can click the Calculation Options button (in the Calculation group on the Formulas tab) and then click Automatic Except For Data Tables. I am going to build a new house. The amount of money I need to borrow (with a 15-year repayment period) depends on the price for which I sell my current house. I’m also unsure about the annual interest rate I’ll receive when I close. Can I determine how my monthly payments will depend on the amount borrowed and the annual interest rate? The real power of data tables becomes evident when you combine a data table with one of the Excel functions. In this example, we’ll use a two-way data table to vary two inputs (the amount borrowed and the annual interest rate) to the Excel PMT function and determine 132 Microsoft Excel 2010: Data Analysis and Business Modeling how the monthly payment varies as these inputs change. (The PMT function is discussed in detail in Chapter 10, “More Excel Financial Functions.”) Our work for this example is in the file Mortgagedt.xlst, shown in Figure 17-6. Suppose you’re borrowing money on a 15-year mortgage, where monthly payments are made at the end of each month. I’ve input the amount borrowed in cell D2, the number of months in the mortgage (180) in D3, and annual interest rate in D4. I’ve associated the range names in cells C2:C4 with the cells D2:D4. Based on these inputs, I compute the monthly payment in D5 with the formula -PMT(Annual_int_rate/12,Number_of_Months,Amt_Borrowed). Figure 17-6 You can use a data table to determine how mortgage payments vary as the amount borrowed and the interest rate change. You think that the amount borrowed will range (depending on the price for which you sell your current house) between $300,000 and $650,000 and that your annual interest rate will range between 5 percent and 8 percent. In preparation for creating a data table, I entered the amounts borrowed in the range C8:C15 and possible interest rate values in the range D7:J7. Cell C7 contains the output you want to recalculate for various input combinations. Therefore, I set cell C7 equal to cell D5. Next I select the table range (C7:J15), click What-If Analysis on the Data tab, and then click Data Table. Because numbers in the first column of the table range are amounts borrowed, the column input cell is D2. Numbers in the first row of the table are annual interest rates, so our row input cell is D4. After you click OK, you see the data table shown in Figure 17-6. This table shows, for example, that if you borrow $400,000 at an annual rate of 6 percent, your monthly payments would be just over $3,375. The data table also shows that at a low interest rate (for example, 5 percent), an increase of $50,000 in the amount borrowed raises the monthly payment by around $395, whereas at a high interest rate (such as 8 percent), an increase of $50,000 in the amount borrowed raises the monthly payment by about $478. A major Internet company is thinking of purchasing another online retailer. The r­ etailer’s current annual revenues are $100 million, with expenses of $150 million. Current ­projections indicate that the retailer’s revenues are growing at 25 percent per year and its expenses are growing at 5 percent per year. We know projections might be in error, ­however, and we would like to know, for a variety of assumptions about annual revenue and expense growth, the number of years before the retailer will show a profit. Chapter 17 Sensitivity Analysis with Data Tables 133 We want to determine the number of years needed to break even, using annual growth rates in revenue from 10 percent through 50 percent and annual expense growth rates from 2 percent through 20 percent. Let’s also assume that if the firm cannot break even in 13 years, we’ll say “cannot break even.” Our work is in the file Bezos.xlsx, shown in Figures 17-7 and 17-8. I chose to hide columns A and B and rows 16–18. To hide columns A and B, first select any cells in columns A and B (or select the column headings), and then display the Home tab. In the Cells group, click Format, point to Hide & Unhide, and select Hide Columns. To hide rows 16–18, select any cells in those rows (or select the row headings) and repeat the previous procedure, selecting Hide Rows. Of course, the Format Visibility options also include Unhide Rows and Unhide Columns. If you receive a worksheet with many hidden rows and columns and want to quickly unhide all of them, you can select the entire worksheet by clicking the Select All button at the intersection of the column and row headings. Now selecting Unhide Rows and/or Unhide Columns will unhide all hidden rows and/or columns in the worksheet. In row 11, I project the firm’s revenue out 13 years (based on the annual revenue growth rate assumed in E7) by copying from F11 to G11:R11 the formula E11*(1+$E$7). In row 12, I project the firm’s expenses out 13 years (based on the annual expense growth rate assumed in E8) by copying from F12 to G12:R12 the formula E12*(1+$E$8). (See Figure 17-7.) Figure 17-7 You can use a data table to calculate how many years it will take to break even. We would like to use a two-way data table to determine how varying the growth rates for revenues and expenses affects the years needed to break even. We need one cell whose value always tells us the number of years needed to break even. Because we can break even during any of the next 13 years, this might seem like a tall order. I begin by using in row 13 an IF statement for each year to determine whether we break even during the year. The IF statement returns the number of the year if we break even during the year or 0 otherwise. I determine the year we break even in cell E15 by simply adding together all the numbers in row 13. Finally, I can use cell E15 as the output cell for a two-way data table. I copy from cell F13 to G13:R13 the formula IF(AND(E11<E12,F11>F12),F10,0). This formula reflects the fact that we break even for the first time during a year if, and only if, during the previous year, revenues are less than expenses and during the current year, revenues are greater than expenses. If this is the case, the year number is entered in row 13; otherwise, 0 is entered. 134 Microsoft Excel 2010: Data Analysis and Business Modeling Now, in cell E15 I can determine the breakeven year (if any) with the formula IF(SUM(F13:R13)>0,SUM(F13:R13),”No BE”). If we do not break even during the next 13 years, the formula enters the text string “No BE”. I now enter the annual revenue growth rates (10 percent through 50 percent) in the range E21:E61. I enter annual expense growth rates (2 percent to 20 percent) in the range F20:X20. I ensure that the year-of-breakeven formula is copied to cell E20 with the formula =E15. Next, I select the table range E20:X61, click What-If Analysis on the Data tab, and then click Data Table. I select cell E7 (revenue growth rate) as the column input cell and cell E8 (expense growth rate) as the row input cell. With these settings, I obtain the two-way data table shown in Figure 17-8. Figure 17-8 A two-way data table. Note, for example, that if expenses grow at 4 percent a year, a 10-percent annual growth in revenue will result in breaking even in eight years, whereas a 50-percent annual growth in revenue will result in breaking even in only two years! Also note that if expenses grow at 12 percent per year and revenues grow at 14 percent per year, we will not break even by the end of 13 years. Problems 1. You’ve been assigned to analyze the profitability of Bill Clinton’s autobiography. The following assumptions have been made: ❑ Bill is receiving a one-time royalty payment of $12 million. ❑ The fixed cost of producing the hardcover version of the book is $1 million. ❑ The variable cost of producing each hardcover book is $4. ❑ The publisher’s net from book sales per hardcover unit sold is $15. ❑ The publisher expects to sell 1 million hardcover copies. ❑ The fixed cost of producing the paperback is $100,000. ❑ The variable cost of producing each paperback book is $1. ❑ The publisher’s net from book sales per paperback unit sold is $4. ❑ Paperback sales will be double hardcover sales. Chapter 17 Sensitivity Analysis with Data Tables 135 Use this information to answer the following questions. ❑ Determine how the publisher’s before-tax profit will vary as hardcover sales vary from 100,000 through 1 million copies. ❑ Determine how the publisher’s before-tax profit varies as hardcover sales vary from 100,000 through 1 million copies and the ratio of paperback to hardcover sales varies from 1 through 2.4. 2. The annual demand for a product equals 500-3p+10a.5, where p is the price of the product in dollars and a is hundreds of dollars spent on advertising the product. The annual fixed cost of selling the product is $10,000, and the unit variable cost of producing the product is $12. Determine a price (within $10) and amount of advertising (within $100) that maximizes profit. 3. Reconsider our hedging example from Chapter 12, “IF Statements.” For stock prices in six months that range from $20 through $65 and the number of puts purchased ­varying from 0 through 100 (in increments of 10), determine the percentage return on your portfolio. 4. For our mortgage example, suppose you know the annual interest rate will be 5.5 percent. Create a table that shows for amounts borrowed from $300,000 through $600,000 (in $50,000 increments) the difference in payments between a 15-year, 20-year, and 30-year mortgage. 5. Currently, you sell 40,000 units of a product for $45 each. The unit variable cost of ­producing the product is $5. You are thinking of cutting the product price by 30 ­percent. You are sure this will increase sales by an amount from 10 percent through 50 percent. Perform a sensitivity analysis to show how profit will change as a function of the percentage increase in sales. Ignore fixed costs. 6. Let’s assume that at the end of each of the next 40 years, you put the same amount in your retirement fund and earn the same interest rate each year. Show how the amount of money you will have at retirement changes as you vary your annual contribution from $5,000 through $25,000 and the rate of interest varies from 3 percent through 15 percent. 7. The payback period for a project is the number of years needed for a project’s future profits to pay back the project’s initial investment. A project requires a $300 million investment at Time 0. The project yields profit for 10 years, and Time 1 cash flow will be between $30 million and $100 million. Annual cash flow growth will be from 5 percent through 25 percent a year. How does the project payback depend on the Year 1 cash flow and cash flow growth rates? 8. A software development company is thinking of translating a software product into Swahili. Currently, 200,000 units of the product are sold per year at a price of $100 each. Unit variable cost is $20. The fixed cost of translation is $5 million. Translating the product into Swahili will increase sales during each of the next three years by some 136 Microsoft Excel 2010: Data Analysis and Business Modeling unknown percentage over the current level of 200,000 units. Show how the change in profit resulting from the translation depends on the percentage increase in product sales. You can ignore the time value of money and taxes in your calculations. 9. The file Citydistances.xlsx gives latitude and longitude for several U.S. cities. There is also a formula that determines the distance between two cities by using a given ­latitude and longitude. Create a table that computes the distance between any pair of cities listed. 10. You have begun saving for your child’s college education. You plan to save $5,000 per year, and want to know for annual rates of return on your investment from 4 percent through 12 percent the amount of money you will have in the college fund after saving for 10–15 years. 11. If you earn interest at percentage rate r per year and compound your interest n times per year, then in y years $1 will grow to (1+(r/n))ny dollars. Assuming a 10 percent ­annual interest rate, create a table showing the factor by which $1 will grow in 5–15 years for daily, monthly, quarterly, and semiannual compounding. 12. Assume I have $100 in the bank. Each year, I withdraw x percent (ranging from 4 ­percent through 10 percent) of my original balance. For annual growth rates of 3 ­percent through 10 percent per year, determine how many years it will take before I run out of money. Hint: You should use the IFERROR function (discussed in Chapter 12) because if my annual growth rate exceeds the withdrawal rate, I will never run out of money. 13. If you earn interest at an annual rate of x percent per year, then in n years $1 will ­become (1+x)n dollars. For annual rates of interest from 1 percent through 20 percent, determine the exact time (in years) in which $1 will double. 14. You are borrowing $200,000 and making payments at the end of each month. For an annual interest rate ranging from 5 percent through 10 percent and loan durations of 10, 15, 20, 25, and 30 years, determine the total interest paid on the loan. 15. You are saving for your child’s college fund. You are going to contribute the same amount of money to the fund at the end of each year. Your goal is to end up with $100,000. For annual investment returns ranging from 4 percent through 15 percent and number of years investing varying from 5–15 years, determine your required ­annual contribution. 16. The file Antitrustdata.xlsx gives the starting and ending years for many court cases. Determine the number of court cases active during each year. 17. You can retire at age 62 and receive $8,000 per year or retire at age 65 and receive $10,000 per year. What is the difference (in today’s dollars) between these two choices as you vary the annual rate at which you discount cash flows between 2 percent and 10 percent and vary age of death between 70 and 84? Chapter 18 The Goal Seek Command Questions answered in this chapter: ■ For a given price, how many glasses of lemonade does a lemonade store need to sell per year to break even? ■ We want to pay off our mortgage in 15 years. The annual interest rate is 6 percent. The bank told us we can afford monthly payments of $2,000. How much can we borrow? ■ I always had trouble with “story problems” in high school algebra. Can Excel make ­solving story problems easier? The Goal Seek feature in Microsoft Excel 2010 enables you to compute a value for a ­worksheet input that makes the value of a given formula match the goal you specify. For ­example, in the lemonade store example in Chapter 17, “Sensitivity Analysis with Data Tables,” suppose you have fixed overhead costs, fixed per-unit costs, and a fixed sales price. Given this information, you can use Goal Seek to calculate the number of glasses of lemonade you need to sell to break even. Essentially, Goal Seek embeds a powerful equation solver in your worksheet. To use Goal Seek, you need to provide Excel with three pieces of information: ■ Set Cell Specifies that the cell contains the formula that calculates the information you’re seeking. In the lemonade example, the Set Cell would contain the formula for profit. ■ To Value Specifies the numerical value for the goal that’s calculated in the Set Cell. In the lemonade example, because we want to determine the sales volume that represents the breakeven point, the To Value would be 0. ■ By Changing Cell Specifies the input cell that Excel changes until the Set Cell ­calculates the goal defined in the To Value cell. In the lemonade example, the By Changing Cell would contain annual lemonade sales. Answers to This Chapter’s Questions For a given price, how many glasses of lemonade does a lemonade store need to sell per year to break even? The work for this section is in the file Lemonadegs.xlsx, which is shown in Figure 18-1. As in Chapter 17, I’ve assumed an annual fixed cost of $45,000.00 and a variable unit cost of $0.45. Let’s assume a price of $3.00. The question is how many glasses of lemonade do I need to sell each year to break even. 137 138 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 18-1 We’ll use this data to set up the Goal Seek feature to perform a breakeven analysis. To start, insert any number for demand in cell D2. In the What-If Analysis group on the Data tab, click Goal Seek. Now fill in the Goal Seek dialog box as shown in Figure 18-2. Figure 18-2 The Goal Seek dialog box filled in with entries for a breakeven analysis. The dialog box indicates that I want to change cell D2 (annual demand, or sales) until cell D7 (profit) hits a value of 0. After I click OK, I get the result that’s shown in Figure 18-1. If I sell approximately 17,647 glasses of lemonade per year (or 48 glasses per day), I’ll break even. To find the value I’m seeking, Excel varies the demand in cell D2 (alternating between high and low values) until it finds a value that makes profit equal $0. If a problem has more than one solution, Goal Seek will still display only one answer. We want to pay off our mortgage in 15 years. The annual interest rate is 6 percent. The bank told us we can afford monthly payments of $2,000. How much can we borrow? You can begin to answer this question by setting up a worksheet to compute the monthly payments on a 15-year loan (let’s assume payments at the end of the month) as a function of the annual interest rate and a trial loan amount. You can see the work I did in the file Paymentgs.xlsx and in Figure 18-3. In cell E6, the formula –PMT(annual_int_rate/12,years,amt._borrowed) computes the monthly payment associated with the amount borrowed, which is listed in cell E5. Filling in the Goal Seek dialog box as shown in Figure 18-4 calculates the amount borrowed that results in monthly payments equal to $2,000. With a limit of $2,000 for monthly payments, you can borrow up to $237,007.03. Chapter 18 The Goal Seek Command 139 Figure 18-3 You can use data such as this with the Goal Seek feature to determine the amount you can ­borrow based on a set monthly payment. Figure 18-4 The Goal Seek dialog box set up to calculate the mortgage example. I always had trouble with “story problems” in high school algebra. Can Excel make solving story problems easier? If you think back to high school algebra, most story problems required you to choose a variable (usually it was called x) that solved a particular equation. Goal Seek is an equation solver, so it’s perfectly suited to solving story problems. Here’s a typical high school algebra problem: Maria and Edmund have a lover’s quarrel while honeymooning in Seattle. Maria storms into her Mazda Miata and drives 64 miles per hour toward her mother’s home in Los Angeles. Two hours after Maria leaves, Edmund jumps into his BMW in hot pursuit, driving 80 miles per hour. How many miles will each person have traveled when Edmund catches Maria? You can find the solution in the file Maria.xlsx, shown in Figure 18-5. Figure 18-5 Goal Seek can help you solve story problems. The Set Cell will be the difference between the distances Maria and Edmund have traveled. You can set this to a value of 0 by changing the number of hours Maria drives. Of course, Edmund drives two hours less than Maria. 140 Microsoft Excel 2010: Data Analysis and Business Modeling I entered a trial number of hours that Maria drives in cell D2. Then I associated the range names in the cell range C2:C8 with cells D2:D8. Because Edmund drives two fewer hours than Maria, in cell D4 I entered the formula Time_Maria_drives–2. In cells D6 and D7, I used the fact that distance=speed*time to compute the total distance Maria and Edmund travel. The difference between the distances traveled by Edmund and Maria is computed in cell D8 with the formula Maria_distance–Edmund_distance. Now I can fill in the Goal Seek dialog box as shown in Figure 18-6. Figure 18-6 The Goal Seek dialog box filled in to solve an algebra story problem. I change Maria’s hours of driving (cell D2) until the difference between the miles traveled by Edmund and Maria (cell D8) equals 0. As you can see, after Maria drives 10 hours and Edmund 8 hours, they will each have driven a distance of 640 miles. Problems 1. From Problem 1 in Chapter 17, determine how many hardcover books must be sold to break even. 2. From the car net present value (NPV) example in Chapter 16, “The Auditing Tool,” by what rate do annual sales need to grow for total NPV to equal $1 million? 3. What value of Year 1 unit cost would increase our NPV in the car example in Chapter 16 to $1 million? 4. In our mortgage example, suppose I need to borrow $200,000 for 15 years. If my ­maximum payments are limited to $2,000 per month, how high an annual interest rate can I tolerate? 5. How could I use Goal Seek to determine a project’s internal rate of return (IRR)? 6. At the end of each of the next 40 years, I’m going to put $20,000 in my retirement fund. What rate of return on my investments do I need so that I will have $2 million available for retirement in 40 years? 7. I expect to earn 10 percent per year on my retirement investments. At the end of each of the next 40 years, I want to put the same amount of money in my retirement portfolio. How much money do I need to put in each year if I want to have $2 million in my account when I retire? Chapter 18 The Goal Seek Command 141 8. Consider two projects with the following cash flows: Year 1 Year 2 Year 3 Year 4 Project 1 –$1,000 $400 $350 $400 Project 2 –$900 $100 $100 $1,000 For what rate of interest will Project 1 have a larger NPV? (Hint: Find the interest rate that makes both projects have the same NPV.) 9. I am managing a conference at my college. My fixed costs are $15,000. I must pay the 10 speakers $700 each, and the college union $300 per conference participant for food and lodging costs. I am charging each conference participant who is not also a speaker $900, which includes the conference fee and their food and lodging costs. How many paid registrants need to attend for me to break even? 10. I am buying 40 pounds of candy. Some of the candy sells for $10 per pound and some sells for $6 per pound. How much candy at each price should I buy to result in an ­average cost of $7 per pound? 11. Three electricians are wiring my new home. Electrician 1 by himself will need 11 days to do the job. Electrician 2 by himself will need 5 days to do the job. Electrician 3 by herself will need 9 days to do the job. If all three electricians work on the job, how long will the job take to complete? 12. To celebrate the Lewis and Clark Expedition, I am traveling 40 miles upstream and then 40 miles downstream in a canoe. The speed of the river current is 5 miles per hour. If the trip takes me 5 hours total, how fast do I travel if the river has no current? 13. In the NPV.xlsx file in Chapter 8, “Evaluating Investments by Using Net Present Value Criteria,” we found that for high interest rates Project 1 has a larger NPV and for small interest rates Project 2 has a larger NPV. For what interest rate would the two projects have the same NPV? Chapter 19 Using the Scenario Manager for Sensitivity Analysis Question answered in this chapter: ■ I’d like to create best, worst, and most-likely scenarios for the sales of an automobile by varying the values of Year 1 sales, annual sales growth, and Year 1 sales price. Data tables for sensitivity analysis allow me to vary only one or two inputs, so I can’t use a data table. Does Excel have a tool I can use to vary more than two inputs in a sensitivity analysis? You can use the Scenario Manager to perform sensitivity analysis by varying as many as 32 input cells. With the Scenario Manager, you first define the set of input cells you want to vary. Next, you name your scenario and enter for each scenario the value of each input cell. Finally, you select the output cells (also called result cells) that you want to track. The Scenario Manager then creates a beautiful report containing the inputs and the values of the output cells for each scenario. Answer to This Chapter’s Question I’d like to create best, worst, and most-likely scenarios for the sales of an automobile by varying the values of Year 1 sales, annual sales growth, and Year 1 sales price. Data tables for sensitivity analysis allow me to vary only one or two inputs, so I can’t use a data table. Does Excel have a tool I can use to vary more than two inputs in a sensitivity analysis? Suppose you want to create the following three scenarios related to the net present value (NPV) of a car, using the example in Chapter 16, “The Auditing Tool.” Best case Year 1 sales Annual sales growth Year 1 sales price $20,000 20% $10.00 Most likely case $10,000 10% $7.50 Worst case $5,000 2% $5.00 For each scenario, you want to look at the firm’s NPV and each year’s after-tax profit. The work is in the file NPVauditscenario.xlsx. Figure 19-1 shows the worksheet model (contained in the Original Model worksheet), and Figure 19-2 shows the scenario report (contained in the Scenario Summary worksheet). 143 144 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 19-1 The data on which the scenarios are based. Figure 19-2 The scenario summary report. To begin defining the best-case scenario, display the Data tab, and then click Scenario Manager on the What-If Analysis menu in the Data Tools group. Then click the Add button, and fill in the Add Scenario dialog box as shown in Figure 19-3. Chapter 19 Using the Scenario Manager for Sensitivity Analysis 145 Figure 19-3 Data inputs for the best-case scenario. Enter a name for the scenario (Best), and select C2:C4 as the input cells containing the values that define the scenario. After you click OK in the Add Scenario dialog box, fill in the Scenario Values dialog box with the input values that define the best case, as shown in Figure 19-4. Figure 19-4 Defining the input values for the best-case scenario. By clicking Add in the Scenario Values dialog box, you can enter the data for the most-likely and worst-case scenarios. After entering data for all three scenarios, click OK in the Scenario Values dialog box. The Scenario Manager dialog box, shown in Figure 19-5, lists the scenarios I created. When you click Summary in the Scenario Manager dialog box, you can choose the result cells that will be displayed in scenario reports. Figure 19-6 shows how I indicated in the Scenario Summary dialog box that I want the scenario summary report to track each year’s after-tax profit (cells B17:F17) as well as total NPV (cell B19). 146 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 19-5 The Scenario Manager dialog box displays each scenario you define. Figure 19-6 Use the Scenario Summary dialog box to select the result cells for the summary report. Because the result cells come from more than one range, I separated the ranges B17:F17 and B19 with a comma. (I could also have used the Ctrl key to select and enter multiple ranges.) After selecting Scenario Summary (instead of the PivotTable option), click OK, and Excel creates the beautiful Scenario Summary report pictured earlier in Figure 19-2. Notice that Excel includes a column, labeled Current Values, for the values that were originally placed in the worksheet. The worst case loses money (a loss of $13,345.75), whereas the best case is quite profitable (a profit of $226,892.67). Because the worst-case price is less than our variable cost, the worst case loses money in each year. Remarks ■ The Scenario PivotTable Report option on the Scenario Summary dialog box presents the scenario results in a PivotTable format. ■ Suppose you select a scenario in the Scenario Manager dialog box and then click the Show button. The input cells’ values for the selected scenario then appear in the worksheet, and Excel recalculates all formulas. This tool is great for presenting a “slide show” of your scenarios. Chapter 19 Using the Scenario Manager for Sensitivity Analysis 147 ■ It’s hard to create a lot of scenarios with the Scenario Manager because you need to input each individual scenario’s values. Monte Carlo simulation (see Chapter 69, “Introduction to Monte Carlo Simulation”) makes it easy to create many scenarios. Using the Monte Carlo simulation method, you can find information such as the ­probability that the NPV of a project’s cash flows is nonnegative—an important measure because it is the probability that the project adds value to the company. ■ Clicking the minus (–) sign in row 5 of the Scenario Summary report hides the Assumption cells and show only results. Clicking the plus (+) sign restores the full report. ■ Suppose you send a file to several people, and each adds his or her own scenarios. After each person returns the file containing the scenarios to you, you can merge all the scenarios into one workbook by opening each person’s version of the workbook, clicking the Merge button in the Scenario Manager dialog box in the original workbook, and then selecting the workbooks containing the scenarios you want to merge. Excel merges the selected scenarios in the original workbook. Problems 1. Delete the best-case scenario and run another scenario report. 2. Add a scenario named High Price, in which Year 1 price equals $15 and the other two inputs remain at their most-likely values. 3. For the lemonade stand example in Chapter 17, “Sensitivity Analysis with Data Tables,” use the Scenario Manager to display a report summarizing profit for the following scenarios: Scenario Price Unit cost Fixed cost High cost/high price $5.00 $1.00 $65,000.00 Medium cost/medium price $4.00 $0.75 $45,000.00 Low cost/low price $2.50 $0.40 $25,000.00 4. For the mortgage payment example in Chapter 17, use the Scenario Manager to create a report tabulating monthly payments for the following scenarios: Scenario Amount borrowed Annual rate Number of monthly payments Lowest payment $300,000 4% 360 Most-likely payment $400,000 6% 240 Highest payment $550,000 8% 180 Chapter 20 The COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions Questions answered in this chapter: ■ Suppose I have a list of songs that were played on the radio. For each song, I know the singer, the date the song was played, and the length of the song. How can I answer questions such as these about the songs in the list: ❑ How many were sung by each singer? ❑ How many were not sung by my favorite singer? ❑ How many were at least four minutes long? ❑ How many were longer than the average length of all songs on the list? ❑ How many were sung by singers whose last names begin with S? ❑ How many were sung by singers whose last names contain exactly six letters? ❑ How many were played after June 15, 2005? ❑ How many were played before 2009? ❑ How many were exactly four minutes long? ❑ How many were sung by my favorite singer and were exactly four minutes long? ❑ How many were sung by my favorite singer and were three to four minutes long? In a more general context, how do I perform operations such as the following: ■ Count the number of cells in a range containing numbers. ■ Count the number of blank cells in a range. ■ Count the number of nonblank cells in a range. You often need to count the number of cells in a range that meet a given criterion. For ­example, if a worksheet contains information about makeup sales, you might want to count the number of sales transactions made by the salesperson named Jennifer or the number of sales transactions that occurred after June 10. The COUNTIF function lets you count the number of cells in a range that meet criteria that are defined on the basis of a one row or column of the worksheet. 149 150 Microsoft Excel 2010: Data Analysis and Business Modeling The syntax of the COUNTIF function is COUNTIF(range,criterion). ■ Range is the range of cells in which you want to count cells meeting a given criterion. ■ Criterion is a number, date, or expression that determines whether to count a given cell in the range. The syntax of COUNTIFS is COUNTIFS(range1,criterion1,range2,criterion2,…,range_n,criterion_n). COUNTIFS counts the number of rows for which the range1 entry meets criterion1, the range2 entry meets criterion2, the range_n entry meets criterion_n, and so on. Thus, COUNTIFS allows the criteria to involve more than one column or multiple conditions in one column. Other functions that allow for multiple criteria are discussed in Chapter 21, “The SUMIF, AVERAGEIF, SUMIFS, and AVERAGEIFS Functions,” and Chapter 45, “Summarizing Data with Database Statistical Functions.” The key to using the COUNTIF function (and similar functions) successfully is u ­ nderstanding the wide variety of criteria that Excel accepts. The types of criteria you can use are best ­explained through the use of examples. In addition to examples of the COUNTIF function, I’ll provide examples of the COUNT, COUNTA, and COUNTBLANK functions: ■ The COUNT function counts the number of cells in a range containing numbers. ■ The COUNTA function counts the number of nonblank cells in a range. ■ The COUNTBLANK function counts the number of blank cells in a range. As an illustration of how to use these functions, consider a database that gives the following information for each song played on radio station WKRP: ■ The singer ■ The date the song was played ■ The length of the song The file Rock.xlsx, shown in Figure 20-1, shows a subset of the data. Chapter 20 The COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions 151 Figure 20-1 The song database used for the COUNTIF examples. Answers to This Chapter’s Questions How many songs were sung by each singer? To begin, I selected the first row of the database, the range D6:G6. Then I selected the whole database by pressing Ctrl+Shift+Down Arrow. Next, in the Defined Names group on the Formulas tab, I clicked Create From Selection and then chose Top Row. This names the range D7:D957 Song Numb, the range E7:E957 Singer, the range F7:F957 Date, and the range G7:G957 Minutes. To determine how many songs were sung by each singer, you copy from C5 to C6:C12 the formula COUNTIF(Singer,B5). In cell C5, this formula now displays the number of cells in the range Singer that match the value in B5 (Eminem). The database contains 114 songs sung by Eminem. Similarly, Cher sang 112 songs, and so on, as you can see in Figure 20-2. I could have also found the number of songs sung by Eminem with the formula COUNTIF(Singer,”Eminem”). Note that you must enclose text such as Eminem in quotation marks (“ “) and that criteria are not case sensitive. Figure 20-2 Using COUNTIF to determine how many songs were sung by each singer. 152 Microsoft Excel 2010: Data Analysis and Business Modeling How many songs were not sung by Eminem? To solve this problem, you need to know that Excel interprets the character combination <> as “not equal to.” The formula COUNTIF(Singer,”<>Eminem”), entered in cell C15, tells you that 837 songs in the database were not sung by Eminem, as you can see in Figure 20-3. I need to enclose <>Eminem in quotation marks because Excel treats the not equal to (<>) character combination as text and Eminem is, of course, text. You could obtain the same r­esult by using the formula COUNTIF(Singer,”<>”&B5), which uses the ampersand (&) symbol to concatenate the reference to cell B5 and the <> operator. Figure 20-3 You can combine the COUNTIF function with the not-equal-to operator (<>). How many songs were at least four minutes long? In cell C16, I computed the number of songs played that lasted at least four minutes by using the formula COUNTIF(Minutes,”>=4”). You need to enclose >=4 in quotation marks because the greater than or equal to (>=) character combination, like <>, is treated as text. You can see that 477 songs lasted at least four minutes. How many songs were longer than the average length of all songs on the list? To answer this question, I first computed in cell G5 the average length of a song with the ­formula AVERAGE(Minutes). Then, in cell C17, I computed the number of songs that last ­longer than the average with the formula COUNTIF(Minutes,”>”&G5). I can refer to another cell (in this case G5) in the criteria by using the & character. You can see that 477 songs lasted longer than average, which matches the number of songs lasting at least 4 minutes. The reason these numbers match is that I assumed the length of each song was an integer. For a song to last at least 3.48 minutes, it has to last at least 4 minutes. How many songs were sung by singers whose last names begin with S? To answer this question, I used a wildcard character, the asterisk (*), in the criteria. An asterisk represents any sequence of characters. Thus, the formula COUNTIF(Singer,”S*”) in cell C18 picks up any song sung by a singer whose last name begins with S. (The criteria are not case sensitive.) Two hundred thirty-two songs were sung by singers with last names that begin with S. This number is simply the total of the songs sung by Bruce Springsteen and Britney Spears (103+129=232). Chapter 20 The COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions 153 How many songs were sung by singers whose last names contain exactly six letters? In this example, I used the question mark (?) wildcard character. The question mark matches any character. Therefore, entering the formula COUNTIF(Singer,”??????”) in cell C19 counts the number of songs sung by singers having six letters in their last name. The result is 243. (Two singers have last names of six characters, Britney Spears and Eminem, who together sang a total of 243 songs—129+114=243.) How many songs were played after June 15, 2005? The criteria you use with COUNTIF functions handle dates on the basis of a date’s ­serial number. (A later date is considered larger than an earlier date.) The formula COUNTIF(Date,”>6/15/2005”) in cell C20 tells you that 98 songs were played after June 15, 2005. How many songs were played before 2009? Here, we want our criteria to pick up all dates on or before December 31, 2008. I entered in cell C21 the formula COUNTIF(Date,”<=12/31/2008”). You can see that 951 songs (which turns out to be all the songs) were played before the start of 2009. How many songs were exactly four minutes long? In cell C22, I computed the number of songs lasting exactly four minutes with the formula COUNTIF(Minutes,4). This formula counts the number of cells in the range G7:G957 containing a 4. As you can see, 247 songs lasted exactly four minutes. In a similar fashion, cell C23 shows that 230 songs lasted exactly five minutes. How many songs played were sung by Bruce Springsteen and were exactly four minutes long? We want to count each row where an entry in the Singer column is Springsteen and an ­entry in the Minutes column is 4. Since this question involves more than one criteria, this is a job for the wonderful COUNTIFS function. Simply enter in cell C24 the formula =COUNTIFS(Singer,”Springsteen”,Minutes,4). This formula counts any row in which Singer is Springsteen and Minutes equals 4. Bruce Springsteen sang 24 songs that were exactly four minutes long. My favorite Springsteen song is “Thunder Road,” but that song is more than four minutes long. I recommend using the function wizard to input formulas involving the COUNTIFS function. Don’t forget that you can paste range names into your formula with the F3 key. How many songs played were sung by Madonna and were three to four minutes long? Because we are dealing with multiple criteria, this is again a job for COUNTIFS. Entering in cell C25 the formula =COUNTIFS(Singer,”Madonna”,Minutes,”<=4”,Minutes,”>=3”) counts all rows in which Madonna sang a song that was from three to four minutes long. These are exactly 154 Microsoft Excel 2010: Data Analysis and Business Modeling the rows we want to count. It turns out that Madonna sang 70 songs that were from three to four minutes long. (My favorite one is “Crazy for You!”) How do I count the number of cells in a range containing numbers? The COUNT function counts the number of cells in a range containing a numeric value. For example, the formula COUNT(B5:C14) in cell C2 displays 9 because nine cells (the cells in C5:C13) in the range B5:C14 contain numbers. (See Figure 20-2.) How do I count the number of blank cells in a range? The COUNTBLANK function counts the number of blank cells in a range. For example, the formula COUNTBLANK(B5:C14) entered in cell C4 returns a value of 2 because two cells (B14 and C14) in the range B5:C14 contain blanks. How do I count the number of nonblank cells in a range? The COUNTA function returns the number of nonblank cells in a range. For example, the formula COUNTA(B5:C14) in cell C3 returns 18 because 18 cells in the range B5:C14 are not blank. Remarks In the remainder of the book I discuss alternative methods to answer questions involving two or more criteria (such as how many Britney Spears songs were played before June 10, 2005). ■ Database statistical functions are discussed in Chapter 45, “Summarizing Data with Database Statistical Functions.” ■ Array formulas are discussed in Chapter 83, “Array Formulas and Functions.” Problems The following questions refer to the file Rock.xlsx. 1. How many songs were not sung by Britney Spears? 2. How many songs were played before June 15, 2004? 3. How many songs were played between June 1, 2004, and July 4, 2006? Hint: Take the difference between two COUNTIF functions. 4. How many songs were sung by singers whose last names begin with M? 5. How many songs were sung by singers whose names contain an e? 6. Create a formula that always yields the number of songs played today. Hint: Use the TODAY() function. Chapter 20 The COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions 155 7. For the cell range D4:G15, count the cells containing a numeric value. Count the ­number of blank cells. Count the number of nonblank cells. 8. How many songs sung by Barry Manilow were played in 2004? 9. How many songs at least four minutes long and sung by Mandy Moore were played in 2007 or earlier? 10. How many songs exactly three minutes long and sung by Britney Spears were played later than 2004? 11. The file NBA.xlsx contains the following information: ❑ Columns A and B contain the name of each NBA team and a code number for each team. For example, Team 1 is Atlanta. ❑ Column C contains the home team for each game. ❑ Column D contains the visiting team for each game. ❑ Column E contains points scored by the home team. ❑ Column F contains points scored by the visiting team. From this data, compute the number of games played by each team. 12. The file Matchthesecond.xlsx gives a list of names. Note that some names occur more than once. You need to determine the row in which, for example, the second occurrence of the name “Dave” occurs. Set up a worksheet that allows you to enter a person’s name and a positive integer (such as n) and returns the row in which the name occurs for the nth time. 13. The file Numbers.xlsx contains a set of numbers. Count how many of these numbers are between 1 and 12 inclusive. Chapter 21 The SUMIF, AVERAGEIF, SUMIFS, and AVERAGEIFS Functions Questions answered in this chapter: ■ I’m a sales manager for a makeup company and have summarized for each sales ­transaction the following information: salesperson, date of sale, units sold (or returned), total price received (or paid out for returns). How can I answer the following questions? ❑ What is the total dollar amount of merchandise sold by each salesperson? ❑ How many units were returned? ❑ What is the total dollar amount of sales in or after 2005? ❑ How many units of lip gloss were sold? How much revenue did lip gloss sales bring in? ❑ What is the total dollar amount of sales made by someone other than a specific salesperson? ❑ What is the average number of units sold in each transaction made by a specific salesperson? ❑ What is the total dollar amount of lipstick sold by a specific salesperson? ❑ What is the average quantity (in units) of lipstick in each sale made by a specific salesperson? ❑ Among transactions involving at least 50 units, what is the average quantity of lipstick in each sale made by a specific salesperson? ❑ Among transactions of more than $100, what is the total dollar amount of lipstick sold by a specific salesperson? What about transactions of less than $100? If you want to sum all the entries in one column (or row) that match criteria that depend on another column (or row), the SUMIF function gets the job done. The syntax of the SUMIF function is SUMIF(range,criterion,[sum range]). ■ Range is the range of cells that you want to evaluate with a criterion. ■ Criterion is a number, date, or expression that determines whether a given cell in the sum range is added. ■ Sum range is the range of cells that are added. If sum range is omitted, it is assumed to be the same as range. 157 158 Microsoft Excel 2010: Data Analysis and Business Modeling The rules for criteria you can use with the SUMIF function are identical to the rules used for the COUNTIF function. For information about the COUNTIF function, see Chapter 20, “The COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions.” The AVERAGEIF function has the syntax AVERAGEIF(range,criterion,[average_range]). AVERAGEIF averages the range of cells meeting a criterion. Microsoft Excel 2010 includes three functions (introduced in Excel 2007) that you can use to flag rows that involve multiple criteria: COUNTIFS (discussed in Chapter 20), SUMIFS, and AVERAGEIFS. Other functions that you can use to do calculations involving multiple criteria are discussed in Chapter 45, “Summarizing Data with Database Statistical Functions.” Array functions (see Chapter 83, “Array Functions and Formulas”) can also be used to handle ­calculations involving multiple criteria. The syntax of SUMIFS is SUMIFS(sumrange,range1,criterion1,range2,criterion2,…,rangeN, ­criterionN). SUMIFS sums up every entry in the sumrange for which criterion1 (based on range1), criterion2 (based on range2),…,criterionN (based on rangeN) are all satisfied. In a similar fashion, the AVERAGEIFS function has the syntax AVERAGEIFS(sumrange,range1, criterion1,range2,criterion2,…,rangeN,criterionN). AVERAGEIFS averages every entry in the ­sumrange for which criterion1 (based on range1), criterion2 (based on range2),…,criterionN (based on rangeN) are all satisfied. Answers to This Chapter’s Questions What is the total dollar amount of merchandise sold by each salesperson? The work for the problems in this chapter is in the file Makeup2007.xlsx. Figure 21-1 shows a subset of the data. Figure 21-1 Data we’ll use for SUMIF examples. Chapter 21 The SUMIF, AVERAGEIF, SUMIFS, and AVERAGEIFS Functions 159 As usual, I begin by labeling the data in columns G through L with the corresponding names in cells G4:L4. For example, the range name Product corresponds to the range J5:J1904. To compute the total amount sold by each salesperson (see Figure 21-2), I simply copy from cell B5 to B6:B13 the formula SUMIF(Name,A5,Dollars). This formula adds up every entry in the Dollars column that contains the name Emilee in the Name column and shows that Emilee sold $25,258.87 worth of makeup. Of course, the formula =SUMIF(Name,”Emilee”,Dollars) would yield the same result. Figure 21-2 Results of SUMIF computations. How many units were returned? In cell B16, the formula SUMIF(Units,”<0”,Units) totals every number less than 0 in the Units column (column K). The result is –922. Inserting a minus sign in front of the SUMIF formula shows that 922 units were returned. (Recall that when the sum range argument is omitted from a SUMIF function, Excel assumes that sum range equals range. Therefore, the formula –SUMIF(Units,”<0”) would also yield 922.) What is the total dollar amount of sales in or after 2005? In cell B17, the formula SUMIF(Date,”>=1/1/2005”,Dollars) totals every entry in the Dollar column (column L) that contains a date on or after 1/1/2005 in the Date column. The formula shows that $157,854.32 worth of makeup was sold in 2005 or later. How many units of lip gloss were sold? How much revenue did lip gloss sales bring in? In cell B18, the formula SUMIF(Product,”lip gloss”,Units) totals every cell in the Units column that contains the text lip gloss in the Product column (column J). You can see that 16,333 160 Microsoft Excel 2010: Data Analysis and Business Modeling units of lip gloss were sold. This is the net sales amount; transactions in which units of lip gloss were returned are counted as negative sales. In a similar fashion, in cell B19 the formula SUMIF(Product,”lip gloss”,Dollars) tells you that a net amount of $49,834.64 worth of lip gloss was sold. This calculation counts refunds ­associated with returns as negative revenue. What is the total dollar amount of sales made by someone other than Jen? In cell B20, the formula SUMIF(Name,”<>Jen”,Dollars) sums the dollar amount of all ­transactions that do not have Jen in the Name column. We find that salespeople other than Jen sold $211,786.51 worth of makeup. What is the average number of units sold in each transaction made by a specific salesperson? This is a job for the AVERAGEIF function. Entering in cell B26 the formula =AVERAGEIF(Name,”Jen”,Units) averages every entry in the Units column that contains Jen in the Name column. Jen’s average transaction size was 43.548 units. I verified this in cell C25 with the formula =SUMIF(Name,”Jen”,Units)/COUNTIF(Name,”Jen”). What is the total dollar amount of lipstick sold by Jen? This calculation involves two criteria (Name=”Jen” and Product=”lipstick”). Therefore, you need to compute the quantity you’re looking for in cell B21 with the formula ­=SUMIFS(Dollars,Name,”Jen”,Product,”lipstick”). The total dollar amount of all transactions in which Jen sold lipstick is $3,953. What is the average quantity (in units) of lipstick in each sale made by Zaret? This calculation requires the AVERAGEIFS function. I computed the quantity in cell B22 with the formula =AVERAGEIFS(Units,Name,”Zaret”,Product,”lipstick”). For the sales transactions in which Zaret sold lipstick, the average number of units sold is 33. Among transactions involving at least 50 units, what is the average quantity of lipstick in each sale made by Zaret? Here again I used AVERAGEIFS, but I added a criterion to ensure that the units sold in each transaction was at least 50. In cell B23, I entered the formula =AVERAGEIF(Units,Name, ”Zaret”,Product,”lipstick”,Units,”>=50”). In all transactions in which Zaret sold at least 50 units of lipstick, the average transaction size is 68 units. Among transactions of more than $100, what is the total dollar amount of lipstick sold by Jen? What about transactions of less than $100? Because the criteria is Name=Jen, Product=lipstick, and some statement about the dollar size of each order, you need to use the SUMIFS function. In cell B24 I compute the total amount Chapter 21 The SUMIF, AVERAGEIF, SUMIFS, and AVERAGEIFS Functions 161 in transactions in which Jen sold lipstick and the dollar amount was at least $100 with the ­formula =SUMIFS(Dollars,Name,”Jen”,Product,”lipstick”,Dollars”>=100”). Jen sold $3,583 worth of lipstick in such transactions. In lipstick transactions involving less than $100, you can see in cell B25 (the formula is =SUMIFS(Dollars,Name,”Jen”,Product,”lipstick”,Dollars,”<100”) that the answer is $370. Note that $370+$3,583 equals the total revenue Jen generated from lipstick sales (computed in cell B21). Problems 1. For each product, determine the total number of units and dollar volume sold. 2. Determine the total revenue earned before December 10, 2005. 3. Determine the total units sold by salespeople whose last names begin with C. 4. Determine the total revenue earned by people who have five letters in their names. 5. How many units were sold by people other than Colleen? 6. How many units of makeup were sold from January 15, 2004, through February 15, 2005? 7. The file NBA.xlsx contains the following information: ❑ Columns A and B list the name of each NBA team and a code number for each team. For example, team 1 is Atlanta, and so on. ❑ Column C lists the home team for each game. ❑ Column D lists the visiting team for each game. ❑ Column E lists points scored by the home team. ❑ Column F lists points scored by the visiting team. From this data, compute for each team the average number of points the team scored per game and the average number of points the team gave up. 8. The file Toysrus.xlsx contains sales revenue (in millions of dollars) during each quarter for the years 1997–2001 and the first two quarters of 2002. Use this data to compute a seasonal index for each quarter of the year. For example, if average sales during the first quarter were 80 percent of the overall average sales per quarter, the first quarter would have a seasonal index of 0.8. 9. The file Sumifrows.xlsx contains sales data during several winter, spring, summer, and fall quarters. Determine average sales during the winter, spring, summer, and fall quarters. 10. Again using the file Makeup2007.xlsx, how much revenue was made on sales ­transactions involving at least 50 units of makeup? 162 Microsoft Excel 2010: Data Analysis and Business Modeling 11. How many units of lip gloss did Cici sell in 2004? 12. What is the average number of units of foundation sold by Emilee? 13. What is the average dollar size of a foundation sale made by Betsy after the end of 2004? 14. In transactions in which Ashley sold at least 40 units of lipstick, what is the total dollar amount? 15. Create a table that contains sales of each product made by each person. 16. Create a table that, when you enter a year in your worksheet, contains sales of each product by person during that year. 17. For the file Numbers.xlsx. find the total of all number between 5 and 15 inclusive. 18. For the file Numbers.xlsx find the average of all numbers 10 and 25 inclusive. Chapter 22 The OFFSET Function Questions answered in this chapter: ■ How can I create a reference to a range of cells that is a specified number of rows and columns from a cell or another range of cells? ■ How can I perform a lookup operation based on the right-most column in a table range instead of the left-most column? ■ I often download software product sales information listed by country. I need to track revenues from Iran as well as costs and units sold, but the data about Iran isn’t always in the same location in the worksheet. Can I create a formula that will always pick out Iran’s revenues, costs, and units sold? ■ Each drug developed by my company goes through three stages of development. I have a list of the cost by month for each drug, and I also know the length in months of each development stage. Can I create formulas that compute for each drug the total cost incurred during each stage of development? ■ I run a small video store. In a worksheet, my accountant has listed the name of each movie and the number of copies in stock. Unfortunately, he combined this information in one cell for each movie. How can I extract the number of copies of each movie in stock to a separate cell? ■ How does Excel’s Evaluate Formula feature work? ■ How can I write a formula that always returns the last number in a column? ■ How can I set up a range name that automatically includes new data? ■ I am charting my company’s monthly unit sales. Each month, I download the most ­recent month’s unit sales. I would like my chart to update automatically. Is there an easy way to accomplish this? The OFFSET function is used to create a reference to a range that is a specified number of rows and columns away from a cell or range of cells. Basically, to create a reference to a range of cells, you first specify a reference cell. You then indicate the number of rows and columns away from the reference cell that you want to create your range. For example, by using the OFFSET function, I can create a reference to a cell range that contains two rows and three columns and begins two columns to the right and one row above the current cell. You can calculate the specified number of rows and columns you move from a reference cell by using other Excel functions. The syntax of the OFFSET function is OFFSET(reference,rows moved,columns moved,height,width). 163 164 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Reference is a cell or range of cells from which the offset begins. If you specify a range of cells, the cells must be adjacent to each other. ■ Rows moved is the number of rows away from the reference cell or range that you want the range reference to start (the upper-left cell in the offset range). A negative number of rows moves you up from the reference; a positive number of rows moves you down. For example, if reference equals C5 and rows moved equals –1, you move to row 4. If rows moved equals +1, you move to row 6. If rows moved equals 0, you stay at row 5. ■ Columns moved is the number of columns away from the reference cell or range that you want the range reference to start. A negative number of columns moves you left from the reference; a positive number of columns moves you right. For example, if reference equals C5 and columns moved equals –1, you move to column B. If columns moved equals +1, you move to column D. If columns moved equals 0, you stay at ­column C. ■ Height and width are optional arguments that give the number of rows and columns in the offset range. If height or width is omitted, the OFFSET function creates a range for which the value of height or width equals the height or width of the reference cell or range. Answers to This Chapter’s Questions How can I create a reference to a range of cells that is a specified number of rows and columns from a cell or another range of cells? The file Offsetexample.xlsx, shown in Figure 22-1, provides some examples of the OFFSET function in action. Figure 22-1 Using the OFFSET function. Chapter 22 The OFFSET Function 165 For example, in cell B10, I entered the formula shown in cell A10: SUM(OFFSET(B7,–1,1,2,1)). This formula begins in cell B7. It moves one row up and one column to the right, which brings us to cell C6. The formula now selects a range consisting of two rows and one column, which yields the range C6:C7. The SUM function adds the numbers in this range, which yields 2+6=8. The other two examples shown in Figure 22-1 work the same way. In the following sections, I’ll show you how to apply the OFFSET function to some problems that were sent to me by former students working at major U.S. companies. How can I perform a lookup operation based on the right-most column in a table range ­instead of the left-most column? In Figure 22-2 (see the workbook Lefthandlookup.xlsx), I listed the members of the 2002– 2003 Dallas Mavericks NBA basketball team and their field goal percentages. If I’m asked to find the player with a specific field goal percentage, I could easily solve that problem by ­using a VLOOKUP function. But what I really want to do is a “left-hand lookup,” which involves finding the field goal percentage for a player by using his name. A VLOOKUP function can’t perform a left-hand lookup, but a left-hand lookup is simple if you combine the MATCH and OFFSET functions. Figure 22-2 You can do a left-hand lookup by using the MATCH and OFFSET functions. First, I enter the player’s name in cell D7. Then I use a reference cell of B7 (the field goal ­percentage column header) in the OFFSET function. To find the player’s field goal ­ percentage, I need to move down to the row below row 7 where the player’s name appears. This is a job for the MATCH function. The MATCH function portion of the formula OFFSET(B7,MATCH(D7,$C$8:$C$22,0),0) moves down to the row containing the specified player’s name and then moves over 0 columns. Because the reference consists of one cell, ­omitting the height and width arguments of the OFFSET function ensures that the range ­returned by this formula is also one cell. Thus, I pick up the player’s field goal percentage. 166 Microsoft Excel 2010: Data Analysis and Business Modeling I often download software product sales information listed by country. I need to track ­revenues from Iran as well as costs and units sold, but the data about Iran isn’t always in the same location in the worksheet. Can I create a formula that will always pick out Iran’s ­revenues, costs, and units sold? The file Asiansales.xlsx (see Figure 22-3) contains data for units sold, sales revenue, and ­variable cost for software sold to several countries in Asia and the Middle East. Each month, when you download the monthly financial reports, the location of each country in the ­worksheet changes, so you need formulas that always return (for a given country) the correct units sold, revenue, and variable cost. Figure 22-3 You can use the OFFSET function in calculations when you’re working with data that isn’t always in the same location in a worksheet. By copying from D21 to E21:F21 the formula OFFSET($C$6,MATCH ($C21,$C$7:$C$17,0),D20), you can compute the result you want. This formula sets reference equal to cell C6 (which contains the words Country/Region). Then it moves over one column (to cell D20) to find units sold and down to the row containing the country listed in C21. In cell E21, the reference to D20 now refers to E20 and becomes a 2, so you move over two columns to the right of column C to find revenue. In cell E21, the reference to D20 now refers to F20 and becomes a 3, so you move three columns to the right of column C to find variable cost. Each drug developed by my company goes through three stages of development. I have a list of the cost by month for each drug, and I also know how many months each development stage took for each drug. Can I create formulas that compute for each drug the total cost incurred during each stage of development? The file Offsetcost.xlsx contains the monthly costs incurred to develop five drugs and, for each drug, the number of months required to complete each phase. A subset of the data is shown in Figure 22-4. Chapter 22 The OFFSET Function 167 Figure 22-4 Using the OFFSET function to compute development costs for Phases 1–3. The goal is to determine for each drug the total cost incurred during each development phase. In cells D4:D6, I compute the total development costs for Phases 1–3 for Drug 1. I compute Phase 1 costs for Drug 1 by using a cell reference of D10, with rows moved and ­columns moved equal to 0. Setting height equal to the number of months in Phase 1 and width equal to 1 captures all Phase 1 costs. I compute Phase 1 costs for Drug 1 in cell D4 with the formula SUM(OFFSET(D10,0,0,D1,1)). Next, in cell D5, I compute Phase 2 total costs for Drug 1 by using the formula SUM(OFFSET(D10,D1,0,D2,1)). Note that I start with a cell reference of D10 (the first month of costs) and move down the number of rows equal to the length of Phase 1. This brings me to the beginning of Phase 2. Setting height equal to the value in cell D2 ensures that I include all Phase 2 costs. Finally, in cell D6, I find the Phase 3 development costs for Drug 1 by using the formula SUM(OFFSET(D10,D1+D2,0,D3,1)). In this formula, I start from the first month of sales and move down the number of rows equal to the total time needed for Phases 1 and 2. This brings me to the beginning of Phase 3, where in cell D3, I total the number of rows to capture Phase 3 costs. Then, by copying the ­formulas in D4:D6 to E4:H6, I can compute total costs for Phases 1–3 for Drugs 2 through 5. For ­example, for Drug 2, total Phase 1 costs equal $313, total Phase 2 costs equal $789, and total Phase 3 costs equal $876. I run a small video store. In a worksheet, my accountant has listed the name of each ­movie and the number of copies in stock. Unfortunately, he combined this information into one cell for each movie. How can I extract the number of copies of each movie in stock to a separate cell? The file Movies.xlsx, shown in Figure 22-5, contains the name of each movie and the number of copies in stock. 168 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 22-5 Movie example using the OFFSET function. I want to extract the number of copies owned of each movie to a separate cell. If the number of copies were listed to the left of a movie’s title, this problem would be easy. I could use the FIND function to locate the first space and then use the LEFT function to return all the data to the left of the first space. (See Chapter 6, “Text Functions,” for a discussion of how to use the LEFT and FIND functions, as well as other functions you can use to work with text.) Unfortunately, this technique doesn’t work when the number of copies is listed to the right of the movie title. For a one-word movie title, for example, the number of copies is to the right of the first space, but for a four-word movie title, the number of copies is to the right of the fourth space. One way to solve this problem is to click the Data tab on the ribbon and, in the Data Tools group, click Text To Columns to place each word in a title and the number of copies in ­separate columns. You can use the COUNTA function to count the total number of words in a title, including the number of items as a word, for each movie. You can then use the OFFSET function to locate the number of items. To begin, insert enough columns to the right of the data to allow each word in the m ­ ovies’ titles and the number of items to be extracted to a separate column. I used six columns (Raiders of the Lost Ark requires six columns), as you can see in Figure 22-5. Then I select the cell range C2:C12, and click Text To Columns on the Data tab. I select Delimited in the Convert Text To Columns Wizard and use the space character as the delimiting character. After selecting cell D2 as the destination cell, I have the results shown in columns D through I of Figure 22-5. Now I count the number of words in each movie’s cell (counting the number of items as a word) by copying from A2 to A3:A12 the formula COUNTA(D2:I2). The results are shown in Figure 22-5. Finally, copying from B2 to B3:B12 the formula OFFSET(C2,0,A2), I can locate the number of copies of each movie in stock. This formula begins at the reference cell containing the movie title and moves over the number of columns equal to the number of “words” in the title cell. Because the reference cell contains only one cell, I can omit the height and width arguments of the OFFSET function so that the function uses only the cell containing the last “word” (the number of copies) of the title cell. Chapter 22 The OFFSET Function 169 How does Excel’s Evaluate Formula feature work? If you select any portion of a cell formula and then press F9, Excel displays the value ­created by that portion of the formula. You must press Esc or you lose the formula. This trick makes debugging and understanding complex formulas easier. Thus, it might be easier to understand what the OFFSET portion of the formula does if you apply this trick to any of the formulas in this chapter. For example, in the file Offsetcost.xlsx, cell E4 generates total Phase 1 cost with the formula =SUM(OFFSET(E10,0,0,E1,1)). If you move the cursor over OFFSET(E10,0,0,E1,1), highlight this part of the formula, and then select F9, you will see =SUM({135,120,58}), which indicates that the OFFSET portion of the formula in cell D4 uses the correct cells (D10:D12). Be sure you press Esc to exit this procedure or you will lose your formula! Another way to see how a complex formula works is to use the Evaluate Formula command. Move the cursor to E4 and click the Formulas tab on the ribbon. In the Formula Auditing group, click Evaluate Formula. (See Figure 22-6.) Click the Evaluate button (it looks like a magnifying glass), and Excel simplifies the formula step by step until you see the formula’s final result. After clicking Evaluate twice, the formula appears as =SUM($E$10:E$12), so you know that in cell E4 you have selected the Phase 1 cells for Drug 2, which is what you wanted. Figure 22-6 Evaluate Formula dialog box. How can I write a formula that always returns the last number in a column? You often download new data into a worksheet. Can you write a formula that always returns sales during thelas most recent month? (See the file Mostrecent.xlsx and Figure 22-7.) 170 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 22-7 Finding the last number in a column. Simply enter in cell D4 the formula OFFSET(B6,COUNT(B:B),0,1,1). This formula begins in cell B6 and moves down a number of rows equal to the number of numerical entries in column B. This takes you to the most recent month of sales, which is ­selected because 1,1 returns only one cell. How can I set up a range name that automatically includes new data? Users of Excel often add rows or columns of data to a range of data that is used to c­ reate a PivotTable or to perform another type of analysis. Usually, they simply update the range of cells referred to in their formula and then rerun the analysis. However, you can use ­dynamic range names and never have to update the range of data referred to in a formula or PivotTable. The range will automatically update. Here is an example. The file Dynamicrange.xlsx shows entries from an HR database. (See Figure 22-8.) Figure 22-8 Example of a dynamic range. Currently, the data contains nine rows and four columns of data. Wouldn’t it be nice if you could create a range name that would automatically include more rows and/or columns when you add people or fields of information to the database? Chapter 22 The OFFSET Function 171 To create a dynamic range, click the Formulas tab and, in the Defined Names group, click Name Manager. Then click New and define a range as shown in Figure 22-9. Figure 22-9 Creating a dynamic range. The range starts in the upper-left corner: cell A1. Next we move 0 rows and columns from cell A1. The selected range has number of rows=number of nonblank entries in column A and number of columns=number of nonblank entries in row 1. Thus, if you add people or data fields, the formula will automatically expand to include them. The dollar signs ($) are needed so that the defined range will not shift if you move around the worksheet. To try this out, enter the formula =SUM(data) in cell G14. At present, this formula totals all numbers in the range A1:D9 and yields $448,278. Now add to row 10 the name Meredith, enter in B10 a salary of $10,000, enter in E1 a variable for Mistakes (add the word Mistakes), and in E10 enter 1,000. The formula =SUM(data) now includes the 10,000 and 1,000, and automatically updates to $459,278. I am charting my company’s monthly unit sales. Each month I download the most recent month’s unit sales. I would like my chart to update automatically. Is there an easy way to accomplish this? The workbook Chartdynamicrange.xlsx (see Figure 22-10) contains the units sold of your company’s product. As you can see, the units sold have been charted using an XY (Scatter) chart. 172 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 22-10 You can use the OFFSET function to update this chart dynamically. Beginning in row 19, you download new sales data. Is there an easy way to ensure that the chart automatically includes the new data? The key to updating the chart is to use the OFFSET function to create dynamic range names for both the Months column and the Units Sold column. As new data is entered, the d ­ ynamic range for unit sales will automatically include all sales data, and the dynamic range for months will include each month number. After creating these ranges, you can modify the chart, replacing the data ranges used in the chart with the dynamic ranges. The chart now updates as new data is entered. To begin, click Define Names on the Formulas tab on the ribbon to display the New Name dialog box. Create a range named Units by filling in the dialog box as shown in Figure 22-11. Figure 22-11 Creating a dynamic range name for the units sold. Entering =OFFSET(‘dynamic range’!$C$3,0,0,COUNT(!$C:$C),1) in the Refers To area of the dialog box creates a range one column wide beginning in cell C3, which contains the first unit sales data point. The range will contain as many numbers as there are in column C, which is derived by the portion of the formula that reads COUNT(‘dynamic range’!$C:$C). As new data is entered into column C, the data is automatically included in the range named Units. Chapter 22 The OFFSET Function 173 Next, create a dynamic range named Month for the months entered in column B. The ­formula is shown in Figure 22-12. Figure 22-12 The formula used to define a dynamic range named Month. Now go to the chart and click any point. In the formula box, you’ll see the formula SERIES(‘dynamic range’!$C$2,’dynamic range’!$B$3:$B$18,’dynamic range’!$C$3:$C$18,1). This formula is Excel’s version of the data originally used to set up the chart. Replace the ranges $B$3:$B$18 and $C$3:$C18 with the dynamic range names as follows: SERIES(‘dynamic range’!$C$2,Chartdynamicrange.xlsx!Month,Chartdynamicrange.xlsx!Units,1). Of course, if a blank space is listed above any new data, this method won’t work. Enter some new data, and you’ll see that it is included in the chart. Remarks The Excel table feature makes it easy to set things up so that charts and formulas ­automatically incorporate new data. See Chapter 26, “Tables,” for a discussion of this feature. Problems 1. The file C22p1.xlsx contains data about unit sales for 11 products during the years 1999–2003. Write a formula using the MATCH and OFFSET functions that determines the sales of a given product during a given year. Can you think of another way to solve this problem without using the MATCH and OFFSET functions? 174 Microsoft Excel 2010: Data Analysis and Business Modeling 2. A commonly suggested moving average trading rule is to buy a stock when its price moves above the average of the last D months and to sell it when its price moves ­below the average of the last D months. In Chapter 12, “IF Statements,” I showed that for D=15, this trading rule outperformed the Standard &Poor’s 500 by a substantial amount. By combining a one-way data table with the OFFSET function, determine the value of D that maximizes trading profit (excluding transactions costs). You can find pertinent data in the file Matradingrule.xlsx. 3. A commonly suggested moving average trading rule is to buy a stock when its price moves above the average of the last B months and to sell it when its price moves below the average of the last S months. In Chapter 13, “Time and Time Functions,” I showed that for B=S=15, this trading rule outperformed the Standard & Poor’s 500 by a substantial amount. By combining a two-way data table with the OFFSET function, determine the values of B and S that maximize trading profit (excluding transactions costs). You’ll find data for this problem in the file Matradingrule.xlsx. 4. The file Lagged.xlsx contains data about the number of magazine ads placed by U.S. Army Recruiting during each of 60 consecutive months. For each month, the k-month lagged number of ads is defined to equal the number of ads placed k months ago. For months 7–60, you want to compute the 1-month lagged, 2-month lagged, through 6-month lagged values of the number of ads. Use the OFFSET function to efficiently compute these lagged values. 5. The file Verizondata.xlsx gives sales of four different Verizon phones in five ­regions. Determine an efficient method to enter for each of the 20 region-product ­combinations, the region, type of phone, and sales of each phone into one row. 6. This problem is a difficult one. The file Agingdata.xlsx gives the number of insurance claims projected to be received daily and the number of insurance company workers available. Each day, a worker can process up to 30 claims. Workers process the oldest claims in the system first. Cells H6:AL6 contain the number of claims already in the system on January 1, before new claims arrive. Set up a worksheet to track the “aging” of the claims. That is, for each day, how many 1-day old , 2-day old, … 30-day old, and over 30-day old claims will be in the system. 7. Each row of the file Tapesales.xlsx contains monthly sales of a video tape. Write a ­formula to determine sales for each tape during its first six months on the market. 8. To obtain a golfer’s handicap, you average the 10 lowest of the golfer’s last 20 rounds. Then you subtract 80 and round to the nearest integer. Thus, if the 10 lowest of the last 20 rounds adds up to 864, the handicap would be 6. The file Golfdata.xlsx contains a golfer’s scores. Beginning in row 24, compute the golfer’s handicap after each round. Assume that if the tenth best score in the last 20 rounds occurs more than once, then all rounds including that score will be included in the handicap calculation. Note that the Excel function =ROUND(x,0) will round x to the nearest integer. Chapter 22 The OFFSET Function 175 9. Each row of the file Carsumdata.xlsx contains sales data for a product (car, train, or plane) from January thru July. Suppose you enter a month and a product into the ­worksheet. Write a formula that gives the total sales of that product during the given month. 10. The file Verizon.xlsx contains monthly returns on Verizon stock. Use the OFFSET ­function to extract all the January returns to one column, all the February returns to one column, and so on. 11. The file Casesensitive.xlsx contains product codes and product prices. Note that the product codes are case sensitive. For example, DAG32 is not the same product as dag32. Write a formula that gives the product price for any product code. Hint: You might need to use the EXACT function. The formula EXACT(cell1,cell2) yields True if cell1 and cell2 have exactly the same contents. EXACT differentiates ­between u ­ ppercase and lowercase letters. 12. The file Reversed.xlsx contains a column of numbers. Use the OFFSET function to “­reverse” the numbers so that the number on bottom occurs on top, and so on. 13. The file Diagonal.xls contains a matrix of numbers. Determine how to put the diagonal elements of the matrix in a single column. 14. The file Yeartodate.xlsx contains a company’s monthly sales during the years 2008–2014. Write a formula that returns for a given year and month of a year, the year’s cumulative sales to date. For example, if you enter a 6 for the month and 2010 for the year, your formula should compute total sales for the period January–June 2010. 15. Show how you might create a graph of monthly sales that always displays just the last six months of sales. 16. The file Transactiondata.xlsx contains sales transactions in divisions A, B, C, D, and E of a drug company. Use the OFFSET function to modify this data so that the sales for each division appear in a single row. Chapter 23 The INDIRECT Function Questions answered in this chapter: ■ My worksheet formulas often contain references to cells, ranges, or both. Rather than change these references in my formulas, can I place the references in their own cells so that I can easily change my cell or range references without changing my underlying formulas? ■ Each worksheet in a workbook lists monthly sales of a product in cell D1. Is there an easy way to write and copy a formula that lists each month’s product sales in one worksheet? ■ Suppose I total the values in the range A5:A10 with the formula SUM(A5:A10). If I insert a blank row somewhere between rows 5 and 10, my formula updates automatically to SUM(A5:A11). How can I write a formula so that when I insert a blank row between rows 5 and 10, my formula still totals the values in the original range, A5:A10? ■ How can I use the INDIRECT function in a formula to “read” the range name portion of a formula in a worksheet? ■ My workbook contains sales in each country for each of my company’s products. How can I easily pool this data in a single summary worksheet? The INDIRECT function is probably one of the most difficult Microsoft Excel functions to ­master. Knowing how to use the INDIRECT function, however, enables you to solve many seemingly unsolvable problems. Essentially, any reference to a cell within the INDIRECT ­portion of a formula results in the immediate evaluation of the cell reference to equal the content of the cell. To illustrate the use of INDIRECT, look at the file Indirectsimpleex.xlsx, which is shown in Figure 23-1. Figure 23-1 A simple example of the INDIRECT function. In cell C4, I entered the formula =INDIRECT(A4). Excel returns the value 6 because the ­reference to A4 is immediately replaced by the text string “B4”, and the formula is evaluated as =B4, which yields the value 6. Similarly, entering in cell C5 the formula =INDIRECT(A5) ­returns the value in cell B5, which is 9. 177 178 Microsoft Excel 2010: Data Analysis and Business Modeling Answers to This Chapter’s Questions My worksheet formulas often contain references to cells, ranges, or both. Rather than change these references in my formulas, can I place the references in their own cells so that I can easily change my cell or range references without changing my ­underlying formulas? In this example, the data we’ll use is contained in the file Sumindirect.xlsx, shown in Figure 23-2. The cell range B4:H16 lists monthly sales data for six products during a 12-month period. I currently calculate total sales of each product during Months 2–12. An easy way to make this calculation is to copy from C18 to D18:H18 the formula SUM(C6:C16). Suppose, however, that you want to change which months are totaled. For example, you might want total sales for months 3–12. You could change the formula in cell C18 to SUM(C7:C16) and then copy this formula to D18:H18, but using this approach is problematic because you have to copy the formula in C18 to D18:H18 and, without looking at the formulas, nobody knows which rows are being added. Figure 23-2 You can use the INDIRECT function to change cell references in formulas without changing the formulas themselves. The INDIRECT function provides another approach. I placed in cells D2 and E2 the starting and ending rows of our summation. Then, by using the INDIRECT function, all I need to do is change the starting and ending row references in D2 and E2, and the sums are updated to include the rows I want. Also, by looking at the values in D2 and E2, you can see at a glance which rows (months) are being added. All I need to do is copy from C18 to D18:H18 the f­ormula SUM(INDIRECT(C$3&$D$2&’’:’’&C$3&$E$2)). If you want to see how Excel evaluates a reference to the INDIRECT function, use the ­following trick. Click in part of the formula (for example, C$3) and then press F9. Excel shows you the value of the selected portion of the formula. For example, C$3 evaluates to C. Chapter 23 The INDIRECT Function 179 Be sure to press Esc to return to Excel. Every cell reference within the INDIRECT portion of this formula is evaluated to equal the contents of the cell. C$3 is evaluated as C, $D$2 is evaluated as 6, and $E$2 is evaluated as 16. With the ampersand (&) included as the concatenation symbol, Excel evaluates this formula as SUM(C6:C16), which is exactly want you want. The formula in C18 returns the value 38+91+…69=607. In cell D18, the formula evaluates as SUM(D6:D16), which is the result you want. Of course, if you want to add up sales during months 4 through 6, you simply enter 8 in D2 and 10 in E2, and then the formula in C18 ­returns 33+82+75=190. (For information about using the ampersand to concatenate values, see Chapter 6, “Text Functions.”) Each worksheet in a workbook lists monthly sales of a product in cell D1. Is there an easy way to write and copy a formula that lists each month’s product sales in one worksheet? The file Indirectmultisheet.xlsx (see Figure 23-3) contains seven worksheets. In each ­worksheet, cell D1 contains data about the sales of a product during a particular month. Let’s suppose Sheet1 contains Month 1 sales, Sheet 2 contains Month 2 sales, and so on. For example, sales in Month 1 equals 1, in Month 2 it equals 4, and so on. Figure 23-3 Monthly sales (Months 1–7) of a product listed by using the INDIRECT function. Now suppose you want to compile a list of each month’s sales into one worksheet. A ­tedious approach would be to list Month 1 sales with the formula =Sheet1!D1, Month 2 sales with the formula =Sheet2!D1, and so on, until you list Month 7 sales with the formula =Sheet7!D1. If you have 100 months of data, this approach is very time consuming. A much more elegant approach is to list Month 1 sales in cell E10 of Sheet1 with the formula INDIRECT($C$10&D10&’’!D1’’). Excel evaluates $C$10 as “Sheet”, D10 as “1”, and ‘’!D1’’ as the text string “!D1”. The whole formula is evaluated as =Sheet1!D1, which, of course, yields Month 1 sales, located in cell D1 of Sheet1. Copying this formula to the range E11:E16 lists the entries in cell D1 of Sheets 2 through 7. When the formula in cell E10 is copied to cell E11, the reference to D10 changes to D11, and cell E11 returns the value located at Sheet2!D1. Suppose I total the values in the range A5:A10 with the formula SUM(A5:A10). If I insert a blank row somewhere between rows 5 and 10, my formula updates a ­ utomatically to 180 Microsoft Excel 2010: Data Analysis and Business Modeling SUM(A5:A11). How can I write a formula so that when I insert a blank row between rows 5 and 10, my formula still totals the values in the original range, A5:A10? The worksheet named SUM(A5A10) in the file Indirectinsertrow.xlsx (shown in Figure 23-4) illustrates several ways to total the numbers in cell range A5:A10. In cell A12, I entered the traditional formula SUM(A5:A10), which yields 6+7+8+9+1+2=33. Similarly, the formula SUM($A$5:$A$10) in cell E9 yields a value of 33. As you’ll soon see, however, if you insert a row between rows 5 and 10, both formulas attempt to total the cells in the range A5:A11. Figure 23-4 Several ways to sum the values in the cell range A5:A10. With the INDIRECT function, you have at least two ways to total the values in the range A5:A10. In cell F9, I entered the formula SUM(INDIRECT(‘’A5:A10’’)). Because Excel treats INDIRECT(‘’A5:A10’’) as the text string ‘’A5:A10’’, if you insert a row in the worksheet, this ­formula still totals the entries in the cell range A5:A10. Another way to use the INDIRECT function to total the entries in the range A5:A10 is the formula SUM(INDIRECT(‘’A’’&C4&’’:A’’&D4)), which is the formula entered in cell C6. Excel treats the reference to C4 as a 5 and the reference to D4 as a 10, so this formula becomes SUM(A5:A10). Inserting a blank row between row 5 and row 10 has no effect on this formula because the reference to C4 is still treated as a 5, and the reference to D4 is still treated as a 10. In Figure 23-5, you can see the sums calculated by the four formulas after a blank row is inserted below row 7. You can find this data on the worksheet Row Inserted in the file Indirectinsertrow.xlsx. As you can see, the classic SUM formulas, which do not use the INDIRECT function, have changed to add up the entries in the range A5:A11, so these formulas still yield a value of 33. The two SUM formulas that do use the INDIRECT function continue to add up the entries in the range A5:A10, so the value of 2 (now in cell A11) is no longer included in the calculated sum. The SUM formulas that use the INDIRECT function yield a value of 31. Chapter 23 The INDIRECT Function 181 Figure 23-5 Results of SUM formulas after inserting a blank row in the original range. How can I use the INDIRECT function in a formula to “read” the range name portion of a formula in a worksheet? Suppose you have named several ranges in a worksheet to correspond to quarterly product sales. (See Figure 23-6 and the file Indirectrange.xlsx.) For example, the range D4:E6 (named Quarter1) contains fictitious first-quarter sales of various Microsoft products. Figure 23-6 Use the INDIRECT function to create a reference to a range name within a formula. It would be great to write a formula that can easily be copied and that then yields the sales of each product in each quarter in a single rectangular range of the w ­ orksheet, as shown in H17:J20. You would think you could enter in cell H17 the ­formula =VLOOKUP(H$16,$G17,2,FALSE) and then copy this formula to the range H17:J20. Unfortunately, Excel does not recognize $G17 as referring to the range name Quarter1. Rather, Excel just thinks $G17 is the text string “Quarter1”. The formula, therefore, ­returns an #NA error. To remedy this problem, simply enter in cell H17 the formula =VLOOKUP(H$16,INDIRECT($G17),2,FALSE) and then copy this formula to range H17:J20. This 182 Microsoft Excel 2010: Data Analysis and Business Modeling works perfectly! INDIRECT($G17) is evaluated as Quarter1 and is now recognized as a range name. You have now easily generated sales of all products during all four quarters. My workbook contains sales in each country for each of my company’s products. How can I easily pool this data in a single summary worksheet? Cells E7:E9 of the file Indirectconsolidate.xlsx contain sales of cars, trucks, and planes on each continent. Each continent has its own worksheet. How can you summarize this data in a single sheet? In the worksheet Summary, I created the summary shown in Figure 23-7. Figure 23-7 Use the INDIRECT function to create a summary of product sales. I copied from cell E7 to the range E7:I9 the formula INDIRECT(E$6&”!”&$C7). This formula creates the formula =LA!E7, which calculates car sales in Latin America. Copying this formula picks off the sales for each type of product on each continent. In the worksheet Another Summary (see Figure 23-8), I created the same table in a slightly different manner. I automated the generation of the cell addresses from which I pull car, truck, and plane sales by copying from C7 to C8:C9 the formula ADDRESS(ROW(),COLUMN()+2). This generates column E in the cell address and then rows 8 and 9. The function ROW() entered in a cell returns the cell’s row number, and the function COLUMN() entered by itself in a cell returns the column number of the current cell (in this case 3). When entered as part of the third argument of the ADDRESS function, the term COLUMN()+2 effectively returns the column label for the cell two columns to the right of the current cell (in this case column E.) Then I copied from cell E7 to the range E7:I9 the formula INDIRECT(E$6&”!”&$C7). Figure 23-8 Use the INDIRECT function to create a summary of product sales. Chapter 23 The INDIRECT Function 183 Problems 1. The ADDRESS function yields the actual cell address associated with a row and column. For example, the formula ADDRESS(3,4) yields $D$3. What result would be obtained if you entered the formula =INDIRECT(ADDRESS(3,4))? 2. The workbook P23_2.xlsx contains data for the sales of five products in four regions (East, West, North, and South). Use the INDIRECT function to create formulas that ­enable you to easily calculate the total sales of any combination of consecutively ­numbered products, such as Products 1–3, Products 2–5, and so on. 3. The file P23_3.xlsx contains six worksheets. Sheet 1 contains Month 1 sales for Products 1–4. These sales are always listed in the range E5:H5. Use the INDIRECT function to ­efficiently tabulate the sales of each product by month in a separate worksheet. 4. Write a formula that will total the entries in the cell range G2:K2 even if you insert one or more columns between columns G and K. 5. The file Marketbasketdata.xlsx contains sales of various items. For each row, a 1 in ­columns B through K indicates a purchased item, whereas a 0 marks an item that was not purchased. In the Day Week column, a 1 means the transaction was on a Monday, a 2 means the transaction was on a Tuesday, and so on. For each item listed in K9:K14, calculate the percentage of transactions in which the item was purchased. Also­calculate the fraction of transactions taking place on each day. 6. The file Verizonindirectdata.xlsx contains each employee’s hours of work and employee rating for January–May. Set up a consolidation sheet that enables you to choose any person and then reports that person’s hours of work during each month along with his or her overall rating for the month. Chapter 24 Conditional Formatting Questions answered in this chapter: ■ How can I visually indicate whether recent temperature data is consistent with global warming? ■ How does the Highlight Cells conditional formatting feature work? ■ How do I check or customize my rules? ■ How do data bars work? ■ How do color scales work? ■ How do icon sets work? ■ How can I color-code monthly stock returns so that every good month is indicated in one color and every bad month in another? ■ Given quarterly corporate revenues, how can I indicate quarters in which revenues increased over the previous quarter in one color and quarters in which revenues ­decreased from the previous quarter in another color? ■ Given a list of dates, how can I indicate weekend dates in a specific color? ■ Our basketball coach has given each player a rating between 1 and 10 based on the player’s ability to play guard, forward, or center. Can I set up a worksheet that visually indicates the ability of each player to play the position to which she’s assigned? ■ What does the Stop If True option in the Manage Rules dialog box do? Conditional formatting lets you specify formatting for a cell range on the basis of the ­contents of the cell range. For example, given exam scores for students, you can use conditional formatting to display in red the names of students who have a final average of at least 90. Basically, when you set up conditions to format a range of cells, Microsoft Excel 2010 checks each cell in the range to determine whether any of the conditions you specified (such as exam score>90) is satisfied. Then Excel applies the format you choose for that condition to all the cells that satisfy the condition. If the content of a cell does not satisfy any of the conditions, the formatting of the cell remains unchanged. In Excel 2007, conditional formatting was completely revised and expanded. Excel 2010 adds some minor improvements to conditional formatting. In this chapter, I show you how to use all the conditional formatting features in Excel 2010. 185 186 Microsoft Excel 2010: Data Analysis and Business Modeling To view the conditional formatting options, first select the range you want to format. Then, on the Home tab, in the Styles group, click the Conditional Formatting arrow (see Figure 24-1) to open a menu of conditional formatting options, as shown in Figure 24-2. Figure 24-1 Conditional formatting command. Figure 24-2 Conditional formatting options. ■ ■ ■ Highlight Cells Rules allows you to assign a format to cells whose contents meet one of the following criteria: ❑ Are within a specific numerical range ❑ Match a specific text string ❑ Are within a specific range of dates (relative to the current date) ❑ Occur more than once (or only once) in the selected range Top/Bottom Rules allows you to assign a format to any of the following: ❑ N largest or smallest values in a range ❑ Top or bottom n percent of numbers in a range ❑ Numbers above or below the average of all the numbers in a range Data Bars, Color Scales, and Icon Sets allow you to easily identify large, small, or intermediate values in the selected range. Larger data bars are associated with larger numbers. With color scales you might, for example, have smaller values appear in red and larger values in blue, with a smooth transition applied as values in the range increase from small to large. With icon sets, you can use as many as five symbols to identify different ranges of values. For example, you might display an arrow pointing Chapter 24 Conditional Formatting 187 up to indicate a large value, pointing to the right to indicate an intermediate value, and pointing down to indicate a small value. ■ New Rule allows you to create your own formula to determine whether a cell should have a specific format. For example, if a cell exceeds the value of the cell above it, you could apply the color green to the cell. If the cell is the fifth-largest value in its column, you could apply the color red to the cell, and so on. ■ Clear Rules allows you to delete all conditional formats you have created for a ­selected range or for the entire worksheet. ■ Manage Rules allows you to view, edit, and delete conditional formatting rules, ­create new rules, or change the order in which Excel applies the conditional formatting rules you have set. Answers to This Chapter’s Questions How can I visually indicate whether recent temperature data is consistent with global warming? This question offers a perfect opportunity for applying the Top/Bottom conditional ­formatting rules. The file Globalwarming.xlsx (see Figure 24-4) contains the average world temperatures for the years 1856–2005. (I hid the rows for years 1866–1989.) These temperatures are deviations from a base level of 15 degrees Centigrade. If global warming has occurred, you would expect the numbers in recent years to be larger than the numbers in earlier years. To determine whether recent years are warmer, I first selected the range B3:B152 containing the temperatures. On the Home tab, in the Styles group, I clicked Conditional Formatting and then selected Top/Bottom Rules. Next I selected Top 10 Items and filled in the dialog box as shown in Figure 24-3. Figure 24-3 Highlighting the ten highest temperatures in red. Note Clicking the arrow shown on the right side of Figure 24-3 displays a list of options, i­ncluding Custom Format. Selecting this option displays the Format Cells dialog box, which ­allows you to create a custom format that is applied when the conditional formatting condition is satisfied. 188 Microsoft Excel 2010: Data Analysis and Business Modeling Next I selected the range B3:B152 again and went back to the Top/Bottom Rules. This time I selected Bottom 10 Items and chose to highlight the 10 smallest numbers in orange. You can see in Figure 24-4 that the 10 highest temperatures occurred since 1990, whereas 3 of the 10 lowest temperatures occurred before 1865. In a similar fashion, in column C I highlighted the top 10 percent of the temperatures in red and the bottom 10 percent in green. Finally, in ­column D I highlighted above-average temperatures in green and below-average ­temperatures in red. Note that all years earlier than 1865 had below-average temperatures, whereas all years from 1990 and later have had above-average temperatures. Conditional formatting is a powerful tool that can be used to demonstrate that the Earth (for whatever reasons) seems to have recently become warmer. Figure 24-4 Conditional formatting using Top/Bottom Rules. How does the Highlights Cells conditional formatting feature work? The file Highlightcells.xlsx (see Figure 24-5) demonstrates how the Highlight Cells feature is used. For example, suppose you want to highlight all duplicate names in C2:C11 in red. Simply select the cell range C2:C11, click Conditional Formatting in the Styles group on the Home tab, click Highlight Cells Rules, click Duplicate Values, and then choose Light Red Fill With Dark Red Text. Click OK to apply the rule so that all names occurring more than once (John and Josh) are highlighted in red. Chapter 24 Conditional Formatting 189 Figure 24-5 Using the Highlight Cells Rules option. Now suppose that you want to highlight in red all cells in the range D2:D11 that contain the text “Eric”. Simply select the cell range D2:D11, click Conditional Formatting, click Highlight Cells Rules, and then click Text That Contains. Enter Eric in the left box, and choose Light Red Fill With Dark Red Text on the right. As shown in Figure 24-5, both Eric and Erica are ­highlighted. (Erica, of course, contains the text string “Eric”). Suppose you have a list of dates (such as in E2:E11), and you want to highlight any cell that contains yesterday’s date in green and any other date during the last seven days in red. (See the worksheet Right Way in the file Highlightcells.xlsx.) Assume (as in Figure 24-5) that the current date is September 24, 2010. Note that cell E3 contains the formula =TODAY()–1, so cell E3 always display yesterday’s date. Cell E4 contains the formula =TODAY()–5. I began by selecting the cell range I want to format (E2:E11). Next, I selected the A Date Occurring option and then selected the Yesterday option with Green Fill With Dark Green Text. Then I clicked Conditional Formatting, Highlight Cells Rules, and again chose A Date Occurring. In the A Date Occurring dialog box, this time I selected In The Last 7 Days and Light Red Fill With Dark Red Text. Formatting rules created later have precedence over rules created earlier (unless you change the order of precedence, as explained later in the chapter). This explains why 9/23/2010 is formatted in red rather than green. How do I check or customize my rules? After creating conditional formatting rules, you can view your rules by clicking Manage Rules on the Conditional Formatting menu. For example, select the dates in E2:E11, click Conditional Formatting, click Manage Rules, and you see the rules displayed in Figure 24-6. You can see that the Last 7 Days formatting rule will be applied before the Yesterday ­formatting rule. 190 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 24-6 Conditional Formatting Rules Manager dialog box. In the Conditional Formatting Rules Manager dialog box, you can do the following: ■ Create a rule by clicking the New Rule button. ■ Edit or change a rule by clicking the Edit Rule button. ■ Delete a rule by selecting it and then clicking the Delete Rule button. ■ Change the order of precedence by selecting a rule and then clicking the up arrow or down arrow. To illustrate the use of the Conditional Formatting Rules Manager dialog box, I copied the previous worksheet (simply right-click the worksheet tab, click Move Or Copy, and then select the Create A Copy check box) to the Right Way worksheet of the file Highlightcells.xlsx. I selected the Yesterday rule and clicked the up arrow. The Yesterday rule now has higher precedence than the Last 7 Days rule, so E3 will be formatted green and not red. Figure 24-7 shows how the Conditional Formatting Rules Manager dialog box looks, and Figure 24-8 shows that cell E3 is green and cell E4 is red as we wanted. Figure 24-7 Now Yesterday has a higher priority than Last 7 days. Chapter 24 Conditional Formatting 191 Figure 24-8 After I change the precedence of rules, yesterday is now formatted in green. How do data bars work? When you have a long list of numbers, it’s nice to have a visual indicator that enables you to easily identify large and small numbers. Data bars, color scales, and icon sets (all i­ntroduced in Excel 2007) are perfect tools for displaying differences in a list of numbers. The file Scalesiconsdatabars.xlsx illustrates the use of these tools. Figure 24-9 shows the use of data bars. I began by applying the default data bars to the data in D6:D15. I selected the data in D6:D15, clicked Conditional Formatting, and then clicked Data Bars. Next I selected blue data bars and chose the Gradient Fill option to create the ­format shown in column D of Figure 24-9. Cells containing larger numbers contain longer blue bars. The default option is to associate the shortest data bar with the smallest number in the selected range and the longest data bar with the largest number. As you can see in ­column D, the size of the data bars is directly proportional to the data value; that is, the data bar for 4 is twice as large as the data bar for 2, and so on. Figure 24-9 Visually distinguishing numeric values by using data bars. 192 Microsoft Excel 2010: Data Analysis and Business Modeling If, after clicking Data Bars, you click More Rules, the New Formatting Rule dialog box shown in Figure 24-10 is displayed. (You can also display this dialog box by clicking Manage Rules and then clicking Edit Rule or by double-clicking a rule.) From this dialog box, you can change the criteria used to assign the shortest and longest data bars to cells. In E6:E15, I ­assigned the shortest bar to the number 3 and the longest bar to the number 8. As shown in Figure 24-9, all numbers in column E that are less than or equal to 3 have the shortest bar, all numbers that are greater than or equal to 8 have the longest bar, and the numbers between 3 and 8 have graduated bars. Note that in the Edit Formatting Rule dialog box, you can ­select the Show Bar Only check box to display only the color bar and not the cell value in the conditionally formatted cells. Figure 24-10 Customizing your data bars. Next, in column F, I chose to assign the shortest bar to numbers in the bottom 20 percent of the range F6:F15, and the longest bar to numbers in the top 20 percent. In other words, all numbers <=1+.2(10–1)=2.8 have the shortest data bar, and all numbers >=1+.8(10–1)=8.2 have the longest data bar. Figure 24-9 shows that in column F, the numbers 1 and 2 have the shortest data bar and the numbers 9 and 10 have the longest data bar. In the cell range G6:G13, I associated the shortest data bar with all numbers at or below the twentieth percentile of the data (1), and I associated the longest data bar with all numbers at or above the ninetieth percentile of the data (9). From the Bar Direction list, you can specify whether your data bars begin at the right or left border of the cell. Chapter 24 Conditional Formatting 193 Excel 2010 introduces solid shading for data bars and also allows you to orient data bars ­associated with negative values so that they run in a direction opposite to positive values. The file Negativedatabars.xlsx and Figure 24-11 show how solid data bars appear for a data set containing negative numbers. Figure 24-11 Data bars for negative values with both solid and gradient shading. How do color scales work? Now let’s use color scales to summarize some data sets. Like the Highlight Cells Rules option, a color scale uses cell shading to display the differences in cell values. Here I’ll describe an example of a three-color scale. (The file Colorscaleinvestment.xlsx and Figure 24-12 illustrate the use of a three-color scale. Note that I hid rows 19–75; to unhide them, select rows 18 and 76, right-click the selection, and then click Unhide.) I selected the annual returns on Stocks, T-Bills, and T-Bonds in cells B8:D89. I then clicked Conditional Formatting, Color Scales, and then More Rules to display the Edit Formatting Rule dialog box, which I filled in as shown in Figure 24-13. I chose the color red to indicate the lowest return, green to indicate the highest return, and orange to indicate the return at the midpoint. Amazingly, Excel makes small changes to the color shading of each cell based on the value in the cell. In column B of Figure 24-12, the lowest return is shaded red. Note that 1931 and 2008 (as we all know) were very poor years for stocks. As the returns approach the fiftieth percentile, the cell color gradually changes to yellow. Then, as the returns increase from the fiftieth percentile toward the largest return, the cell color changes from yellow to green. Most of the green and red cells are associated with stocks because annual stock returns are more variable than bond or T-Bill returns. This variability causes large and small stock returns to occur quite frequently. Virtually all annual returns for T-Bills or T-Bonds are yellow because the low variability of annual returns on these investments means that intermediate returns occur most of the time. 194 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 24-12 Three-color scales. Figure 24-13 Customizing a three-color scale. I created some two-color scales in the file Scalesiconsdatabars.xlsx shown in Figure 24-14. I selected the range of cells and then clicked Conditional Formatting, Color Scales. You can ­select the color combination you want from the given list or create your own by clicking More Rules. I chose a two-color scale that indicates lower values in white and higher values in dark blue. ■ In the cell range D19:D28, I chose to make the lowest value white and the highest value blue. As numbers increase, the cell shading becomes darker. Chapter 24 Conditional Formatting 195 ■ In the range E19:E28, I chose to make values less than or equal to 3 white and values greater than or equal to 8 blue. For numbers between 3 and 8, as numbers increase, the cell shading becomes darker. ■ In the range F19:F28, I chose to make values in the bottom 20 percent of the range white and numbers in the top 20 percent blue. For numbers in the middle 60 percent, cell shading becomes darker as numbers increase. ■ In G19:G28, I chose to make values at or below the twentieth percentile of data white and values at or above the eightieth percentile blue. For all other numbers, cell shading becomes darker as numbers increase. Figure 24-14 Two-color scales. How do icon sets work? You can also display numerical differences by using icon sets. (See Figure 24-15 and the file Scalesiconsdatabars.xlsx.) An icon set consists of three to five symbols. You define criteria to associate an icon with each value in a cell range. For example, you might use a down arrow for small numbers, an up arrow for large numbers, and a horizontal arrow for intermediate values. The cell range E32:F41 contains two illustrations of the use of icon sets. For each ­column, I used the red down arrow, the yellow horizontal arrow, and the green up arrow. Figure 24-15 Using an icon set. 196 Microsoft Excel 2010: Data Analysis and Business Modeling Here is how I assigned icons to a range of numerical values. ■ After selecting the numbers in E32:E41, I clicked Conditional Formatting, Icon Sets, and then clicked More Rules and chose the 3 Arrows (Colored) icon set from the Icon Styles list. In column E, I want numbers less than 4 to display a down arrow, numbers from 4 to 8 to display a horizontal arrow, and numbers 8 or larger to display an up arrow. To accomplish this goal, I set the options in the Edit Formatting Rule dialog box as shown in Figure 24-16. ■ In a similar fashion, I set up a formatting rule for F31:F42 so that up arrows are placed in cells containing numbers in the 80th percentile or above of all values (>=8), and down arrows are placed in cells containing numbers in the bottom 20 percent of all v­ alues (<=1). Figure 24-17 displays the needed formatting settings. Figure 24-16 Assigning icons to numerical values. Figure 24-17 Assigning icons to percentile values. Chapter 24 Conditional Formatting 197 Optional settings include Reverse Icon Order, which associates the icons on the left with small numbers and the icons on the right with larger numbers, and Show Icon Only, which hides the contents of the cell. In Excel 2010 you can now hide a subset of icons. You can also customize icon sets. In the worksheet Excel 2010 Icons in the file Historicalinvest.xls, I used three icons to summarize investment returns. The top third of the returns appear with an up gray arrow, the bottom third of the returns contain a down red arrow. I hid the flat arrow icon for the middle third of the returns. Figure 24-18 shows the resulting icons and Figure 24-19 shows the dialog box (accessed from Manage Rules) that I used to create this formatting. I customized the three gray arrow icon set by replacing the down gray arrow with a red arrow. Figure 24-18 Customized icon set with hidden icon. Figure 24-19 Dialog box for customizing and hiding icons. 198 Microsoft Excel 2010: Data Analysis and Business Modeling How can I color-code monthly stock returns so that every good month is indicated in one color, and every bad month in another? The file Sandp.xlsx, shown in Figure 24-20, contains monthly values and returns on the Standard & Poor’s stock index. Suppose that you want to highlight in green each month in which the S&P index went up by more than 3 percent, and to highlight in red each month in which it went down more than 3 percent. I began by moving to cell C10 (the first month containing an S&P return) and selecting all monthly returns by pressing Ctrl+Shift+Down Arrow. Next, I clicked Conditional Formatting, Manage Rules, New Rule, and selected Format Only Cells That Contain. Then I filled in the dialog box as shown in Figure 24-21. I told Excel to format cells in the selected range that are >0.03 and, after clicking Format, I selected the format to use (a green fill). Notice that the lists for fonts and font size aren’t available, so your choice of formatting can’t change these attributes. The Fill tab provides the option to shade cells in a color you choose, and the Borders tab lets you create a border for cells that satisfy your conditional criteria. After clicking OK in the Format Cells dialog box, you return to the Conditional Formatting dialog box. You can now select New Rule again, and in a similar fashion set things up so that all cells containing numbers that are less than –0.03 have a red fill. (See Figure 24-22.) When you click OK, all months with an S&P return that’s greater than 3 percent (see cell C23, for example) are displayed in green, and all months with an S&P return of less than –3 ­percent (see cell C18) are displayed in red. Cells in which the monthly returns don’t meet either of these conditions maintain their original formatting. Figure 24-20 Conditional formatting highlights returns in the S&P stock index. Chapter 24 Conditional Formatting 199 Figure 24-21 Applying special formatting to S&P returns greater than 3 percent. Figure 24-22 Coloring stock returns less than 3 percent in red and greater than 3 percent in green. Here are some useful tips concerning conditional formatting: ■ To delete conditional formatting (or any format) applied to a range of cells, simply select the range of cells, click Conditional Formatting, click Clear Rules, and then click Clear Rules From Selected Cells. ■ To select all the cells in a worksheet to which conditional formatting applies, press F5 to display the Go To dialog box. In the dialog box, click Special, select Conditional Formats, and then click OK. ■ If you want to edit a conditional formatting rule, click Manage Rules, and then ­double-click the rule or click Edit Rules. ■ You can delete a specific conditional formatting rule by clicking Manage Rules, clicking the rule, and then clicking Delete Rule. Notice that after both rules are defined, the red formatting rule is listed first (because it was created more recently than the green formatting rule). In the Conditional Formatting Rules Manager dialog box, rules are listed in order of precedence. In this example, it does not matter which rule is listed first because no cell can satisfy the criteria for both rules. If rules conflict, however, the rule listed first takes precedence. To change the order of conditional formatting rules, select the rule and click the up arrow to move the rule up in precedence, or the down arrow to move the rule down in precedence. 200 Microsoft Excel 2010: Data Analysis and Business Modeling Given quarterly corporate revenues, how can I indicate quarters in which revenues increased over the previous quarter in one color, and quarters in which revenues decreased from the previous quarter in another color? The file Amazon.xlsx contains quarterly revenues (in millions) for Amazon.com during the years 1995–2009. (See Figure 24-23.) We want to highlight quarters in which revenues ­increased over the previous quarter in green and highlight quarters in which revenues ­decreased over the previous quarter in red. Figure 24-23 Highlighting increased sales in green and decreased sales in red. The Use A Formula option in the Conditional Formatting Rules Manager dialog box enables you to specify a formula that defines conditions that Excel checks before it applies formatting to a cell. I’ll use this option in this section, but before I demonstrate the formula option, let’s look at how Excel evaluates some logical functions. The work is in the file Logicalexamples. xlsx. What happens when you type a formula such as =B3<2 in cell B4? If the value in B3 is a ­number smaller than 2, Excel returns the value True in cell B4; otherwise, Excel returns False. You can refer to the file Logicalexamples.xlsx, shown in Figure 24-24, for other examples like this, including combinations of AND, OR, and NOT in formulas. ■ In cell B6, the formula =OR(B3<3, C3>5) returns the value True if either of the ­conditions B3<3 or C3>5 is true. Because the value of C3 is greater than 5, Excel returns True. ■ In cell B7, the formula =AND(B3=3,C3>5) returns True if B3=3 and C3>5. Because B3 is not equal to 3, Excel returns False. In cell B8, however, the formula =AND(B3>3,C3>5) returns True because B3>3 and C3>5 are both true. ■ In cell B9, the formula =NOT(B3<2) returns True because B3<2 would return False, and a not-false value becomes True. Chapter 24 Conditional Formatting 201 Figure 24-24 Logical functions. Now let’s look at how the Use A Formula option allows you to create a conditional ­format in a range of cells. Begin by selecting the range of cells to which you want to a ­ pply a ­conditional format. Then click Conditional Formatting, Manage Rules to display the Conditional Formatting Rules Manager dialog box. Click New Rule, and then select the Use A Formula To Determine Which Cells To Format option (the last option; I also simply call this the formula option). To use the formula option, you enter a formula (the formula must start with an equals sign) that is true if and only if you want the cell in the upper-left corner to be assigned the chosen format. Your logical formula can be copied like an ordinary formula to the remainder of the selected range, so judicious use of dollar signs ($) is needed to ensure that for each cell of the selected range the formula will be true if and only if you want your format to apply to the cell. Click Format, and then enter the formatting you want. Click OK. After clicking OK in the Conditional Formatting dialog box, your formula and formatting are copied to the whole cell range. The formatting is applied to any cell in the selected range that satisfies the condition defined in the formula. Returning to the file Amazon.xlsx, let’s focus on highlighting in green the quarters in which revenues increase. Basically, what you want to do is select the range E6:E61 (there is no prior quarter to which you can compare the revenue figure in cell E5) and then instruct Excel that if a cell’s value is larger than the cell above it, highlight the cell in green. Figure 24-25 shows how to set up the rule. Figure 24-25 Conditional formatting settings that will display in green the quarters in which revenue increased. 202 Microsoft Excel 2010: Data Analysis and Business Modeling If you enter =E6>E5 by pointing to the appropriate cells, be sure you remove the $ signs from the formula in the Conditional Formatting dialog box or the formula won’t be copied. Probably the easiest way to insert or delete dollar signs is to use the F4 key. When you highlight a cell reference such as A3, pressing F4 includes or deletes dollars signs in the following order: A3, $A$3, A$3, $A3. Thus, if you start with $A$3, pressing F4 changes the cell reference to A$3. The formula in this example ensures that cell E6 is colored green if and only if sales in that quarter exceed the previous quarter. After clicking OK, you’ll find that all quarters in which revenue increased are colored green. Notice that in cell E7, for example, the formula was copied in the usual way, becoming =E7>E6. To add the condition for formatting cells in which revenue decreased, select the range E6:E61 again, open the Conditional Formatting Rules Manager dialog box, click New Rule, and then select Use A Formula To Determine Which Cells To Format. Enter the formula =E6<E5, and then click Format. On the Fill tab, change the fill color to red, and then click OK twice. The Conditional Formatting Rules Manager dialog box now appears as shown in Figure 24-26. Figure 24-26 These conditions will display quarters in which revenue increased in green, and quarters in which revenue decreased in red. You can use the formula option with color scales, data bars, and icon sets. Simply select the option when setting the criteria for your color scale, data bars, or icon sets. Given a list of dates, how can I indicate weekend dates in a specific color? The file Weekendformatting.xlsx (see Figure 24-27) contains several dates. I want to highlight all Saturdays and Sundays in red. To do this, I first copied the formula WEEKDAY(C6,2) from cell D6 to D7:D69. Choosing Type=2 for the WEEKDAY function returns a 1 for each Monday, a 2 for each Tuesday, and so on, so that the function returns a 6 for each Saturday and a 7 for each Sunday. Chapter 24 Conditional Formatting 203 Figure 24-27 Using the WEEKDAY function to highlight weekend days in red. I now select the range D6:D69, click Conditional Formatting, and then click Manage Rules. After clicking New Rule and the formula option, I fill in the dialog box as shown in Figure 24-28. Figure 24-28 The Edit Formatting Rule dialog box set up to display weekend days in red. After I click OK, each date having its weekday equal to 6 (for Saturday) or 7 (for Sunday) is colored red. The formula =OR(D6=6,D6=7) implies that a cell entry of 6 or 7 will activate the red font color. Of course, I could have used Format Only Cells That Contain and used >=6 or >5 to obtain the same formatting. 204 Microsoft Excel 2010: Data Analysis and Business Modeling Our basketball coach has given each player a rating between 1 and 10 based on the player’s ability to play guard, forward, or center. Can I set up a worksheet that visually ­indicates the ability of each player to play the position to which she’s assigned? The file Basketball.xlsx, shown in Figure 24-29, contains ratings given to 20 players for each position and the position (1=Guard, 2=Forward, 3=Center) played by each player. The goal here is to fill with red the cell containing the rating for each player for the position to which she’s assigned. Figure 24-29 This worksheet rates each player’s ability to play a position. Begin by selecting the range C3:E22, which contains the players’ ratings. Click Conditional Formatting, Manage Rules. Then click New Rule, and choose the formula option. Now fill in the dialog box as shown Figure 24-30. Figure 24-30 The Edit Formatting Rule dialog box set up to show player ratings in red fill. Chapter 24 Conditional Formatting 205 The formula =$A3=C$1 compares the player’s assigned position to the column heading (1, 2, or 3) in row 1. If the player’s assigned position is set to 1 (Guard), her rating in column C, which is her guard rating, appears in red. Similarly, if the player’s assigned position is set to 2, her forward rating in column D appears in red. Finally, if the assigned position is set to 3, her center rating in column E appears in red. Note that if you do not include the dollar sign with the A and the 1 in the formula, it will not copy down and across correctly. I also want to note that Excel 2010 allows conditional formats created with formulas to ­reference data in other worksheets. In prior versions of Excel you could reference data only in the worksheet where the format was placed. What does the Stop If True option in the Manage Rules dialog box do? Suppose that the Stop If True option is selected for a rule. If a cell satisfies this rule, all lower precedent rules are ignored. To illustrate the use of Stop If True, assume you have created a data bar format, but you don’t want data bars to appear in cells having values greater than or equal to 50. Simply use Manage Rules to add a first format to the cell range that takes effect only if the value of the cell is >=50. Have the first format use an automatic (black) font and select Stop If True for that format. Now, for all cells having values greater than or equal to 50, Excel will stop and not use the data bar format. Problems 1. Using the data in the file Sandp.xlsx, use conditional formatting in the following situations: ❑ Format in bold each month in which the value of the S&P index increased, and underline each month in which the value of the S&P index decreased. ❑ Highlight in green each month in which the S&P index changed by a maximum of 2 percent. ❑ Highlight the largest S&P index value in red and the smallest in purple. 2. Using the data in the file Toysrusformat.xlsx, highlight in red all quarters for which ­revenue has increased over at least the last two quarters. Highlight all fourth-quarter revenues in blue and first-quarter revenues in red. 3. The file Test.xlsx contains exam scores for students. The top 10 students receive an A, the next 20 students receive a B, and all other students receive a C. Highlight the A grades in red, the B grades in green, and the C grades in blue. Hint: The function LARGE(D4:D63,10) gives you the tenth-highest grade on the test. 4. In the file Weekendformatting.xlsx, highlight all weekdays in red. Highlight in blue all days that occur in the first 10 days of the month. 206 Microsoft Excel 2010: Data Analysis and Business Modeling 5. Suppose each worker in Microsoft’s finance department has been assigned to one of four groups. The supervisor of each group has rated each worker on a 0–10 scale, and each worker has rated his satisfaction with each of the four groups. (See the file Satissuper.xlsx.) Based on the group to which each worker is assigned, highlight the ­supervisor rating and the worker satisfaction rating for each worker. 6. The file Varianceanalysis.xlsx contains monthly profit forecasts and monthly actual sales. The sales variance for a month equals: actualsales – predictedsales predictedsales Highlight in red all months with a favorable variance of at least 20 percent, and ­highlight in green all months with an unfavorable variance of more than 20 percent. 7. For our drug cost example from Chapter 22, “The OFFSET Function,” format the ­worksheet so that all Phase 1 costs are displayed in red, all Phase 2 costs are displayed in green, and all Phase 3 costs are displayed in purple. 8. The file Names.xlsx contains a list of names. Highlight all duplicates in green and all names containing Ja in red. 9. The file Duedates.xlsx contains due dates for various invoices. Highlight in red all ­invoices due by the end of the next month. 10. In the file Historicalinvest.xlsx, set up conditional formatting with three icons so that 10 percent of returns have an up arrow, 10 percent have a down arrow, and 80 percent have a horizontal arrow. 11. The file Nbasalaries.xlsx contains salaries of NBA players in millions of dollars. Set up data bars to summarize this data. Players making less than $1 million should have the shortest data bar, and players making more than $15 million should have largest data bar. 12. Set up a three-color scale to summarize the NBA salary data. Change the color of the bottom 10 percent of all salaries to green and the top 10 percent to red. 13. Use five icons to summarize the NBA player data. Create break points for icons at $3 million, $6 million, $9 million, and $12 million. 14. How could you set things up so that no icons are shown for players who have salaries between $7 million and $8 million? Hint: Use the Stop If True option. 15. The file Fractiondefective.xlsx contains the percentage of defective units produced daily. A day’s production is considered acceptable if 2 percent or less of the items ­produced are defective. Highlight all acceptable days with a green flag. In another worksheet, highlight all acceptable days with a red flag. Hint: Use the Stop If True ­option to ensure that no icon occurs in any cell containing a number less than 2. Chapter 24 Conditional Formatting 207 16. Summarize global warming data with a three-color scale. Lower temperatures should be blue, intermediate temperatures should be yellow, and higher temperatures should be red. 17. Suppose you are saving for your child’s college fund. You are going to contribute the same amount of money to the fund at the end of each year. Your goal is to end up with $100,000. For annual investment returns ranging from 4 percent to 15 percent, and number of years investing varying from 5 to 15 years, determine your required annual contribution. Suppose you are able to save $10,000 per year. Use conditional formatting to highlight for each annual return rate the minimum number of years needed to accumulate $100,000. 18. The file Amazon.xlsx contains quarterly revenues for Amazon.com. Use conditional ­formatting to ensure that sales during each quarter are highlighted in a different color. 19. Set up conditional formatting that colors the cell range A1:H8 like a checkerboard, with alternating white and black coloring. Hint: The ROW() function gives the row number of a cell, and the COLUMN() function gives the column number of a cell. 20. When students take Vivian’s accounting exam they are told to enter their e-mail alias on a Scantron. Often they make a mistake. Vivian has a list of the actual e-mail aliases for the students in the class. She would like to highlight in yellow the e-mail aliases ­entered by students that are not true aliases. This will help her easily correct them. The file Scantrons.xlsx contains the necessary data. Help Vivian out! 21. The file Top5.xlsx contains the revenues each year of 50 companies. For each year highlight the companies that have the five largest revenues. Hint: The function LARGE(B1:B50,5) would return the fifth largest number in the range B1:B50. 22. The file Threetimes.xlsx contains a list of names. Highlight in red each name that ­appears at least three times. 23. The file GNP.xlsx contains quarterly U.S. gross national product. Take advantage of the fact that data bars handle negative values to summarize quarterly GNP percentage growth rates. 24. Using the data in the file Globalwarmingtemp.xlsx, highlight the years (not the ­temperatures) in which the temperature is above average. Chapter 25 Sorting in Excel Questions answered in this chapter ■ How can I sort sales transaction data so that transactions are sorted first by ­salesperson, then by product, then by units sold, and finally in chronological order from oldest to most recent? ■ I have always wanted to sort my data based on cell color or font color. Is this possible in Excel 2010? ■ I love the great icon sets described in Chapter 24, “Conditional Formatting.” Can I sort my data based on the icon in the cell? ■ My worksheet includes a column containing the month in which each sale occurred. When I sort by this column, I get either April (first month alphabetically) or October (last month alphabetically) on top. How can I sort by this column so that January ­transactions are on top, followed by February, and so on? ■ Can I sort data without using the Sort dialog box? Almost every user of Microsoft Excel has at one time or another sorted columns of data ­alphabetically or by numerical value. Let’s look at some examples of how wonderful and powerful sorting is in Excel 2010. Answers to This Chapter’s Questions How can I sort sales transaction data so that transactions are sorted first by salesperson, then by product, then by units sold, and finally in chronological order from oldest to most recent? JAC is a small company that sells makeup. The Makeup worksheet in the Makeupsorttemp. xlsx file in the Templates folder for this chapter (see Figure 25-1) contains the following sales transaction information: ■ Transaction number ■ Name of salesperson ■ Date of transaction ■ Product sold 209 210 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Units sold ■ Dollars received ■ Location of transaction Figure 25-1 Sales transaction data before sorting. I want to sort the data so that: ■ Transactions are listed alphabetically by salesperson. I want to sort in the usual A-to-Z order so that all of Ashley’s transactions are first and all of Zaret’s transactions are last. ■ Each person’s transactions are sorted by product. Thus, Ashley’s eye liner transactions will be followed by Ashley’s foundation transactions and so on. ■ For each salesperson and product, transactions are listed by number of units sold (in descending order). ■ If a salesperson makes two or more sales of the same product for the same number of units, transactions are listed in chronological order. In versions of Excel before Excel 2007, it was difficult to sort on more than three criteria. Excel 2007 and Excel 2010 allow you to apply up to 64 criteria in one sort. To sort the sales data, I first need to select the data (cell range E3:K1894). Two easy ways to select this data are as follows: ■ Position the cursor in the upper-left corner of the data (cell E3), and then press Ctrl+Shift+Right Arrow followed by Ctrl+Shift+Down Arrow. ■ Position the cursor anywhere in the cell range and press Ctrl+Shift+*. Chapter 25 Sorting in Excel 211 Next, on the Data tab, in the Sort & Filter group, I click Sort to display the Sort dialog box shown in Figure 25-2. Figure 25-2 Sort dialog box not yet filled in. Because row 3 contains headings for the data columns, I select the My Data Has Headers check box. Now I select the following four criteria in the order shown: 1. Sort by the Name column so that values (this means cell contents) are in A-to-Z order. 2. Sort by the Product column so that values are in A-to-Z order. 3. Sort by the Units column so that values are in order from largest to smallest. 4. Sort by the Date column so that values are in chronological order from oldest to newest. The dialog box now looks like Figure 25-3. Figure 25-3 Sort dialog box set up for the sales sorting example. The final result of our sort is shown in Figure 25-4. 212 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 25-4 Sorted sales transaction data. Note that all of Ashley’s transactions are listed first, with eye liner followed by foundation, and so on. Eye liner transactions are listed from the largest number of units sold to the smallest. In the case of a tie (see rows 6 and 7), the transactions are listed in chronological order. Using the Sort dialog box, you can easily add sort criteria (Add Level), delete sort c­ riteria (Delete Level), copy the settings that define a level of the sort (Copy Level), or specify ­whether your data has headers. By selecting Options, you can make the sort operation case sensitive or even sort data for which each data item is listed in a different column (instead of the more common situation in which each case is in a different row). I have always wanted to sort my data based on cell color or font color. Is this possible in Excel 2010? In Excel 2010, sorting on cell or font color is simple. Consider the Makeup worksheet in the Makeupsorttemp.xlsx file. Several names in column F are highlighted in different colors. For example, Cici in cell F620 is highlighted in red, and Colleen in cell F833 is highlighted in yellow. Suppose you want names with green fill on top, followed by yellow, and then by red, with the rest of the rows on the bottom. To sort the Name column by color, simply select the range you want to sort (E3:K1894), click Sort, and click Add Level. After selecting the Name column, click the Sort On setting, and select Cell Color (selecting Font Color sorts by font ­color). For the first level, select green from the Order list, select yellow for the second level, and select red for the third level. The completed dialog box is shown in Figure 25-5. The resulting sort is shown in the Colors worksheet of the Makeupsort.xlsx file found in the Practice Files folder for this chapter and shown in Figure 25-6. Chapter 25 Sorting in Excel 213 Figure 25-5 Sort dialog box set up to sort by color. Figure 25-6 Results of sorting by color. I love the great icon sets described in Chapter 24, “Conditional Formatting.” Can I sort my data based on the icon in the cell? To sort by icon, simply select Cell Icon from the Sort On list in the Sort dialog box. Then, in the Order list, choose the icon you want on top for the first level and so on. My worksheet includes a column containing the month in which each sale occurred. When I sort by this column, I get either April (first month alphabetically) or October (last month alphabetically) on top. How can I sort by this column so that January transactions are on top, followed by February, and so on? The Dates worksheet in the Makeupsorttemp.xlsx file contains a list of months. (See Figure 25-7.) I would like to sort the months so that they appear in chronological order beginning with January. I begin by selecting the range D6:D15 and sorting column D by values. When selecting the order, I select Custom List and then select the option beginning with 214 Microsoft Excel 2010: Data Analysis and Business Modeling January, February, March. Note that you could also have sorted by the day of the week. The completed dialog box is shown in Figure 25-8, with the resulting sort shown in Figure 25-9. Note that in the Custom Lists dialog box you can create a custom sort order list. Simply ­select New List, under List Entries type the entries in the order you want to sort by, and then click Add. Your new list is now included as a menu selection. For example, if you enter Jack, John, and Alan in List Entries (on different lines or separated by commas), all entries with Jack would be listed first, followed by John listings, with Alan listings at the end. Figure 25-7 Months to be sorted. Figure 25-8 The Sort dialog box set up to sort by month. Figure 25-9 Months sorted in chronological order. Chapter 25 Sorting in Excel 215 Can I sort data without using the Sort dialog box? Sometimes sorting data without using the Sort dialog box is more convenient. To illustrate how this is done, suppose again that you want to sort the sales transaction data in the Makeup worksheet in the Makeupsort.xlsx file so that transactions are sorted first by salesperson, then by product, then by units sold, and finally in chronological order from the oldest to the most recent. To begin, select the least important column to sort on first, which is the date column (G3:G1894). Next, in the Sort & Filter group on the Data tab, click the Sort A To Z button (see Figure 25-10) and, with the Expand The Selection option selected, click Sort so that all the columns are sorted. The Sort A To Z button sorts numerical data so that the smallest numbers or oldest dates are on top, and sorts text so that A precedes B and so on. Figure 25-10 Sorting. The Sort Z To A button, of course, sorts numerical data so that the largest numbers or most recent dates are on top, and sorts text data so that Z precedes Y. Next, sort by the second least important column (Units) Z To A because you want larger sales on top. Then sort from A to Z by Product, and finally from A to Z by salesperson. These steps achieve the same results as shown in Figure 25-4. Problems 1. In the Makeupsort.xlsx file, sort the sales data alphabetically by location, then by ­product type, then by name, then by date of sale, and finally by units sold. 2. The Sortday.xlsx file contains hours worked on different days of the week. Sort the data so that Monday data is followed by Tuesday data and so on. 3. The Sorticons.xlsx file contains annual investment returns with an up arrow used to ­indicate good years, a horizontal arrow used to indicate average years, and a red arrow used to indicate bad years. Sort the data by the icons in the Stock column with up ­arrows on top, followed by horizontal arrows, and then red arrows. 4. The file Makeupsortfont.xlsx contains our makeup data with certain dates shown in blue, red, or brown font. Sort the data so that brown dates are on top, followed by red dates, and then blue dates. Chapter 26 Tables Questions answered in this chapter: ■ I have entered in a worksheet the number of units sold and total revenue for each salesperson, and I can easily compute average price for each salesperson. How can I create a nice format that is automatically copied if I enter new data? Also, is there an easy way to automatically copy my formulas when new data is added? ■ I have entered in my worksheet several years of natural gas prices, and I created a nice line chart displaying the monthly variation in prices. Can I set things up so that when I add new gas price data, my chart automatically updates? ■ For each sales transaction, I have the salesperson, date, product, location, and size of the transaction. Can I easily summarize, for example, total lipstick sales in the East made by Jen or Colleen? ■ How can I easily refer to portions of a table in other parts of my workbook? ■ Do conditional formats automatically apply to new data added to a table? When most of us use Microsoft Excel, we often enter new data. Then we manually update our formulas, formats, and charts. What a drag! Now the Excel 2010 table capabilities make this drudgery a thing of the past. Answers to This Chapter’s Questions I have entered in a worksheet the number of units sold and total revenue for each ­salesperson, and I can easily compute average price for each salesperson. How can I ­create a nice format that is automatically copied if I enter new data? Also, is there an easy way to automatically copy my formulas when new data is added? The file Tableexampletemp.xlsx in the Templates folder for this chapter (see Figure 26-1) ­contains units sold and revenue data for each of six salespersons. You know that new data will be added beginning in row 12. Also, in column H, you would like to calculate the average price (Units/Revenue) earned by each salesperson. You would like to create an attractive format for the data and have the formula for average price copied down automatically as new data is added. 217 218 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 26-1 Data for creating a table. Creating a table allows your analysis and formatting to be automatically updated when you add data. Begin by selecting the current range of data (E5:G11), including headers. Next, click Table on the Insert tab or press Ctrl+T. After selecting the My Table Has Headers check box, you will see that the table range (E5:G11) is formatted beautifully. This formatting will continue automatically whenever new data is entered into the table. When you are working in a table, many styles and options are available on the Design tab. (See Figure 26-2.) You can select a formatting style that will be applied as new data is added to the table. Note that the column headings have arrows, as you can see in Figure 26-3. These arrows work as filters that can be used to sort or filter the table. (More on filtering later in this chapter.) Figure 26-2 Table design options. Figure 26-3 Formatted table with filters. The cells in the selected table (excluding the headers) are given the name Table1 by d ­ efault. I changed the name to Sales in the Properties group on the Design tab. If you click the Formulas tab and then click Name Manager, you can see that range E6:G11 is named Sales. The beauty of this range name (and the table) is that the range dynamically expands to include new rows added to the bottom of the table and new columns added to the right of the table. In Chapter 22, “The OFFSET Function,” I used the OFFSET function to create a dynamic range, but the new table capabilities make creation of a dynamic range a snap. Chapter 26 Tables 219 Suppose that in D15 you want to compute total revenue. Begin by typing =SUM(S. Excel ­offers you the option to automatically complete the entry with the table range Sales. I implemented Autocomplete by double-clicking the range name. You can also implement Autocomplete by moving the cursor to Sales and pressing the Tab key. Then, when you see =SUM(Sales and type an opening bracket ( [ ), Formula AutoComplete offers the option to complete the formula with column headings from the Sales table. (See Figure 26-4.) You can complete your formula as =SUM(Sales[Revenue]) and calculate total revenue as $155,480. (See Figure 26-5.) (You will see an example of selecting the entries in the AutoComplete box that begin with number signs (#) later in this chapter.) Figure 26-4 AutoComplete options for a table. Figure 26-5 Total revenue for original data. If new rows of data are added, the data in these rows is automatically accounted for in the formula. To illustrate this idea, you can add new data in row 12: Amanda sold 400 units for $5,000. As shown in Figure 26-6, the total revenue has increased by $5,000 to $160,480. The formatting has been extended to row 12 as well, and the total revenue formula has been updated to include Amanda’s data. Even if data is added within the table (instead of at the bottom), everything will be updated in a consistent fashion. 220 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 26-6 New data added to table in row 12. Now suppose that you want to compute in column H the price per unit earned by each salesperson. Simply type Unit Price in H5 as the column heading, and then in cell H6 type =SALES[. In the AutoComplete list, click Revenue. The formula is now =SALES[Revenue]. Type a slash (/), and use Formula AutoComplete to complete the ­formula as =SALES[Revenue]}/Sales[Units]. An amazing thing happens. Excel automatically copies the formula down to the bottom of the table in cell H12, as shown in Figure 26-7. If you go to any cell in column H, the formula appears as [@Revenue]/[@Units]. Of course, =[@Revenue]/[@Units] is a lot easier to understand than =G6/F6. This formula can be ­interpreted as taking whatever is in the current row in the Revenue column and dividing it by whatever is in the current row in the Units column. Figure 26-7 Unit price formula autocopy. If you click anywhere in a table, the Table Tools contextual tab appears on the ribbon and offers choices including the following: ■ Change Table Name Can be used to rename a table. I changed the name from Table1 (the default) to Sales. ■ Convert to Range Converts the table range to normal cells and removes the table structure. ■ Resize Table ■ Remove Duplicates Removes rows that contain duplicates. For example, selecting only the Name column in the Remove Duplicates dialog box ensures that a name will not occur more than once. Checking both the Names and Units columns ensures that no rows in the table will match both Name and Units, and so on. Adds or subtracts rows and/or columns to the defined table range. Chapter 26 Tables 221 If checked, displays the header row . If unchecked, the header row is not ■ Header Row displayed. ■ Total Row I discuss the total row later in this chapter. ■ First Column If checked, applies a special format to the first column of the table. ■ Last Column If checked, assigns a special format to the last column of the table. ■ Banded Rows If checked, gives the even-numbered rows in the table a different ­format than odd-numbered rows. ■ Banded Columns If checked, gives odd-numbered columns in the table a different format than even-numbered columns. ■ Table Styles Select from any of the table formats shown in this group. Of course, if the table expands or contracts, the format will adjust appropriately. I have entered in my worksheet several years of natural gas prices, and I created a nice line chart displaying the monthly variation in prices. Can I set things up so that when I add new gas price data, my chart automatically updates? In the file Gasprices507.xlsx, the worksheet Original contains natural gas prices per thousand feet from July 2002 through December 2004. (See Figure 26-8.) As I previously described, you can select B5:C34 (containing months and prices) and press Ctrl+T to create a table from this range. Then you can create a line graph to display this data by clicking Line in the Charts group on the Insert tab and selecting the fourth type of line graph. The line graph I created is shown in Figure 26-9. Figure 26-8 Gas price data: 2002–2004. 222 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 26-9 Gas price line graph: 2002–2004 data. Next, I copied this worksheet (by right-clicking the worksheet name, clicking Move Or Copy Sheet, and then clicking Make A Copy) and added gas prices through July 2006. (The data now extends to row 53.) I named the new worksheet New Data. Note the line graph in this worksheet automatically updates to include the new data. (See Figure 26-10.) Figure 26-10 Gas price line graph: 2002–2006 data. This example illustrates that if you create a table of your data before creating a chart, new data will automatically be included in the chart. For each sales transaction I have the salesperson, date, product, location, and size of the transaction. Can I easily summarize, for example, total lipstick sales in the East made by Jen or Colleen? The file Tablemakeuptemp.xlsx contains sales transactions. (See Figure 26-11.) For each ­transaction, I have the following information: transaction number, name, date, product, ­location, dollars, and units sold. If I format this data as a table, I can add a total row for the Units and Dollars columns and then use the filter arrows to make the total row include the subset of transactions I want. To begin, place the cursor anywhere within the data and create a table by pressing Ctrl+T. Note that if you scroll through the table, the header row remains Chapter 26 Tables 223 visible. With the cursor in the table, select the Total Row check box in the Table Style Options group on the Design tab. By default, Excel will enter the total number of rows in the table in cell K1895, which you can delete. Click the arrows to the right of cells I1895 and J1895, and then click Sum. This totals all entries in columns I and J of the table. Thus, currently the total revenue is $239,012.67, and 78,707 units were sold. (See Figure 26-12 and the file Tablemakeuptotals.xlsx.) Figure 26-11 Makeup sales data. Figure 26-12 Total revenue and units sold. To make the totals reflect only lipstick sales in the East made by either Jen or Colleen, click the arrow in F3 (to the right of the Name header). Clear the Select All box so that no names are selected. Then select the check boxes for Colleen and Jen (see Figure 26-13), and click OK. Next, click the Product arrow and select the lipstick check box, and then click the Location arrow and select the East check box. Use the same approach to show only lipstick in the Product column and only East in the location column. You now see all the data fitting the 224 Microsoft Excel 2010: Data Analysis and Business Modeling ­ ltering criteria in Figure 26-14 and in the file Tablemakeupfinal.xlsx. You’ll see that Colleen fi and Jennifer sold 497 units of lipstick in the East for a total of $1,515.89. This table filtering feature makes it a snap to easily compute totals for any subset of rows in an Excel worksheet. If you want, you can also copy the rows involving Colleen or Jen selling lipstick in the East and paste them elsewhere. Figure 26-13 Selecting names from the table. Figure 26-14 Filtered subtotals for units and revenue. Chapter 26 Tables 225 How can I easily refer to portions of a table in other parts of my workbook? The file Tablestructure.xlsx shows many examples of how you can refer to parts of a table when you are working outside the table’s range. These references are often called structured references. (See Figure 26-15.) When you enter a table name into a formula, AutoComplete makes the column names and the following table specifiers available for selection: All cells in the table, excluding the header and total rows. ■ Table Name ■ #All ■ #Data All cells in the table except for the first row and the total row. ■ #Headers ■ #Totals Just the total row. If there is no total row, this returns an empty cell range. ■ #This Row All cells in the table, including the total row (if any). Just the header row. All table entries in the current row. A column reference includes all cells in a table column, excluding the header and total row entries (if any). Here are some examples of how table specifiers can be used in formulas: ■ In cell C15, the formula =COUNTA(Table1[All#]) yields 55 because the table contains 55 entries. ■ In cell C16, the formula =COUNTA([Table1]) yields 45 because the header and total rows are not counted. In cell C17, the formula =COUNTA(Table[#data]) yields 45 ­because the cell range D5:H13 is referenced. ■ In cell C18, the formula =COUNTA(Table1[#Headers]) yields 5 because only the header row (D4:H4) is referenced. ■ In cell C19, the formula =SUM(Table1[Q1]) yields 367 because the formula sums the ­entries in E5:E13. ■ In cell C20, the formula =SUM(Table1[#Totals]) sums up all entries in the total row and yields 1,340, which is the total sum of all table entries. ■ In cell C21, the formula =SUM(Table1[[Data#],[Q1]:[Q3]]) sums up all data entries that are in columns Q1:Q3, inclusive (cells E5:G13). Thus, column names separated by a colon include all data entries between and including the column name before the colon and the column name after the colon. ■ In cell B8, the formula =SUM(Table1[#This Row]) sums the entries in row 8 (41+28+49+40). Of course, all of these formulas are automatically updated if new data is added to the table. 226 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 26-15 Structured references. Do conditional formats automatically apply to new data added to a table? Yes, conditional formats will automatically include new table data. (See Figure 26-16.) To ­illustrate, I placed in worksheet Original of file Tablestructure.xlsx a conditional format to highlight the three largest Q1 sales in column E. Then entries in rows 7, 12, and 13 are highlighted. In worksheet Add Biggersale, I added in cell E14 the entry 90. This becomes the largest entry in the column and is immediately highlighted. Cell E7 is no longer highlighted because it is no longer one of the three largest numbers in column E of the table. Figure 26-16 Conditional formatting extends automatically to new table data. Chapter 26 Tables 227 Problems 1. The file Singers.xlsx contains a list of songs sung by different singers, as well as the length of each song. Set up your worksheet to compute the total number of songs sung by Eminem and the average length of each song. Of course, if new data is added, your formulas should automatically update. 2. In the file Tableexample.xlsx, set things up so that each salesperson’s rank in regards to total revenue and units sold is included in the worksheet. Of course, if new data is included, your ranks should automatically update. You might find it convenient to use the RANK.EQ function. The syntax of the RANK function is =RANK.EQ(number,array,0). This function yields the rank of a number in a range array, with rank=1 being the largest number. 3. The file Lookupdata.xlsx contains product codes and prices. Set up the worksheet so that a product code can be entered and your worksheet will return the product price. Of course, when new products are introduced, your formula should still work. 4. The file Productlookup.xlsx contains the product sales made each day of the week. Set up a formula that returns the sale of any product on any given day. Of course, if new products are added to the data, your formula should be able to include sales for those products. 5. The file Tablepie.xlsx contains sales information for different products sold in a small general store. You want to set up a pie chart to summarize this data. Of course, if new product categories are added, the pie chart should automatically include the new data. 6. The file Tablexnpvdata.xlsx lists cash flows received by a small business. Set up a ­formula to compute (as of January 5, 2007) the NPV of all cash flows. Assume an ­annual discount rate of 10 percent. Of course, if new cash flows are entered, your formula should automatically include them. 7. The file Nikedata.xlsx contains quarterly sales revenues for Nike. Create a graph of Nike sales that automatically includes new sales revenue data. 8. For the data in file Tablemakeuptemp.xlsx, determine total units and revenue for all lip gloss or lipstick sold by Jen or Ashley in the South or East. 9. The file Closest.xlsx contains people’s names and salaries. Set up a worksheet that takes any number and finds the person whose salary is closest to that number. Your worksheet should accomplish this goal even if new names are added or existing names are deleted from the list. 10. The file Adagency.xlsx contains salaries and ages for employees of an ad agency, Set up a spreadsheet that will compute the average salary and age of the agency’s employees. Of course, your calculations should automatically update if the agency hires or fires workers. Chapter 27 Spin Buttons, Scroll Bars, Option Buttons, Check Boxes, Combo Boxes, and Group List Boxes Questions answered in this chapter: ■ I need to run a sensitivity analysis that has many key inputs, such as Year 1 sales, annual sales growth, Year 1 price, and unit cost. Is there a way I can quickly vary these inputs and see the effect of the variation on the calculation of net present value, for example? ■ How do I set up a simple check box that toggles conditional formatting on and off? ■ How can I set up my worksheet so that my supply-chain personnel can click a button to choose whether we charge a high, low, or medium price for a product? ■ How can I create an easy way for a user of my worksheet to enter a day of the week without having to type any text? User forms enable a user of Microsoft Excel 2010 to add a variety of cool, useful controls to a worksheet. In this chapter, I show you how easy it is to use spin buttons, scroll bars, check boxes, option buttons, combo boxes, and list boxes. To access Excel user forms, on the Developer tab on the ribbon, click Insert in the Controls group to display the forms controls (not to be confused with ActiveX Controls, which are usually used within the Microsoft Visual Basic for Applications [VBA] programming language.) Note To display the Developer tab, click the File tab, and then click Options. Click Customize Ribbon, and then select Developer in the Main Tabs list. The user forms I discuss are shown in Figures 27-1 through 27-7. (See also the file Controls.xlsx in the Practice files folder for this chapter.) Figure 27-1 Spin button. 229 230 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 27-2 Scroll bar. Figure 27-3 Check box. Figure 27-4 Option button. Figure 27-5 Group box. Figure 27-6 Combo box. Figure 27-7 List box. Answers to This Chapter’s Questions I’ll begin by showing you how to use spin buttons and scroll bars. As I discussed in Chapter 19, “Using the Scenario Manager for Sensitivity Analysis,” the Scenario Manager lets you change a group of input cells to see how various outputs change. Unfortunately, the Scenario Manager requires you to enter each scenario individually, which makes creating more than a few scenarios difficult. For example, suppose you believe that four key inputs to the car net present value (NPV) model are Year1 sales, Sales growth, Year1 price, and Year1 cost. (See the file NPVspinners.xlsx.) You’d like to see how NPV changes as the inputs change in the following ranges: Chapter 27 Spin Buttons, Scroll Bars, Option Buttons, Check Boxes, Combo Boxes, and Group List Boxes Input Low value High value Year 1 sales $5,000 $30,000 Annual sales growth 0% 50% Year 1 price $6 $20 Year 1 cost $2 $15 231 Using the Scenario Manager to generate the scenarios in which the input cells vary within the given ranges would be very time-consuming. By using spin buttons, however, a user can quickly generate a host of scenarios that vary each input between its low and high value. A spin button is a control that is linked to a specific cell. As you click the up or down arrow on the spin button, the value of the linked cell changes. You can see how formulas of interest (such as one that calculates a car’s NPV) change in response to changes in the inputs. I need to run a sensitivity analysis that has many key inputs, such as Year 1 sales, annual sales growth, Year 1 price, and Year 1 unit cost. Is there a way I can quickly vary these inputs and see the effect of the variation on the calculation of net present value, for example? Here’s how to create spin buttons that allow you to vary Year1 sales, sales growth, Year1 price, and Year1 cost within the ranges you want. The Original Model worksheet (see the file NPVspinnerstemp.xlsx in the Templates folder) is shown in Figure 27-8. Figure 27-8 The Original Model worksheet without any spin buttons To create the spin buttons, select the rows in which you want to insert spin buttons (I used rows 2–5 in this example), and then increase the height of the rows by right-clicking and selecting Format, Row, and then Height. A row height of 27 is usually enough to accommodate the spin button arrows. Alternatively, hold down the Alt key while you draw the control so that it fits the cell. 232 Microsoft Excel 2010: Data Analysis and Business Modeling Display the User Forms menu by clicking Insert in the Controls group on the Developer tab. Click the spin button form control (shown in Figure 27-1), and drag it to where you want it to appear in your worksheet (cell D2). You will see a plus sign (+). Clicking the mouse button ­anchors the spin button where you want it and allows you to draw the shape for the spin button. To change the shape of a form control or to move the control, place the cursor on the control and hold down the Ctrl key. When the pointer turns into a four-headed arrow, drag the control to move it. When the pointer appears as a two-headed arrow, you can drag the control to resize it. A spin button now appears in cell D2. You can use this spin button to change the value of Year1 sales. Right-click the spin button, and on the shortcut menu click Copy. Right-click cell D3, and then click Paste. Also paste the spin button into cells D4 and D5. You should now see four spin buttons as shown in Figure 27-9. Figure 27-09 Spin buttons placed in worksheet cells. Now you need to link each spin button to an input cell. To link the spin button in D2 to cell C2, right-click the spin button in cell D2, and then click Format Control. Fill in the Format Control dialog box as shown in Figure 27-10. Figure 27-10 Use the Format Control dialog box to link Year1 sales to a spin button. Chapter 27 Spin Buttons, Scroll Bars, Option Buttons, Check Boxes, Combo Boxes, and Group List Boxes 233 The current value is not important. The rest of the settings tell Excel that this spin button is linked to the values in cell C2 (Year1 sales), that each click on the up arrow will increase the value in C2 by 1,000, and that each click on the down arrow will decrease the value in C2 by 1,000. When the value in C2 reaches 30,000, clicking the up arrow will not increase it; when the value in C2 reaches 5,000, clicking the down arrow will not decrease the value in cell C2. Next, use the Format Control dialog box to link the spin button in D4 to Year1 price (cell C4). For the current value, I used 9. The minimum value is 6, the maximum value is 20, and the incremental change is 1. Clicking the spin button arrows in cell D4 varies the Year1 price ­between $6 and $20 in $1 increments. To link the spin button in cell D5 to Year1 cost (cell D5), I used 6 for the current value, 2 for the minimum value, 15 for the maximum value, and 1 as the incremental change. Clicking the spin button arrows in cell D5 changes Year1 cost from $2 to $15 in $1 increments. Linking the spin button in cell D3 to Sales growth is trickier. We want the spin button c­ ontrol to change sales growth to 0 percent, 1 percent, … 50 percent. The problem is that the minimum increment a spin button value can change is 1. Therefore, you need to link this spin button to a dummy value in cell E3 and place the formula E3/100 in cell C3. Now, as cell E3 varies from 1 to 50, sales growth varies between 1 percent and 50 percent. Figure 27-11 shows how to link this spin button to cell E3. Remember that sales growth in cell C3 is simply the number in cell E3 divided by 100. Figure 27-11 The Format Control dialog box settings that link the spin button in cell D3 to cell E3. By clicking a spin button arrow, you can easily see how changing a single input cell—given the values for the other inputs listed in the worksheet—changes the car’s NPV. To see the effect of the changes, you can select cell F9, click Freeze Panes on the View menu, and then 234 Microsoft Excel 2010: Data Analysis and Business Modeling click Freeze Panes again. This command freezes the data above row 9 and to left of column F. You can now use the scroll bars on the right of the window to arrange it as you see it in Figure 27-12. Figure 27-12 You can freeze panes to see the results of calculations in other parts of a worksheet. Given the values of the other inputs, clicking the sales growth spin button arrows shows that a 1-percent increase in sales growth is worth about $2,000. (To return the worksheet to its normal state, click Freeze Panes on the View menu, followed by Unfreeze Panes.) The scroll bar control is very similar to the spin button. The main difference is that by moving the cursor over the gray area in the middle of the scroll bar, you can cause the linked cell to continuously change in value. By selecting Format Control on the shortcut menu and changing the value under Page Change in the Format Control dialog box, you can control the speed with which the linked cell changes. How do I set up a simple check box that toggles conditional formatting on and off? A check box is a form control that specifies a value of True in a cell when the box is checked and False when the box is clear. Check boxes can be used to create toggle switches that turn a particular feature on or off. As an example, I will show how to use a check box to turn the conditional formatting feature on or off. Suppose a worksheet contains monthly sales and you want to color the five largest sales in green and the five smallest sales in red. (See the file Checkbox.xlsx.) You enter in cell G4 the formula =LARGE(Sales,5), which computes the fifth-largest sales value. Then, in cell H4, you compute the fifth-smallest sales value with the formula =SMALL(Sales,5). (See Figure 27-13.) Chapter 27 Spin Buttons, Scroll Bars, Option Buttons, Check Boxes, Combo Boxes, and Group List Boxes 235 Figure 27-13 Using a check box to turn conditional formatting on and off. Next, you create a check box and configure it to enter True or False in cell F1. On the Developer tab, click Insert and select the check box (see Figure 27-3) from the Forms Controls palette. Drag the check box to cell G9, and change its text to read Turn Formatting On Or Off. Then right-click the check box, click Format Control, and fill in the dialog box as shown in Figure 27-14. Figure 27-14 The Format Control dialog box for a check box. Now, whenever you select the check box, True is placed in F1, and whenever you clear the check box, False is placed in cell F1. 236 Microsoft Excel 2010: Data Analysis and Business Modeling After selecting the cell range D4:D29, click Conditional Formatting in the Styles group on the Home tab, and then click New Rule. Enter the formulas shown in Figures 27-15 and 27-16 to color the top five sales green and the bottom five sales red. Note that the AND($F$1) p ­ ortion of the formula ensures that the formatting can be applied if cell F1 is True. Of course, the check box determines whether cell F1 is True or False, so if the check box is not selected, the cells will not turn green or red. Figure 27-15 Format to turn five largest cells green. Figure 27-16 Format to turn five smallest cells red. If you want, you can select cell F1 and change the font color to white to hide True and False. Chapter 27 Spin Buttons, Scroll Bars, Option Buttons, Check Boxes, Combo Boxes, and Group List Boxes 237 How can I set up my worksheet so that my supply-chain personnel can check a button to choose whether we charge a high, low, or medium price for a product? Let’s suppose that you can charge one of three prices for a product: high, medium, or low. These prices are listed in cells B7:B9 of the file Optionbuttons.xlsx. You could easily use a lookup table to print the price if a user typed in High, Medium, or Low. It’s better design, however, if the user can select an option button that says High Price, Medium Price, or Low Price, and then have a formula automatically compute the price. (See Figure 27-17.) To use option buttons, you first draw a group box (see Figure 27-5) after choosing this ­control from the User Forms menu. Then you drag an option button for each choice into the group box. Because you have three price levels, you need to drag three option buttons into the group box. Right-click any option button, and then use the Format Control command to link any one of the option buttons to a cell. I linked the first option button to cell E4. All of the option buttons in the group box are now linked to the same cell. Selecting the first option button will enter a 1 in cell E4, selecting the second option button will enter a 2 in cell E4, and selecting the third option button will enter a 3 in cell E4. Entering the formula =INDEX(A7:A9,E4,1) in cell E7 returns the price description corresponding to the selected option button. In cell F7, the formula =VLOOKUP(E7,A7:B9,2,FALSE) ­computes the price corresponding to the selected option button. Figure 27-17 Using option buttons to select product price. 238 Microsoft Excel 2010: Data Analysis and Business Modeling How can I create an easy way for a user of my spreadsheet to select a day of the week without having to type any text? The file Combobox.xlsx shows how to use a combo box or a list box (see Figure 27-18) to ­allow a user to easily select an item from a list. (Data validation also makes it easy to create drop-down boxes; see Chapter 40, “Validating Data.”) The goal here is to compute the ­number of hours an employee worked on a given day. The hours worked each day are listed in cells G9:G15. A combo box or list box allows you to select an entry from a list. If the combo box or list box is linked to a cell (via Format Control), then, if the first entry in the box is selected, a 1 is placed in the linked cell; if the second entry in the list is selected, a 2 is entered in the linked cell, and so on. To set up the worksheet, display the Developer tab, click Insert, and then drag a combo box from the Form Controls menu to C5 and a list box to B14. R ­ ight-click the combo box and click Format Control. Select the input range F9:F15 (this contains days of the week) and link cell A8. Now right-click the list box and select Format Control. Select the input range F9:F15 and link the cell A13. After these steps, if you select Tuesday from the combo box and Friday from the list box, for example, you see a 2 in A8 and a 5 in A13. In cell F3, the formula =INDEX(F9:F15,A8,1) lists the day of the week corresponding to the combo box selection. In cell G3, the formula =VLOOKUP(F3,$F$9:$G$15,2,False) locates the number of hours worked for the day selected in the combo box. In a similar fashion, the ­formulas in F4 and G4 list the day of the week and hours worked for the day selected in the list box. Figure 27-18 Using combo boxes and list boxes. Chapter 27 Spin Buttons, Scroll Bars, Option Buttons, Check Boxes, Combo Boxes, and Group List Boxes 239 Problems 1. Add a spin button for the car NPV example that allows you to vary the tax rate ­between 30 percent and 50 percent. 2. Add a spin button for the car NPV example that allows you to vary the interest rate ­between 5 percent and 20 percent. 3. The Format Control dialog box allows a minimum value of 0. Despite this limitation, can you figure out a way to use a spin button to vary sales growth between –10 percent and 20 percent? 4. Using the lemonade example in Chapter 17, “Sensitivity Analysis with Data Tables,” ­create spin buttons that allow the inputs to vary within the following ranges: Input Low value High value Price $2.00 $5.00 Unit cost $0.20 $1.00 Fixed cost $20,000.00 $100,000.00 5. Using the mortgage payment example in Chapter 17, create spin buttons that allow ­inputs to vary within the following ranges: Input Low value High value Amount borrowed $270,000 $800,000 Number of months of payments 120 360 Annual interest rate 4% 10% 6. For the weekend example used in Chapter 24, “Conditional Formatting,” set up a check box that turns conditional formatting on or off. 7. In the financial formulas described in Chapter 10, “More Excel Financial Functions,” I used a last argument of 1 to indicate end of month cash flows and 0 to indicate beginning of month cash flows. Excel recognizes True as equivalent to a 1 and False as equivalent to 0. Set up a worksheet in which a user can enter the number of months in a loan, principal, and annual interest rate to find the monthly payment. Then use a check box to select whether the payments are at the beginning or end of the month. 8. The file Quarterly.xlsx contains quarterly sales at different department stores. Use ­option buttons to select the quarter and a list box to select the product. Your ­worksheet should then compute sales at a specified store during a specific quarter. 240 Microsoft Excel 2010: Data Analysis and Business Modeling 9. Using the data for Problem 15 in Chapter 22, “The OFFSET Function,” create a spinner that lets you graph the last few months of sales (ranging from 3 to 8 months). 10. The file Suppliers.xlsx contains the unit price you pay to each of your suppliers and the units purchased. Create a list box that allows you to pick the supplier and returns the unit price and units purchased. Chapter 28 An Introduction to Optimization with Excel Solver In many situations, you want to find the best way to do something. More formally, you want to find the values of certain cells in a worksheet that optimize (maximize or minimize) a ­certain objective. The Microsoft Excel Solver helps you answer optimization problems such as the following: ■ How can a large drug company determine the monthly product mix at its Indianapolis plant that maximizes corporate profitability? ■ If Microsoft produces Xbox consoles at three different locations, how can it minimize the cost of meeting demand for them? ■ What price for Xbox consoles and games will maximize Microsoft’s profit from Xbox sales? ■ Microsoft would like to undertake 20 strategic initiatives that will tie up money and skilled programmers for the next five years. It does not have enough resources for all 20 projects; which ones should it undertake? ■ How do bookmakers find the best set of ratings for NFL teams in order to set accurate point spreads? ■ How should I allocate my retirement portfolio among high-tech stocks, value stocks, bonds, cash, and gold? An optimization model has three parts: the target cell, the changing cells, and the ­constraints. The target cell represents the objective or goal. You want to either minimize or maximize the amount in the target cell. In the question about a drug company’s product mix given earlier, the plant manager would presumably want to maximize the profitability of the plant during each month. The cell that measures profitability would be the target cell. The target cells for each situation described at the beginning of the chapter are listed in Table 28-1. Keep in mind, however, that in some situations you might have multiple target cells. For ­example, Microsoft might have a secondary goal to maximize Xbox market share. 241 242 Microsoft Excel 2010: Data Analysis and Business Modeling Table 28-1 List of Target Cells Model Maximize or minimize Target cell Drug company product mix Maximize Monthly profit Xbox shipping Minimize Distribution costs Xbox pricing Maximize Profit from Xbox consoles and games Microsoft project initiatives Maximize Net present value (NPV) contributed by selected projects NFL ratings Minimize Difference between scores predicted by ratings and actual game scores Retirement portfolio Minimize Risk factor of portfolio Changing cells are the worksheet cells that you can change or adjust to optimize the target cell. In the drug company example, the plant manager can adjust the amount produced for each product during a month. The cells in which these amounts are recorded are the changing cells in this model. Table 28-2 lists the appropriate changing cell definitions for the models described at the beginning of the chapter, and Table 28-3 lists the problem constraints. Table 28-2 List of Changing Cells Model Changing cells Drug company product mix Amount of each product produced during the month Xbox shipping Amount produced at each plant each month that is shipped to each customer Xbox pricing Console and game prices Microsoft program initiatives Which projects are selected NFL ratings Team ratings Retirement portfolio Fraction of money invested in each asset class Table 28-3 List of Problem Constraints Model Constraints Drug company product mix Product mix uses no more resources than are available Do not produce more of a product than can be sold Xbox shipping Do not ship more units each month from a plant than plant ­capacity Make sure that each customer receives the number of Xbox ­consoles that they need Xbox pricing Prices can’t be too far out of line with competitors’ prices Microsoft project initiatives Projects selected can’t use more money or skilled programmers than are available NFL ratings None Retirement portfolio Invest all our money somewhere (cash is a possibility) Obtain an expected return of at least 10 percent on our investments Chapter 28 An Introduction to Optimization with Excel Solver 243 The best way to understand how to use Solver is by looking at some detailed examples. In later chapters, you’ll learn how to use Solver to address each of the situations described in this chapter as well as several other important business problems. To install Solver, click the File tab, click Options, and then click Add-Ins. In the Manage box at the bottom of the dialog box, select Excel Add-Ins, and click Go. Select the Solver AddIn check box in the Add-Ins dialog box, and click OK. After Solver is installed, you can run Solver by clicking Solver in the Analysis group on the Data tab. Figure 28-1 shows the Solver Parameters dialog box. In the next few chapters, you’ll see how to use this dialog box to input the target cell, changing cells, and constraints for a Solver model. Figure 28-1 The Solver Parameters dialog box. The Excel Solver has been greatly revamped and improved in Excel 2010. The primary change is the presence of the Select A Solving Method list. From this list you must select the ­appropriate solution engine for your optimization problem. ■ The Simplex LP engine is used to solve linear optimization problems. As you will see in Chapters 29–32, a linear optimization problem is one in which the target cell and constraints are all created by adding together terms of the form (changing cell)*(constant). ■ The GRG Nonlinear engine is used to solve optimization problems in which the target cell and/or some of the constraints are not linear and are computed by using common mathematical operations such as multiplying or dividing changing cells, raising ­changing cells to a power, exponential or trig functions involving changing cells, and so on. The GRG engine includes a powerful Multistart option that enables you to solve many problems that were solved incorrectly with previous versions of Excel. Chapters 33 through 35 discuss the GRG Nonlinear engine. 244 Microsoft Excel 2010: Data Analysis and Business Modeling ■ The Evolutionary engine is used when your target cell and/or constraints contain nonsmooth functions that reference changing cells. A nonsmooth function is one whose slope abruptly changes. For example, when x = 0, the slope of the absolute value of x abruptly changes from -1 to 1. If your Target cell and/or constraints contain IF, SUMIF, COUNTIF, SUMIFS, COUNTIFS, AVERAGEIF, AVERAGEIFS, ABS, MAX or MIN functions that reference the changing cells, then you are using nonsmooth functions and the Evolutionary engine probably has the best shot at finding a good solution to your ­optimization problem. The Evolutionary engine is discussed in Chapters 36 and 37. After you have input the target cell, changing cells, and constraints, what does Solver do? To answer this question, you need some background in Solver terminology. Any specification of the changing cells that satisfies the model’s constraints is a feasible solution. For instance, any product mix that satisfies the following three conditions would be a feasible solution: ■ Does not use more raw material or labor than is available. ■ Does not produce more of each product than is demanded. ■ Does not produce a negative amount of any product. Essentially, Solver searches all feasible solutions and finds the one that has the “best” target cell value (the largest value for maximum optimization, the smallest for minimum optimization). Such a solution is called an optimal solution. As you’ll see in Chapter 29, “Using Solver to Determine the Optimal Product Mix,” some Solver models have no optimal solution and some have a unique solution. Other Solver models have multiple (actually, an infinite number of) optimal solutions. In the next chapter, we’ll begin our study of Solver examples by ­examining the drug company product mix problem. Problems For each situation described below, identify the target cell, changing cells, and constraints. 1. I am borrowing $100,000 for a 15-year mortgage. The annual rate of interest is 8 ­percent. How can I determine my monthly mortgage payment? 2. How should an auto company allocate its advertising budget between different ­advertising formats? 3. How should cities transport students to more distant schools to obtain racial balance? 4. If a city has only one hospital, where should it be located? 5. How should a drug company allocate its sales force efforts among their products? 6. A drug company has $2 billion allocated to purchasing biotech companies. Which ­companies should they buy? 7. The tax rate charged to a drug company depends on the country in which a product is produced. How can a drug company determine where each drug should be made? Chapter 29 Using Solver to Determine the Optimal Product Mix Questions answered in this chapter: ■ How can I determine the monthly product mix that maximizes profitability? ■ Does a Solver model always have a solution? ■ What does it mean if a Solver model yields the result “Set Values Do Not Converge”? Answers to This Chapter’s Questions How can I determine the monthly product mix that maximizes profitability? Companies often need to determine the quantity of each product to produce on a monthly basis. In its simplest form, the product mix problem involves how to determine the amount of each product that should be produced during a month to maximize profits. Product mix must usually adhere to the following constraints: ■ Product mix can’t use more resources than are available. ■ There is a limited demand for each product. You don’t want to produce more of a product during a month than demand dictates because the excess production is ­wasted (for example, a perishable drug). Let’s now solve the following example of the product mix problem. You can find a feasible solution to this problem in the Feasible Solution worksheet of the file Prodmix.xlsx, shown in Figure 29-1. Figure 29-1 A feasible product mix. 245 246 Microsoft Excel 2010: Data Analysis and Business Modeling Let’s say you work for a drug company that produces six different products at its plant. Production of each product requires labor and raw material. Row 4 in Figure 29-1 shows the hours of labor needed to produce a pound of each product, and row 5 shows the pounds of raw material needed to produce a pound of each product. For example, producing a pound of Product 1 requires six hours of labor and 3.2 pounds of raw material. For each drug, the price per pound is given in row 6, the unit cost per pound is given in row 7, and the profit contribution per pound is given in row 9. For example, Product 2 sells for $11.00 per pound, incurs a unit cost of $5.70 per pound, and contributes $5.30 profit per pound. The month’s demand for each drug is given in row 8. For example, demand for Product 3 is 1,041 pounds. This month, 4,500 hours of labor and 1,600 pounds of raw material are available. How can this company maximize its monthly profit? If you knew nothing about the Excel Solver, you might attack this problem by constructing a worksheet to track profit and resource usage associated with the product mix. Then you could use trial and error to vary the product mix to optimize profit without using more labor or raw material than is available, and without producing any drug in excess of demand. You use Solver in this process only at the trial-and-error stage. Essentially, Solver is an optimization engine that flawlessly performs the trial-and-error search. A key to solving the product mix problem is to efficiently compute the resource usage and profit associated with any given product mix. An important tool that you can use to make this computation is the SUMPRODUCT function. The SUMPRODUCT function multiplies ­corresponding values in cell ranges and returns the sum of those values. Each cell range used in a SUMPRODUCT evaluation must have the same dimensions, which implies that you can use SUMPRODUCT with two rows or two columns but not with one column and one row. As an example of how you can use the SUMPRODUCT function in the product mix example, let’s try to compute resource usage. Labor usage is calculated by the following formula: (Labor used per pound of drug 1)*(Drug 1 pounds produced)+(Labor used per pound of drug 2) *(Drug 2 pounds produced) + ...(Labor used per pound of drug 6)*(Drug 6 pounds produced) You could compute labor usage in a more tedious fashion as D2*D4+E2*E4+F2*F4+G2* G4+H2*H4+I2*I4. Similarly, raw material usage could be computed as D2*D5+E2*E5+F2* F5+G2*G5+H2*H5+I2*I5. However, entering these formulas in a worksheet for six products is time-consuming. Imagine how long it would take if you were working with a company that produced, for example, 50 products at its plant. A much easier way to compute labor and raw material usage is to copy from D14 to D15 the formula SUMPRODUCT($D$2:$I$2,D4:I4). This formula computes D2*D4+E2*E4+F2*F4+G2*G4+H2*H4+I2*I4 (which is the labor usage) but Chapter 29 Using Solver to Determine the Optimal Product Mix 247 is much easier to enter. Notice that I use the $ sign with the range D2:I2 so that when I copy the formula I still capture the product mix from row 2. The formula in cell D15 computes raw material usage. In a similar fashion, profit is determined by the following formula: (Drug 1 profit per pound)*(Drug 1 pounds produced) + (Drug 2 profit per pound) *(Drug 2 pounds produced) + ...(Drug 6 profit per pound)*(Drug 6 pounds produced) Profit is easily computed in cell D12 with the formula SUMPRODUCT(D9:I9,$D$2:$I$2). You now can identify the three components of the product mix Solver model: ■ Target cell The goal is to maximize profit (computed in cell D12). ■ Changing cells range D2:I2) ■ Constraints You have the following constraints: The number of pounds produced of each product (listed in the cell ❑ Do not use more labor or raw material than is available. That is, the values in cells D14:D15 (the resources used) must be less than or equal to the values in cells F14:F15 (the available resources). ❑ Do not produce more of a drug than is in demand. That is, the values in the cells D2:I2 (pounds produced of each drug) must be less than or equal to the demand for each drug (listed in cells D8:I8). ❑ You can’t produce a negative amount of any drug. I’ll show you how to enter the target cell, changing cells, and constraints into Solver. Then all you need to do is click the Solve button to find a profit-maximizing product mix. To begin, click the Data tab, and in the Analysis group, click Solver. Note As I explained in Chapter 28, “An Introduction to Optimization with Excel Solver,” Solver is installed by clicking the File tab, then Options, followed by Add-Ins. In the Manage list, click Excel Add-ins and click Go. Select the Solver Add-In check box, and then click OK. The Solver Parameters dialog box will appear, as shown in Figure 29-2. 248 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 29-2 The Solver Parameters dialog box. Click the Set Objective box, and then select the profit cell (cell D12). Click the By Changing Variable Cells box, and then point to the range D2:I2, which contains the pounds produced of each drug. The dialog box should now look Figure 29-3. Figure 29-3 The Solver Parameters dialog box with the target cell and changing cells defined. You’re now ready to add constraints to the model. Click the Add button. You’ll see the Add Constraint dialog box, shown in Figure 29-4. Chapter 29 Using Solver to Determine the Optimal Product Mix 249 Figure 29-4 The Add Constraint dialog box. To add the resource usage constraints, click the Cell Reference box, and then select the range D14:D15. Select <= from the middle list. Click the Constraint box, and then select the cell range F14:F15. The Add Constraint dialog box should now look like Figure 29-5. Figure 29-5 The Add Constraint dialog box with the resource usage constraints entered. You have now ensured that when Solver tries different values for the changing cells, only combinations that satisfy both D14<=F14 (labor used is less than or equal to labor available) and D15<=F15 (raw material used is less than or equal to raw material available) will be considered. Click Add to enter the demand constraints, filling in the Add Constraint dialog box as shown in Figure 29-6. Figure 29-6 The Add Constraint dialog box with the demand constraints entered. Adding these constraints ensures that when Solver tries different combinations for the changing cell values, only combinations that satisfy the following parameters will be considered: ■ D2<=D8 (the amount produced of Drug 1 is less than or equal to the demand for Drug 1) ■ E2<=E8 (the amount produced of Drug 2 is less than or equal to the demand for Drug 2) ■ F2<=F8 (the amount produced of Drug 3 is less than or equal to the demand for Drug 3) ■ G2<=G8 (the amount produced of Drug 4 is less than or equal to the demand for Drug 4) ■ H2<=H8 (the amount produced of Drug 5 is less than or equal to the demand for Drug 5) ■ I2<=I8 (the amount produced of Drug 6 is less than or equal to the demand for Drug 6) 250 Microsoft Excel 2010: Data Analysis and Business Modeling Click OK in the Add Constraint dialog box. The Solver Parameters dialog box should look like Figure 29-7. Figure 29-7 The final Solver Parameters dialog box for the product mix problem. Selecting the Make Unconstrained Variables Non-Negative check box ensures that all the changing cells are forced to be greater than or equal to 0. Next choose Simplex LP from the Select A Solving Method list. You choose the Simplex LP engine because the product mix problem is a special type of Solver problem called a linear model. Essentially, a Solver model is linear under the following conditions: ■ The target cell is computed by adding together the terms of the form (changing cell)*(constant). ■ Each constraint satisfies the linear model requirement. This means that each constraint is evaluated by adding together the terms of the form (changing cell)*(constant) and comparing the sums to a constant. Why is this Solver problem linear? Our target cell (profit) is computed as follows: (Drug 1 profit per pound)*(Drug 1 pounds produced) + (Drug 2 profit per pound) *(Drug 2 pounds produced) + ...(Drug 6 profit per pound)*(Drug 6 pounds produced) This computation follows a pattern in which the target cell’s value is derived by adding ­together terms of the form (changing cell)*(constant). Chapter 29 Using Solver to Determine the Optimal Product Mix 251 Our labor constraint is evaluated by comparing the value derived from (Labor used per pound of Drug 1)*(Drug 1 pounds produced) + (Labor used per pound of Drug 2)*(Drug 2 pounds p ­ roduced)+…(Labor used per pound of Drug 6)*(Drug 6 pounds produced) to the labor available. Therefore, the labor constraint is evaluated by adding together the terms of the form ­(changing cell)*(constant) and comparing the sums to a constant. Both the labor constraint and the raw material constraint satisfy the linear model requirement. The demand constraints take the form: (Drug 1 produced)<=(Drug 1 Demand) (Drug 2 produced)<=(Drug 2 Demand) … (Drug 6 produced)<=(Drug 6 Demand) Each demand constraint also satisfies the linear model requirement, because each is ­evaluated by adding together the terms of the form (changing cell)*(constant) and comparing the sums to a constant. Knowing that the product mix model is a linear model, why should you care? ■ If a Solver model is linear and you select Simplex LP, Solver is guaranteed to find the optimal solution to the Solver model. If a Solver model is not linear, Solver may or may not find the optimal solution. ■ If a Solver model is linear and you select Simplex LP, Solver uses a very efficient ­algorithm (the simplex method) to find the model’s optimal solution. If a Solver model is linear and you do not select Simplex LP, Solver uses a very inefficient algorithm (the GRG2 method) and might have difficulty finding the model’s optimal solution. After you click Solve, Solver calculates an optimal solution (if one exists) for the product mix model. As I stated in Chapter 28, an optimal solution to the product mix model would be a set of changing cell values (pounds produced of each drug) that maximizes profit over the set of all feasible solutions. Again, a feasible solution is a set of changing cell values satisfying all constraints. The changing cell values shown in Figure 29-8 are a feasible solution because all production levels are non-negative, production levels do not exceed demand, and resource usage does not exceed available resources. Figure 29-8 A feasible solution to the product mix problem fits within constraints. 252 Microsoft Excel 2010: Data Analysis and Business Modeling The changing cell values shown in Figure 29-9 represent an infeasible solution for the ­following reasons: ■ You produce more of Drug 5 than the demand for it. ■ You use more labor than is available. ■ You use more raw material than is available. Figure 29-9 An infeasible solution to the product mix problem doesn’t fit within the defined constraints. After you click Solve, Solver quickly finds the optimal solution shown in Figure 29-10. You need to select Keep Solver Solution to preserve the optimal solution values in the worksheet. Figure 29-10 The optimal solution to the product mix problem. Our drug company can maximize its monthly profit at a level of $6,625.20 by producing 596.67 pounds of Drug 4, 1,084 pounds of Drug 5, and none of the other drugs. You can’t determine whether you can achieve the maximum profit of $6,625.20 in other ways. All you can be sure of is that with your limited resources and demand, there is no way to make more than $6,625.20 this month. Does a Solver model always have a solution? Suppose that demand for each product must be met. (See the No Feasible Solution ­worksheet in the file Prodmix.xlsx.) You then have to change your demand constraints from D2:I2<=D8:I8 to D2:I2>=D8:I8. To do this, open Solver, select the D2:I2<=D8:I8 constraint, and then click Change. The Change Constraint dialog box, shown in Figure 29-11, appears. Chapter 29 Using Solver to Determine the Optimal Product Mix 253 Figure 29-11 The Change Constraint dialog box. Select >=, and then click OK. You’ve now ensured that Solver will consider changing only cell values that meet all demands. When you click Solve, you’ll see the message “Solver could not find a feasible solution.” This message does not mean that you made a mistake in your model, but rather that with limited resources, you can’t meet demand for all products. Solver is simply telling you that if you want to meet demand for each product, you need to add more labor, more raw materials, or more of both. What does it mean if a Solver model yields the result “Set Values Do Not Converge”? Let’s see what happens if you allow unlimited demand for each product and you allow ­negative quantities to be produced of each drug. (You can see this Solver problem on the Set Values Do Not Converge worksheet in the file Prodmix.xlsx.) To find the optimal solution for this situation, open Solver and clear the Make Unconstrained Variables Non-Negative check box. In the Solver Parameters dialog box, select the demand constraint D2:I2<=D8:I8, and then click Delete to remove the constraint. When you click Solve, Solver returns the message “Set Cell Values Do Not Converge.” This message means that if the target cell is to be maximized (as in this example), there are feasible solutions with arbitrarily large target cell values. (If the target cell is to be minimized, the message “Set Cell Values Do Not Converge” means there are feasible solutions with arbitrarily small target cell values.) In this situation, by ­allowing negative production of a drug, you in effect create resources that can be used to produce arbitrarily large amounts of other drugs. Given your unlimited demand, this ­allows you to make unlimited profits. In a real situation, you can’t make an infinite amount of ­money. In short, if you see “Set Values Do Not Converge,” your model does have an error. Problems 1. Suppose our drug company can purchase up to 500 hours of labor at $1 more per hour than current labor costs. How can it maximize profit? 2. At a chip manufacturing plant, four technicians (A, B, C, and D) produce three products (Products 1, 2, and 3). This month, the chip manufacturer can sell 80 units of Product 1, 50 units of Product 2, and at most 50 units of Product 3. Technician A can make only Products 1 and 3. Technician B can make only Products 1 and 2. Technician C can make only Product 3. Technician D can make only Product 2. For each unit produced, the 254 Microsoft Excel 2010: Data Analysis and Business Modeling products contribute the following profit: Product 1, $6; Product 2, $7; and Product 3, $10. The time (in hours) each technician needs to manufacture a product is as follows: Product Technician A Technician B Technician C Technician D 1 2 2.5 Cannot do Cannot do 2 Cannot do 3 Cannot do 3.5 3 3 Cannot do 4 Cannot do Each technician can work up to 120 hours per month. How can the chip manufacturer maximize its monthly profit? Assume a fractional number of units can be produced. 3. A computer manufacturing plant produces mice, keyboards, and video game joysticks. The per-unit profit, per-unit labor usage, monthly demand, and per-unit machine-time usage are given in the following table: Mice Keyboards Joysticks Profit/unit $8 $11 $9 Labor usage/unit .2 hour .3 hour .24 hour Machine time/unit .04 hour .055 hour .04 hour Monthly demand 15,000 29,000 11,000 Each month, a total of 13,000 labor hours and 3,000 hours of machine time are ­available. How can the manufacturer maximize its monthly profit contribution from the plant? 4. Resolve our drug example assuming that a minimum demand of 200 units for each drug must be met. 5. Jason makes diamond bracelets, necklaces, and earrings. He wants to work a maximum of 160 hours per month. He has 800 ounces of diamonds. The profit, labor time, and ounces of diamonds required to produce each product are as follows. If demand for each product is unlimited, how can Jason maximize his profit? Product Unit profit Labor hours per unit Ounces of diamonds per unit Bracelet $300 .35 1.2 Necklace $200 .15 .75 Earrings $100 .05 .5 6. In our product mix example, suppose that whenever you sell more than 400 pounds of any product you must give a $1 per pound discount on each pound above 400 sold. How does this change the answer to the problem? Chapter 30 Using Solver to Schedule Your Workforce Question answered in this chapter: ■ How can I efficiently schedule my workforce to meet labor demands? Many organizations (such as banks, restaurants, and postal service companies) know what their labor requirements are at different times of the day, and they need a method to ­efficiently schedule their workforce. You can use the Microsoft Excel 2010 Solver to easily solve workforce scheduling problems. Answers to This Chapter’s Question How can I efficiently schedule my workforce to meet labor demands? Bank 24 processes checks seven days a week. The number of workers needed each day to process checks is shown in row 14 of the file Bank24.xlsx, which is shown in Figure 30-1. For example, 13 workers are needed on Tuesday, 15 workers are needed on Wednesday, and so on. All bank employees work five consecutive days. What is the minimum number of ­employees Bank 24 can have and still meet its labor requirements? Figure 30-1 The data we’ll use to work through the bank workforce scheduling problem. You begin by identifying the target cell, changing cells, and constraints for your Solver model. Minimize total number of employees. ■ Target cell ■ Changing cells Number of employees who start work (the first of five consecutive days) each day of the week. Each changing cell must be a non-negative integer. 255 256 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Constraints For each day of the week, the number of employees who are working must be greater than or equal to the number of employees required—(Number of ­employees working)>=(Needed employees) To set up the model for this problem, you need to track the number of employees ­working each day. I began by entering in the cell range A5:A11 trial values for the number of ­employees who start their five-day shift each day. For example, in A5, I entered 1, indicating that 1 employee begins work on Monday and works Monday through Friday. I entered each day’s required workers in the range C14:I14. To track the number of employees working each day, I entered a 1 or a 0 in each cell in the range C5:I11. The value 1 indicates that the employees who started working on the day ­designated in the cell’s row are working on the day associated with the cell’s column. For ­example, the 1 in cell G5 indicates that employees who started working on Monday are working on Friday; the 0 in cell H5 indicates that the employees who started working on Monday are not working on Saturday. By copying from C12 to D12:I12 the formula =SUMPRODUCT($A$5:$A$11,C5:C11), I compute the number of employees working each day. For example, in cell C12, this formula evaluates to =A5+A8+A9+A10+A11, which equals (Number starting on Monday)+(Number starting on Thursday)+(Number starting on Friday)+(Number starting on Saturday)+(Number starting on Sunday). This total is indeed the number of people working on Monday. After computing the total number of employees in cell A3 with the formula =SUM(A5:A11), I can enter a model in Solver as shown in Figure 30-2. Figure 30-2 The Solver Parameters dialog box filled in to solve the workforce problem. Chapter 30 Using Solver to Schedule Your Workforce 257 In the target cell (A3), I want to minimize the number of total employees. The constraint C12:I12>=C14:I14 ensures that the number of employees working each day is at least as large as the number needed each day. The constraint A5:A11=integer ensures that the number of employees beginning work each day is an integer. To add this constraint, I clicked Add in the Solver Parameters dialog box and filled in the Add Constraint dialog box as shown in Figure 30-3. Figure 30-3 This constraint defines as an integer the number of workers who start each day. Note that this model is linear because the target cell is created by adding together c­ hanging cells, and the constraint is created by comparing the result obtained by adding together the product of each changing cell times a constant (either 1 or 0) to the required number of workers. Therefore I selected the Simplex LP engine. Since you cannot start a negative number of workers on a day, I checked the Make Unconstrained Variables Non-Negative option. After clicking Solve, I find the optimal solution that’s shown earlier in Figure 30-1. A total of 20 employees is needed. One employee starts on Monday, three start on Tuesday, four start on Thursday, one starts on Friday, two start on Saturday, and nine start on Sunday. Note that this model actually has multiple optimal solutions that utilize 20 workers. If you run the Solver again, you might very well find one of these alternative optimal solutions. Problems 1. Suppose Bank 24 had 22 employees and that the goal was to schedule employees so that they would have the maximum number of weekend days off. How should the workers be scheduled? 2. Suppose Bank 24 employees are paid $150 per day the first five days they work and can work a day of overtime at a cost of $350. How should the bank schedule its employees? 258 Microsoft Excel 2010: Data Analysis and Business Modeling 3. The number of telephone reservation operators needed by an airline during each time of day is as follows: Time Operators needed Midnight–4 A.M. 12 4 A.M.–8 A.M. 16 8 A.M.–Noon 22 Noon–4 P.M. 30 4 P.M.–8 P.M. 31 8 P.M.–Midnight 22 Each operator works one of the following six-hour shifts: midnight–6:00 A.M., 6:00 A.M.–noon, noon–6:00 P.M., 6:00 P.M.–midnight. What is the minimum number of ­operators needed? 4. Shown in Figure 30-4 are the number of people in different demographic groups who watch various TV shows and the cost (in thousands of dollars) of placing a 30-second ad on each show. For example, it costs $160,000 to place a 30-second ad on Friends. The show is watched by 6 million males between the ages 18 and 35, 3 million males between 36 and 55, 1 million males over 55, 9 million females between 18 and 35, 4 million females between 36 and 55, and 2 million females over 55. The data also includes the number of people in each group (in millions) that you want to have see the ad. For example, the advertiser wants at least 60 million 18 to 35 year old males to see its ads. What is the cheapest way to meet these goals? Figure 30-4 Data for Problem 4. 5. The Pine Valley Credit Union is trying to schedule bank tellers. The credit union is open 8 A.M.– 6 P.M. and needs the following number of tellers each hour. Chapter 30 Using Solver to Schedule Your Workforce Needed Time 4 8–9 8 9–10 6 10–11 4 11–12 9 12–1 8 1–2 5 2–3 4 3–4 4 4–5 5 5–6 259 Full-time tellers can work 8 A.M.–5 P.M. (with a 12–1 lunch hour) or 9 A.M.–6 P.M. (with a 1 P.M.–2 P.M. lunch hour). Part-time tellers work 10 A.M.–2 P.M. Full-time tellers receive $300 per day and ­part-time tellers $60 per day. At most, four part-time tellers can be hired. How can the credit union minimize their daily teller salary cost? Chapter 31 Using Solver to Solve Transportation or Distribution Problems Question answered in this chapter: ■ How can a drug company determine at which location it should produce drugs and from which location it should ship drugs to customers? Many companies manufacture products at different locations (often called supply points) and ship their products to customers (often called demand points). A natural question is, “What is the least expensive way to produce and ship products to customers and still meet demand?” This type of problem is called a transportation problem. A transportation problem can be set up as a linear Solver model with the following specifications: Minimize total production and shipping cost. ■ Target cell ■ Changing cells demand point. ■ Constraints The amount shipped from each supply point can’t exceed plant capacity. Each demand point must receive its required demand. Also, each changing cell must be non-negative. The amount produced at each supply point that is shipped to each Answer to This Chapter’s Question How can a drug company determine at which location it should produce drugs, and from which it should ship drugs to customers? You can follow along with this problem by looking at the file Transport.xlsx. Let’s suppose a company produces a certain drug at its Los Angeles, Atlanta, and New York facilities. Each month, the Los Angeles plant can produce up to 10,000 pounds of the drug. Atlanta can produce up to 12,000 pounds, and New York can produce up to 14,000 pounds. The company must ship each month the number of pounds listed in cells B2:E2 to the four regions of the United States—East, Midwest, South, and West— as shown in Figure 31-1. For example, the West region must receive at least 13,000 pounds of the drug each month. The cost per pound of producing a drug at each plant and shipping the drug to each region of the ­country is given in cells B4:E6. For example, it costs $3.50 to produce one pound of the drug in Los Angeles and ship it to the Midwest region. What is the cheapest way to get each ­region the quantity of the drug it needs? 261 262 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 31-1 Data for a transportation problem. To express the target cell, you need to track total shipping cost. After entering in the cell range B10:E12 trial values for shipments from each supply point to each region, you can compute total shipping cost as follows: (Amount sent from LA to East)*(Cost per pound of sending drug from LA to East) +(Amount sent from LAto Midwest)*(Cost per pound of sending drug from LA to Midwest) +(Amount sent from LA to South)*(Cost per pound of sending drug from LA to South) +(Amount sent from LA to West)*(Cost per pound of sending drug from LA to West) +...(Amount sent from New York City to West) *(Cost per pound of sending drug from New York City to West) The SUMPRODUCT function can multiply corresponding elements in two separate ­rectangles (as long as the rectangles are the same size) and add together the products. I’ve named the cell range B4:E6 costs and the changing cells range (B10:E12) shipped. Therefore, total shipping and production cost is computed in cell B18 with the formula SUMPRODUCT(costs,shipped). To express the problem’s constraints, I first compute the total shipped from each s­ upply point. By entering the formula SUM(B10:E10) in cell F10, I compute the total number of pounds shipped from Los Angeles as (LA shipped to East)+(LA shipped to Midwest)+ (LA shipped to South)+(LA shipped to West). Copying this formula to F11:F12 computes the total shipped from Atlanta and New York City. Later I’ll add a constraint (called a supply ­constraint) that ensures that the amount shipped from each location does not exceed the plant’s capacity. Next I compute the total received by each demand point. I begin by entering in cell B13 the formula SUM(B10:B12). This formula computes the total number of pounds received in the East as (Pounds shipped from LA to East)+(Pounds shipped from Atlanta to East)+(Pounds shipped from New York City to East). By copying this formula from B13 to C13:E13, I compute Chapter 31 Using Solver to Solve Transportation or Distribution Problems 263 the pounds of the drug received by the Midwest, South, and West regions. Later, I’ll add a constraint (called a demand constraint) that ensures that each region receives the amount of the drug it requires. Now I open the Solver Parameters dialog box (click Solver in the Analysis group on the Data tab) and fill it in as shown in Figure 31-2. Figure 31-2 The Solver set up to solve our transportation problem. I want to minimize total shipping cost (computed in cell B18). The changing cells are the number of pounds shipped from each plant to each region of the country. (These amounts are listed in the range named shipped, consisting of cells B10:E12.) The constraint F10:F12<=H10:H12 (the supply constraint) ensures that the amount sent from each plant does not exceed its capacity. The constraint B13:E13>=B15:E15 (the demand constraint) ensures that each region receives at least the amount of the drug it needs. This model is a linear Solver model because the target cell is created by adding together the terms of the form (changing cell)*(constant), and both our supply and demand constraints are created by comparing the sum of changing cells to a constant. Because the model is linear I chose the Simplex LP engine. Clearly, shipments must be non-negative, so I selected the Make Unconstrained Variables Non-Negative check box. After clicking Solve in the Solver Parameters dialog box, I am presented with the optimal solution shown earlier in Figure 31-1. The minimum cost of meeting customer demand is 264 Microsoft Excel 2010: Data Analysis and Business Modeling $86,800. This minimum cost can be achieved if the company uses the following production and shipping schedule: ■ Ship 10,000 pounds from Los Angeles to the West region. ■ Ship 3,000 pounds from Atlanta to the West region, and the same amount from Atlanta to the Midwest region. Ship 6,000 pounds from Atlanta to the South region. ■ Ship 9,000 pounds from New York City to the East region, and 3,000 pounds from New York City to the Midwest region. Problems 1. The following table gives the distances between Boston, Chicago, Dallas, Los Angeles, and Miami. Each city requires 40,000 kilowatt hours (kWh) of power, and Chicago, Dallas, and Miami are capable of producing 70,000 kWh. Assume that shipping 1,000 kWh over 100 miles costs $4. From where should power be sent to minimize the cost of meeting each city’s demand? Boston Chicago Dallas Los Angeles Miami Chicago 983 0 1205 2112 1390 Dallas 1815 1205 0 801 1332 Miami 1539 1390 1332 2757 0 2. Resolve this chapter’s example assuming that demand in the West region increases to 13,000. 3. Your company produces and sells drugs at several different locations. The decision of where to produce goods for each sales location can have a huge impact on profitability. The model here is similar to the model used in this chapter to determine where drugs should be produced. Use the following assumptions: ❑ You produce drugs at six locations and sell to customers in six different areas. ❑ The tax rate and variable production cost depend on the location where the drug is produced. For example, any units produced at Location 3 cost $6 per unit to produce; profits from these goods are taxed at 20 percent. ❑ The sales price of each drug depends on where the drug is sold. For example, each product sold in Location 2 is sold for $40. Production location 1 2 3 4 5 6 Sales price $45 $40 $38 $36 $39 $34 Tax rate 31% 40% 20% 40% 35% 18% Variable production cost $8 $7 $6 $9 $7 $7 Chapter 31 Using Solver to Solve Transportation or Distribution Problems 265 ❑ Each of the six plants can produce up to 6 million units per year. ❑ The annual demand (in millions) for your product in each location is as follows: ❑ Sales location 1 2 3 4 5 6 Demand 1 2 3 4 5 6 The unit shipping cost depends on the plant where the product is produced and the location where the product is sold. Sold 1 Sold 2 Sold 3 Sold 4 Sold 5 Sold 6 Plant 1 $3 $4 $5 $6 $7 $8 Plant 2 $5 $2 $6 $9 $10 $11 Plant 3 $4 $3 $1 $6 $8 $6 Plant 4 $5 $5 $7 $2 $5 $5 Plant 5 $6 $9 $6 $5 $3 $7 Plant 6 $7 $7 $8 $9 $10 $4 For example, if you produce a unit at Plant 1 and sell it in Location 3, it costs $5 to ship it. How can you maximize after-tax profit with your limited production capacity? 4. Suppose that each day, northern, central, and southern California each use 100 billion gallons of water. Also assume that northern California and central California have available 120 billion gallons of water, whereas southern California has 40 billion gallons of water available. The cost of shipping 1 billion gallons of water between the three ­regions is as follows: Northern Central Southern Northern $5,000 $7,000 $10,000 Central $7,000 $5,000 $6,000 Southern $10,0000 $6,000 $5,000 You will not be able to meet all demand for water, so assume that each billion gallons of unmet demand incurs the following shortage costs: Shortage cost/billion gallons short Northern Central Southern $6,000 $5,500 $9,000 How should California’s water be distributed to minimize the sum of shipping and shortage costs? Chapter 32 Using Solver for Capital Budgeting Question answered in this chapter: ■ How can a company use Solver to determine which projects it should undertake? Each year, a company like Eli Lilly needs to determine which drugs to develop; a company like Microsoft, which software programs to develop; a company like Proctor & Gamble, which new consumer products to develop. The Solver in Microsoft Excel 2010 can help a company make these decisions. Answer to This Chapter’s Question How can a company use Solver to determine which projects it should undertake? Most corporations want to undertake projects that contribute the greatest net present value (NPV), subject to limited resources (usually capital and labor). Let’s say that a software development company is trying to determine which of 20 software projects it should undertake. The NPV (in millions of dollars) contributed by each project as well as the capital (in millions of dollars) and the number of programmers needed during each of the next three years is given on the Basic Model worksheet in the file Capbudget.xlsx, shown in Figure 32-1. For ­example, Project 2 yields $908 million. It requires $151 million during Year 1, $269 million during Year 2, and $248 million during Year 3. Project 2 requires 139 programmers during Year 1, 86 programmers during Year 2, and 83 programmers during Year 3. Cells E4:G4 show the capital (in millions of dollars) available during each of the three years, and cells H4:J4 ­indicate how many programmers are available. For example, during Year 1 up to $2.5 billion in capital and 900 programmers are available. The company must decide whether it should undertake each project. Let’s assume that the company can’t undertake a fraction of a software project; if 0.5 of the needed resources is allocated, for example, the company would have a nonworking program that would bring in $0 revenue! The trick in modeling situations in which you either do or don’t do something is to use binary changing cells. A binary changing cell always equals 0 or 1. When a binary changing cell that corresponds to a project equals 1, you do the project. If a binary changing cell that corresponds to a project equals 0, you don’t do the project. You set up Solver to use a range of binary changing cells by adding a constraint: select the changing cells you want to use, and then choose Bin from the list in the Add Constraint dialog box. 267 268 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 32-1 Data we will use with Solver to determine which projects to undertake. With this background, you’re ready to solve the software project selection problem. As ­always with a Solver model, you should begin by identifying the target cell, the changing cells, and the constraints. Maximize the NPV generated by selected projects. ■ Target cell ■ Changing cells Look for a 0 or 1 binary changing cell for each project. I’ve located these cells in the range A6:A25 (and named the range doit). For example, a 1 in cell A6 indicates that you undertake Project 1; a 0 in cell C6 indicates that you don’t undertake Project 1. ■ Constraints You need to ensure that for each Year t (t=1, 2, 3), Year t capital used is less than or equal to Year t capital available, and Year t labor used is less than or equal to Year t labor available. As you can see, the worksheet must compute for any selection of projects the NPV, the capital used annually, and the programmers used each year. In cell B2, I use the formula SUMPRODUCT(doit,NPV) to compute the total NPV generated by selected projects. (The range name NPV refers to the range C6:C25.) For every project with a 1 in column A, this formula picks up the NPV of the project, and for every project with a 0 in column A, this formula does not pick up the NPV of the project. Therefore, I’m able to compute the NPV of all projects, and the target cell is linear because it is computed by summing terms that follow the form (changing cell)*(constant). In a similar fashion, I compute the capital used each year and the labor used each year by copying from E2 to F2:J2 the formula SUMPRODUCT(doit,E6:E25). I now fill in the Solver Parameters dialog box as shown in Figure 32-2. Chapter 32 Using Solver for Capital Budgeting 269 Figure 32-2 Solver Parameters dialog box set up for the project selection model. The goal is to maximize the NPV of selected projects (cell B2). The changing cells (the range named doit) are the binary changing cells for each project. The constraint E2:J2<=E4:J4 ­ensures that during each year the capital and labor used are less than or equal to the capital and labor available. To add the constraint that makes the changing cells binary, I click Add in the Solver Parameters dialog box and then select Bin from the list in the middle of the Add Constraint dialog box. The Add Constraint dialog box should appear as shown in Figure 32-3. The goal is to maximize the NPV of selected projects (cell B2). The changing cells (the range named doit) are the binary changing cells for each project. The constraint E2:J2<=E4:J4 ­ensures that during each year the capital and labor used are less than or equal to the capital and labor available. To add the constraint that makes the changing cells binary, I click Add in the Solver Parameters dialog box and then select Bin from the list in the middle of the Add Constraint dialog box. The Add Constraint dialog box should appear as shown in Figure 32-3. Figure 32-3 Use the Bin option in the Add Constraint dialog box to set up binary changing cells—cells that display either a 0 or a 1. 270 Microsoft Excel 2010: Data Analysis and Business Modeling This model is linear because the target cell is computed as the sum of terms that have the form (changing cell)*(constant) and because the resource usage constraints are computed by comparing the sum of (changing cells)*(constants) to a constant. Therefore, I select the Simplex LP engine. With the Solver Parameters dialog box filled in, I click Solve and get the results shown earlier in Figure 32-1. The company can obtain a maximum NPV of $9,293 million ($9.293 billion) by choosing Projects 2, 3, 6–10, 14–16, 19, and 20. Handling Other Constraints Sometimes project selection models have other constraints. For example, suppose that if you select Project 3, you must also select Project 4. Because the current optimal solution selects Project 3 but not Project 4, this tells you that the current solution can’t remain optimal. To solve this problem, simply add the constraint that the binary changing cell for Project 3 is less than or equal to the binary changing cell for Project 4. You can find this example on the If 3 then 4 worksheet in the file Capbudget.xlsx, which is shown in Figure 32-4. Cell L9 refers to the binary value related to Project 3, and cell L12 to the binary value related to Project 4. By adding the constraint L9<=L12, if you choose Project 3, L9 equals 1 and this constraint forces L12 (the Project 4 binary) to equal 1. This constraint must also leave the binary value in the changing cell of Project 4 unrestricted if you do not select Project 3. If you do not select Project 3, L9 equals 0 and the constraint ­allows the Project 4 binary to equal 0 or 1, which is what you want. The new optimal solution is shown in Figure 32-4. Figure 32-4 New optimal solution for if not Project 3 then Project 4. Chapter 32 Using Solver for Capital Budgeting 271 Now suppose that you can do only four projects from among Projects 1 through 10. (See the At Most 4 Of P1–P10 worksheet, shown in Figure 32-5.) In cell L8, you compute the sum of the binary values associated with Projects 1 through 10 with the formula SUM(A6:A15). Then add the constraint L8<=L10, which ensures that at most, 4 of the first 10 projects are selected. The new optimal solution is shown in Figure 32-5. The NPV has dropped to $9.014 billion. Figure 32-5 Optimal solution when only 4 of 10 projects can be selected. Solving Binary and Integer Programming Problems Linear Solver models in which some or all changing cells are required to be binary or an ­integer are usually harder to solve than linear models in which all changing cells are allowed to be fractions. For this reason, analysts are often satisfied with a near-optimal solution to a binary or integer programming problem. If your Solver model runs for a long time, you may want to consider adjusting the Integer Optimality (formerly called Tolerance) setting in the Solver Options dialog box. (See Figure 32-6.) For example, a Tolerance setting of 0.5% means that Solver will stop the first time it finds a feasible solution that is within 0.5 percent of the theoretical optimal target cell value. (The theoretical optimal target cell value is the optimal target value found when the binary and integer constraints are omitted.) Often you’ll be faced with a choice between finding an answer within 10 percent of optimal in 10 minutes or finding an optimal solution in two weeks of computer time! The default Integer Optimality value is 1%, which means that Solver stops when it finds a target cell value within 1 percent of the theoretical optimal target cell value. When I first solved the software development ­example, I had the Integer Optimality set to 5% and found an optimal target cell value of 9269. When I changed the Integer Optimality value to 0.50%, I obtained a better target cell value (9293). 272 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 32-6 Adjusting the Integer Optimality option. Problems 1. A company has nine projects under consideration. The NPV added by each project and the capital required by each project during the next two years is shown in the following table. (All numbers are in millions.) For example, Project 1 will add $14 million in NPV and require expenditures of $12 million during Year 1, and $3 million during Year 2. During Year 1, $50 million in capital is available for projects, and $20 million is available during Year 2. NPV Year 1 expenditure Year 2 expenditure Project 1 14 12 3 Project 2 17 54 7 Project 3 17 6 6 Project 4 15 6 2 Project 5 40 32 35 Project 6 12 6 6 Project 7 14 48 4 Project 8 10 36 3 Project 9 12 18 3 ❑ If you can’t undertake a fraction of a project but must undertake either all or none of a project, how can you maximize NPV? Chapter 32 Using Solver for Capital Budgeting ❑ 273 Suppose that if Project 4 is undertaken, Project 5 must be undertaken. How can you maximize NPV? 2. A publishing company is trying to determine which of 36 books it should publish this year. The file Pressdata.xlsx gives the following information about each book: ❑ Projected revenue and development costs (in thousands of dollars) ❑ Pages in each book ❑ Whether the book is geared toward an audience of software developers (­indicated by a 1 in column E) The company can publish books with a total of up to 8,500 pages this year and must publish at least four books geared toward software developers. How can the company maximize its profit? 3. In the equation SEND + MORE = MONEY each letter represents a different digit from 0-9. Which digit is associated with each letter? 4. Jill is trying to determine her class schedule for the next semester. A semester consists of two seven-week half semesters. Jill must take four courses during each half semester. There are five time slots during each semester. Of course, Jill cannot take the same course twice. Jill has associated a value with each course and time slot. This data is in the file Classdata.xlsx. For example, course 1 during time slot 5 in semester 1 has a ­value of 5. Which courses should Jill take during each semester to maximize her total value from the semester’s courses? Chapter 33 Using Solver for Financial Planning Questions answered in this chapter: ■ Can I use Solver to verify the accuracy of the Excel PMT function or to determine ­mortgage payments for a variable interest rate? ■ Can I use Solver to determine how much money I need to save for retirement? The Solver feature in Microsoft Excel 2010 can be a powerful tool for analyzing financial planning problems. In many of these types of problems, a quantity such as the unpaid ­balance on a loan or the amount of money needed for retirement changes over time. For example, consider a situation in which you borrow money. Because only the n ­ oninterest ­portion of each monthly payment reduces the unpaid loan balance, we know that the ­following equation (which I’ll refer to as Equation 1) is true. (Unpaid loan balance at end of period t)=(Unpaid loan balance at beginning of period t) –[(Month t payment)–(Month t interest paid)] Now suppose that you are saving for retirement. Until you retire, you deposit at the ­beginning of each period (let’s say periods equal years) an amount of money in your ­retirement account, and during the year, your retirement fund is invested and receives a ­return of some percentage. During retirement, you withdraw money at the beginning of each year and your retirement fund still receives an investment return. We know that the ­following equation (Equation 2) describes the relationship between contributions, ­withdrawals, and return. (Retirement savings at end of Year t+1) = (Retirement savings at end of Year t + retirement contribution at beginning of Year t+1 – Year t+1 retirement withdrawal) *(Investment return earned during Year t+1) Combining basic relationships such as these with Solver enables you to answer a myriad of interesting financial planning problems. Answers to This Chapter’s Questions Can I use Solver to verify the accuracy of the Excel PMT function or to determine ­mortgage payments for a variable interest rate? Recall that in Chapter 10, “More Excel Financial Functions,” we found the monthly payment (assuming payments occur at the end of a month) on a 10-month loan for $8,000.00 at an annual interest rate of 10 percent to be $1,037.03. Could we have used Solver to determine 275 276 Microsoft Excel 2010: Data Analysis and Business Modeling our monthly payment? You’ll find the answer in the PMT By Solver worksheet in the file Finmathsolver.xlsx, which is shown in Figure 33-1. Figure 33-1 Solver model for calculating the monthly payment for a loan. The key to this model is to use Equation 1 to track the monthly beginning balance. The Solver target cell is to minimize the monthly payment. The changing cell is the monthly payment. The only constraint is that the ending balance in Month 10 equals 0. I entered the beginning balance in cell B5. I entered a trial monthly payment in cell C5. Then I copied the monthly payment to the range C6:C14. Because I’ve assumed that the payments occur at the end of each month, interest is incurred on the balance at the beginning of the month. The monthly interest rate (I’ve named cell C1 rate) is computed in D1 by dividing the annual rate of 0.08 by 12. The interest paid each month is computed by copying from cell D5 to D6:D14 the formula rate*B5. Each month, this formula computes the interest as .006666*(month’s beginning balance). By copying the formula (B5–(Payment–D5)) from cell E5 to E6:E14, I use Equation 1 to compute each month’s ending balance. Because (Month t+1 beginning balance)=(Month t ending balance), each month’s beginning balance is computed by copying from cell B6 to B7:B14 the formula =E5. I am now ready to use Solver to determine the monthly payment. To see how I’ve set up the Solver Parameters dialog box, take a look at Figure 33-2. The goal is to minimize the monthly payment (cell C5). Note that the changing cell is the same as the target cell. The only constraint is that the ending balance for Month 10 must equal 0. Adding this constraint ensures that the loan is paid off. After I choose the Simplex LP engine and select the non-negative variables option, the Solver calculates a payment of $1,037.03, which matches the amount calculated by the Excel PMT function. Chapter 33 Using Solver for Financial Planning 277 Figure 33-2 Solver Parameters dialog box set up to determine mortgage payments. This model is linear because the target cell equals the changing cell and the constraint is ­created by adding multiples of changing cells. I should mention that when Solver models involve very large and/or very small numbers, the Solver sometimes thinks models that are linear are not linear. To avoid this problem, it is good practice to check the Use Automatic Scaling option in the Options dialog box. This should ensure that Solver properly recognizes linear models as being linear. Can I use Solver to determine how much money I need to save for retirement? By using Equation 2 (shown earlier in the chapter), you can easily determine how much ­money a person needs to save for retirement. Here’s an example. I am planning for my retirement, and at the beginning of this year and each of the next 39 years, I’m going to contribute some money to my retirement fund. Each year, I plan to ­increase my retirement contribution by $500. When I retire in 40 years, I plan to withdraw (at the beginning of each year) $100,000 per year for 20 years. I’ve made the following ­assumptions about the yields for my retirement investment portfolio: ■ During the first 20 years of my investing, the investments will earn 10 percent per year. ■ During all other years, my investments will earn 5 percent per year. 278 Microsoft Excel 2010: Data Analysis and Business Modeling I’ve assumed that all contributions and withdrawals occur at the beginning of the year. Given these assumptions, what is the least amount of money I can contribute this year and still have enough to make my retirement withdrawals? You can find the solution to this question on the Retire worksheet in the file Finmathsolver. xlsx, shown in Figure 33-3. Note that I’ve hidden many rows in the model. This worksheet simply tracks my retirement balance during each of the next 60 years. Each year, I earn the indicated interest rate on the retirement balance. I begin by entering a trial value for my Year 1 payment in cell C6. Copying the formula C6+500 from cell C7 to C8:C45 ensures that the retirement contribution increases by $500 per year during Years 2 through 40. I entered in column D the assumed return on my investments for each of the next 60 years. In cells E46:E65, I entered the annual $100,000 withdrawal for Years 41 through 60. Copying the formula (B6+C6–E6)*(1+D6) from F6 to F7:F65 uses Equation 2 to compute each year’s ending retirement account balance. Copying the formula =F6 from cell B7 to B8:B65 computes the beginning balance for years 2 through 60. Of course, the Year 1 initial balance is 0. Note that the value 6.8704E-07 in cell F65 is approximately 0, with the difference the ­result of a rounding error. Figure 33-3 Retirement planning data that can be set up for analysis with Solver. The Solver Parameters dialog box for this model is shown in Figure 33-4. I want to minimize my Year 1 contribution (cell C6). The changing cell is also my Year 1 contribution (cell C6). I ensure that I never run out of money during retirement by adding the constraint F46:F65>=0 so that the ending balance for Years 41 through 60 is non-negative. Chapter 33 Using Solver for Financial Planning 279 Figure 33-4 Solver Parameters dialog box set up for the retirement problem. After choosing the Simplex LP engine and selecting the Make Unconstrained Variables ­Non-Negative option in the Solver Parameters dialog box, I click Solve in the Solver Parameters dialog box and find that the first year’s contribution should equal $1,387.87. This model is linear because the target cell equals the changing cell and the constraint is ­created by adding multiples of changing cells. Note that because the return on the ­investments is not the same each year, there is no easy way to use Excel financial functions to solve this problem. Solver provides a general framework that can be used to analyze financial planning problems when mortgage rates or investment returns are not constant. Problems 1. I am borrowing $15,000 to buy a new car. I am going to make 60 end-of-month ­payments. The annual interest rate on the loan is 10 percent. The car dealer is a friend of mine, and he will allow me to make the monthly payment for Months 1 through 30 equal to one-half the payment for Months 31 through 60. What is the payment during each month? 2. Solve the retirement planning problem assuming that withdrawals occur at the end of each year and contributions occur at the beginning of each year. 3. Solve our mortgage example assuming that payments are made at the beginning of each month. 280 Microsoft Excel 2010: Data Analysis and Business Modeling 4. In the retirement-planning example, suppose that during Year 1, your salary is $40,000 and your salary increases 5 percent per year until retirement. You want to save the same percentage of your salary each year you work. What percentage of your salary should you save? 5. In the mortgage example, suppose that you want your monthly payment to increase by $50 each month. What should each month’s payment be? 6. Assume you want to take out a $300,000 loan on a 20-year mortgage with end-ofmonth payments. The annual rate of interest is 6 percent. Twenty years from now, you need to make an ending balloon payment of $40,000. Because you expect your income to increase, you want to structure the loan so that at the beginning of each year your monthly payments increase by 2 percent. Determine the amount of each year’s ­monthly payment. 7. Blair’s mother is saving for Blair’s college education. The following payments must be made at the indicated times: 4 years from now 5 years from now 6 years from now 7 years from now $24,000 $26,000 $28,000 $30,000 The following investments are available: ❑ Today, one year from now, two years from now, three years from now, and four years from now, she can invest money for one year and receive a 6 percent return. ❑ Today, 2 years from now, and 4 years from now, she can invest money for two years and receive a 14 percent return. ❑ Three years from now she can invest money for three years and receive an 18 percent return. ❑ Today she can invest money for seven years and receive a 65 percent return. What is the minimum amount that Blair’s mother needs to commit today to Blair’s ­college education that ensures she can pay her college bills? 8. I owe $10,000 on one credit card that charges 18 percent annual interest and $5,000 on another credit card that charges 12 percent annual interest. Interest for the month is based on the month’s beginning balance. I can afford to make total payments of $2,000 per month and the minimum monthly payment on each card is 10 percent of the card’s unpaid balance at the beginning of the month. My goal is to pay off both cards in two years. What is the minimum amount of interest I need to pay? Chapter 34 Using Solver to Rate Sports Teams Question answered in this chapter: ■ Can I use Excel to set NFL point spreads? Many of us follow basketball, football, hockey, or baseball. Oddsmakers set point spreads on games in all these sports and others. For example, the bookmakers’ best guess was that the Indianapolis Colts would win the 2010 Super Bowl by 7 points. Instead, the New Orleans Saints won the game. In this chapter, I’ll show that the Excel Solver predicted that the Saints were the better team and should have been favored. Let’s now see how the Solver can ­accurately estimate the relative ability of NFL teams. Using a simple Solver model, you can generate reasonable point spreads for games based on the scores of the 2009 season. The work is in file Nfl2009april2010.xlsx, shown in Figure 34-1. You simply use the score of each game of the 2009 NFL season as input data. The changing cell for the Solver model is a rating for each team and the size of the home field advantage. For example, if the Indianapolis Colts have a rating of +5 and the New York Jets have a rating of +7, the Jets are considered two points better than the Colts. With regard to the home-field edge, in most years, college and professional football teams, as well as professional basketball teams, tend to win by an average of three points (whereas home college basketball teams tend to win by an average of five points). In our model, however, I will define the home edge as a changing cell and have the Solver estimate the home edge. You can define the outcome of an NFL game to be the number of points by which the home team outscores the visitors and predict the outcome of each game by using the ­following equation (which I’ll refer to as Equation 1): (Predicted points by which home team outscores visitors)=(Home edge)+(Home team rating)– (Away Team rating) For example, if the home field edge equals three points, when the Colts host the Jets, the Colts will be a one-point favorite (3+5–7). If the Jets host the Colts, the Jets will be a fivepoint favorite (3+7-5). (The Tampa Bay-New England game was played in London, so there is no home edge for this game.) What target cell will yield reliable ratings? The goal is to find the set of values for team ­ratings and home-field advantage that best predicts the outcome of all games. In short, you want the prediction for each game to be as close as possible to the outcome of each game. This suggests that you want to minimize the sum over all games of (Actual outcome)– (Predicted outcome). However, the problem with using this target is that positive and negative prediction errors cancel each other out. For example, if you over predict the home-team 281 282 Microsoft Excel 2010: Data Analysis and Business Modeling margin by 50 points in one game and under predict the home-team margin by 50 points in another game, the target cell would yield a value of 0, indicating perfect accuracy, when in fact you were off by 50 points a game. You can remedy this problem by minimizing the sum over all games by using the formula [(Actual Outcome)–(Predicted Outcome)]2. Now positive and negative errors will not cancel each other out. Answer to This Chapter’s Question Can I use Excel to set NFL point spreads? Let’s now see how to determine accurate ratings for NFL teams by using the scores from the 2009 regular season. You can find the data for this problem in the file Nfl2009april2010.xlsx, which is shown in Figure 34-1. Figure 34-1 Data rating NFL teams that we’ll use with Solver. To begin, I placed a trial home-field advantage value in cell B8. Starting in row 5, columns E and F contain the home and away teams for each game. For ­example, the first game (listed in row 5) is Tennessee playing at Pittsburgh. Column G ­contains the home team’s score, and column H contains the visiting team’s score. As you can see, the Steelers beat the Titans 13-10. I can now compute the outcome of each game (the number of points by which the home team beats the visiting team) by entering the formula =G5–H5 in cell I5. By pointing to the lower-right portion of this cell and double-clicking the left mouse button, you can copy this formula down to the last regular season game, which appears in row 260. (By the way, an easy way to select all the data is to press Ctrl+Shift+Down Arrow. This key combination takes you to the last row filled with data—row 260 in this case.) In column J, I use Equation 1 to generate the prediction for each game. The prediction for the first game is computed in cell J5 as follows: =$B$8+VLOOKUP(E5,$B$12:$C$43,2,FALSE)-VLOOKUP(F5,$B$12:$C$43,2,FALSE) Chapter 34 Using Solver to Rate Sports Teams 283 This formula creates a prediction for the first game by adding the home edge to the ­home-team rating and then subtracting the visiting-team rating. (Note that in row 103 I ­deleted the term $B$8 from the formula because there was no home edge in the New England-Tampa Bay game.) The term VLOOKUP(E5,$B$12:$C$43,2,FALSE) locates the ­h­ome-team rating, and VLOOKUP(F5,$B$12:$C$43,2,FALSE) looks up the visiting team’s rating. (For more information about using lookup functions, see Chapter 3, “Lookup Functions.”). In column K, I compute the squared error (actual score–predicted score)2 for each game. Our squared error for the first game is computed in cell K5 with the formula = (I5-J5)^2. After selecting the cell range I5:K5, you can double-click and copy the formulas down to row 260. Next I compute the target cell in cell K3 by summing all the squared errors with the formula SUM(J5:J260). Tip You can enter a formula for a large column of numbers such as this by typing =SUM( and then selecting the first cell in the range you want to add together. Press Ctrl+Shift+Down Arrow to enter the range from the cell you selected to the bottom row in the column and then add the closing parenthesis. It is convenient to make the average team rating equal to 0. A team with a positive rating is better than average and a team with a negative rating is worse than average. I computed the average team rating in cell C10 with the formula AVERAGE(C12:C43). I can now fill in the Solver Parameters dialog box as shown in Figure 34-2. Figure 34-2 Solver Parameters dialog box set up for NFL ratings. 284 Microsoft Excel 2010: Data Analysis and Business Modeling I minimize the sum of the squared prediction errors for all games (computed in cell K3) by changing each team’s rating (listed in cells C12:C43) and the home advantage (cell B8). The constraint C10=0 ensures that the average team rating is 0. From Figure 34-1, you can see that the home team has an advantage of 2.26 points over the visiting team. The 10 highestrated teams are shown in Figure 34-3. Remember that the ratings listed in cell range E3:E34 are computed by Solver. In the template file, you can start with any numbers in these cells, and Solver will still find the “best” ratings. Figure 34-3 Top 10 teams for the NFL 2009 season. These ratings have the Saints around 5 points better than the Colts, so this model would have predicted (before the playoffs) that the Saints would beat the Colts by 5 points. Why is our model not a linear Solver model? This model is not linear because the target cell adds together terms of the form (Home Team Rating+Home Field Edge–Visiting Team Rating)2. Recall that for a Solver model to be linear, the target cell must be created by adding together terms with the form (changing cell)*(constant). This relationship doesn’t exist in this case, so the model is not linear. Solver does obtain the correct answer, however, for any sports-rating ­model in which the target cell minimizes the sum of squared errors. Note I chose the GRG nonlinear engine because this model is not linear and did not involve “nonmathematical functions” such as IF statements. I did not select the Make Unconstrained Variables Non-Negative option because to have the team ratings average 0, you must allow some of the team ratings to be negative. Note Recently, I found that the GRG Solver engine works poorly when automatic saling is checked. I recommend that you go open the Options dialog box and clear the Use Automatic Scaling option. Chapter 34 Using Solver to Rate Sports Teams 285 Problems 1–4. The files Nfl0x.xlsx (x = 1, 2, 3, 4) contain scores for every regular season game during the 200x NFL season. Rate the teams for each season. During each season which teams would you forecast to have made the Super Bowl? 5. For the 2004 season, devise a method to predict the actual score of each game. Hint: Give each team an offensive rating and a defensive rating. Who had the best offense? Who had the best defense? 6. True or False? An NFL team could lose every game and be an above-average team. 7. The file Nba01_02.xlsx contains scores for every game during the 2001–2002 NBA ­season. Rate the teams. 8. The file Nba02_03.xlsx contains scores for every regular season game during the 2002–2003 NBA season. Rate the teams. 9. The file Worldball.xlsx contains all scores from the 2006 World Basketball Championships. Rate the teams. Who were the best three teams? 10. Our method of rating teams works fine for football and basketball. What problems arise if you apply these methods to hockey or baseball? Chapter 35 Warehouse Location and the GRG Multistart and Evolutionary Solver Engines Questions answered in this chapter: ■ Where in the US should an Internet shipping company locate a single warehouse to minimize the total distance that packages are shipped? ■ Where in the U.S. should an Internet shipping company locate two warehouses to ­minimize the total distance that packages are shipped? In Microsoft Excel 2010, the Solver has been blessed with many new exciting capabilities. In this chapter (and Chapters 36 and 37) I will try to explain how the Solver’s new algorithms can help you solve many important optimization problems. Understanding the GRG Multistart and Evolutionary Solver Engines As I pointed out in Chapter 28, “An Introduction to Optimization with Excel Solver,” the Excel 2010 Solver has three engines that it uses to solve optimization problems: Simplex LP, GRG Nonlinear, and Evolutionary. In the following sections, I’ll provide more details about how the latter two of these engines are used to solve optimization problems. How Does Solver Solve Linear Solver Problems? As I pointed out in Chapters 28 through 33, a Solver model is linear if all references to ­changing cells in the target cells and constraints are created by adding together terms of the form (changing cells)*constants. For linear models, you should always select the Simplex LP engine, which is designed to efficiently find solutions to linear Solver models. The Excel 2010 Solver can handle problems with up to 200 changing cells and 100 constraints. Versions of Solver that can handle larger problems are available from the website Solver.com. 287 288 Microsoft Excel 2010: Data Analysis and Business Modeling How Does the GRG Nonlinear Engine Solve Nonlinear Optimization Models? If your target cell and/or any of your constraints contain references to changing cells that are not of the form (changing cell)*(constant) you have a nonlinear model. If x and y are changing cells, references such as the following in the target cell and/or any constraints make your model nonlinear: ■ x2 ■ xy ■ sin x ■ ex ■ xe2y If your nonlinear formulas involve ordinary math operators like the previous examples, then proper use of the GRG Nonlinear engine should quickly find the optimal solution to your Solver model. To illustrate how the GRG Nonlinear engine works, suppose you want to ­maximize –x2 + 4x + 2. This function is graphed in Figure 35-1. Figure 35-1 How the GRG Nonlinear engine maximizes a function. You can see that this function is maximized for x = 2. Notice also that for x = 2, the f­ unction has a slope of 0. The GRG Nonlinear engine solves this problem by trying to find a point at which the slope of the function is 0. Similarly, if you want to minimize y = x2, the GRG Nonlinear engine solves this problem by determining that the slope of this function is 0 for x = 0. See Figure 35-2. Chapter 35 Warehouse Location and the GRG Multistart and Evolutionary Solver Engines 289 Figure 35-2 How the GRG Nonlinear engine minimizes a function. Unfortunately, there are many functions that cannot be maximized simply by locating a point where the function’s slope equals 0. For example, suppose you want to maximize the function shown in Figure 35-3, when x ranges between -5 and +10. Figure 35-3 Maximizing a function with multiple peaks. You can see that this function has more than one peak. If you start with a value of x near 1, you will find the right solution to the problem (x = 1). If you start near another peak—say near x = 5—you will find a solution of x = 5, which is incorrect. Because in most problems (especially those with more than one changing cell) you do not know a good starting point, it appears you have a major hurdle to clear. Fortunately, Excel 2010 has a Multistart option. You can select Multistart after choosing Options and then clicking on the GRG Nonlinear tab. When the Multistart option is selected, Excel chooses many starting solutions and finds the best answer after beginning with these starting points. This approach usually resolves the multiple peak and valley problem. By the way, pressing Esc stops the Solver. Also, keep in mind that the GRG Multistart option works best when you place reasonable upper and lower bounds on your changing cells (for example, you do not specify changing cell<100 million) . 290 Microsoft Excel 2010: Data Analysis and Business Modeling The GRG engine also runs into trouble if the target cell and/or constraints utilize nonsmooth functions like MAX, MIN, ABS, IF, SUMIF, COUNTIF, SUMIFS, COUNTIFS, and others that ­involve changing cells. These functions create points where there is no uniquely defined slope due to the fact that the slope changes abruptly For example, suppose an optimization problem requires you to model the value of a European call option with a $40 exercise price. This call option lets you buy the stock for $40. If the stock price is s at expiration of the ­option, then the value of the call option is max(0, s-40). I graphed this relationship in Figure 35-4. It is clear that when s = 40, the option value has no slope, so the GRG engine would break down. Figure 35-4 Option value has no slope for $40 stock price. As Figure 35-5 shows, Solver models that include the absolute value function (recall that the absolute value of a number is just the distance of the number from 0) will have no slope for x = 0. In Excel the function ABS(x) returns the absolute value of a number x. Figure 35-5 Absolute value function has no slope for x = 0. Chapter 35 Warehouse Location and the GRG Multistart and Evolutionary Solver Engines 291 Optimization problems in which the target cell and/or any of the constraints have no slope for any changing cell values are called nonsmooth optimization problems. Even the GRG Multistart option has difficulty with these types of problems. In these situations, you should apply Solver’s Evolutionary engine. For nonlinear solver models, the Solver is limited to 100 changing cells and 100 constraints. How Does the Evolutionary Solver Engine Tackle Nonsmooth Optimization Problems? The Evolutionary Solver in Excel 2010 is based on genetic algorithms, a concept discovered by John Holland, a computer science professor at the University of Michigan. To use the Evolutionary Solver, begin by taking 50–100 points in the problem’s feasible region (that is, the set of points that meet the constraints.) This set of points is called the population. Then, the target cell is evaluated for each point. Using the idea of survival of the fittest from the theory of evolution, you change the points in the population in a way that increases the likelihood that future population members are located near previous population members that have a good target cell value. Because this approach is based on target cells values and not on slopes, multiple peaks and valleys pose no problem. Also, functions that do not have slopes (the so-called nonsmooth functions) also become a less important issue. The Evolutionary Solver engine (like the GRG Multistart option) also works best when reasonable upper and lower bounds are placed on your changing cells. After you select the Evolutionary Solver engine, its best to choose Options, display the Evolutionary tab, and change the mutation rate to .5. Also select the Required Bounds On Variables check box and increase the maximum time without improvement to 3,600 seconds. Increasing the mutation rate decreases the likelihood that the Solver gets stuck near a poor solution. Increasing the ­maximum time without improvement to 3,600 seconds allows the Solver to run until it fails to improve the target cell for 3,600 seconds. That way, the Solver keeps running if you leave your computer. Now let’s use the Excel 2010 Solver to solve two interesting facility location problems. Answer to This Chapter’s Questions Where in the US should an Internet shipping company locate a single warehouse to ­minimize the total distance that packages are shipped? The number of shipments (in thousands) made each year to various cities is shown in Figure 35-6. (See the worksheet One warehouse in the file Warehouseloc.xlsx.) 292 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 35-6 Data for the single warehouse problem. A key to this model is the following formula, which gives the approximate distance between two U.S. cities having a latitude and longitude given by (Lat1, Long1) and (Lat2 and Long2). Distance = 69 * (Lat1 - Lat2)2 + (Long1 - Long2)2 To begin, enter in cells F4:G4 trial values for the latitude and longitude of the warehouse. Next, by copying from F7 to F8:F27 the formula 69*SQRT((C7-$F$4)^2+(D7-$G$4)^2), you compute the approximate distance of each city from the warehouse. Next, copying from G7 to G8:G27 the formula E7*F7 computes the distance traveled by the shipments to each city. In cell H5, the formula SUM(G7:G27) computes the total distance traveled by all shipments. Our target cell is to minimize H5 by changing F4:G4. After you select the GRG Nonlinear e ­ ngine, the Solver Parameters dialog box appears as in Figure 35-7. After you click Solve, you’ll find that the warehouse should be located at 36.81 degrees ­latitude and 92.48 degrees longitude, which is near Springfield, Missouri. (See Figure 35-6.) Chapter 35 Warehouse Location and the GRG Multistart and Evolutionary Solver Engines 293 Figure 35-7 Solver Parameters dialog box for the one warehouse problem. Where in the US should an Internet shipping company locate two warehouses to ­minimize the total distance that packages are shipped? The work for this problem is in the worksheet Two warehouses in the file Warehouseloc.xlsx, shown in Figure 35-8. Figure 35-8 Model for locating two warehouses. 294 Microsoft Excel 2010: Data Analysis and Business Modeling To begin, enter trial latitudes and longitudes for the warehouses in F4:G5. Next, copy from F7 to F8:F27 the formula 69*SQRT((C7-$F$4)^2+(D7-$G$4)^2) to compute the distance of each city from Warehouse 1. By copying from G7 to G8:G27 the f­ ormula 69*SQRT((C7-$F$5)^2+(D7-$G$5)^2), you compute the distance from each city to Warehouse 2. Since the shipments from each city will be sent from the closer warehouse, you now compute the distance of each city to the closer warehouse by copying from H7 to H8:H27 the formula MIN(F7,G7). In I7:I27, you compute the distance traveled by each city’s shipments by copying from I7 to I8:I27 the formula H7*E7. In cell I5, you compute the total distance traveled by shipments with the formula SUM(I7:I27). You’re now ready to use Solver to determine the optimal warehouse locations. The setup for the Solver Parameters dialog box is shown in Figure 35-9. Figure 35-9 Solver set up for locating two warehouses. Begin by selecting the GRG Nonlinear engine. Then use the “poor” solution, which places each warehouse at 0 latitude and longitude. This solution is poor for two reasons: It locates the warehouses in Africa and it puts two warehouses in the same place. After running Solver we find Solver recommends locating both warehouses in the same place. Of course, this is a suboptimal solution. The problem is twofold: The MIN function creates situations with no slopes, and perhaps our target cell, as a function of the four changing cells, has multiple peaks and valleys. If our target cell has multiple peaks and valleys (in four dimensions), then perhaps our poor starting solution is not near the lowest valley, which is the true optimal Chapter 35 Warehouse Location and the GRG Multistart and Evolutionary Solver Engines 295 s­ olution. In situations in which you suspect multiple peaks and valleys exist, it is a good idea to use the GRG Multistart option, which tries multiple starting points and finds the best ­answer from each starting point. Most of the time, the “best of the best” found by Multistart will be the optimal solution to the problem. To use Multistart, place bounds on the changing cells and run Solver using the GRG Multistart option. For the bounds on latitude changing cells, I selected 0 and 90 degrees. This ensures that the warehouse is north of the Equator. For the bounds on longitude changing cells, I chose 0 and 150, which ensures that our ­location is west of Greenwich, England and east of Anchorage, Alaska. In the results, the average distance traveled per shipment is 502 miles. The locations of the warehouses are shown in cells F4:G5 of Figure 35-7. Warehouse 1 is located near Lexington, Kentucky, while Warehouse 2 is located near Lancaster, California. To confirm that Solver found the optimal solution, I then ran the Evolutionary Solver engine and found no improvement in the optimal solution. Suppose I had set an upper bound for longitude of 110 degrees. After running Solver, I would have found that Solver recommends a longitude near 110 degrees. If you place bounds on a changing cell and the Solver forces the changing cell to assume a value near a bound, then you should relax the bound. Problems 1. Find the optimal solution to the warehouse problem if three warehouses are allowed. 2. Suppose you want to locate a single restroom so that company employees have to travel the smallest possible distance per day when going to the bathroom. Employees work in four locations within the plant as described in the following table: X Y Number of employees 5 20 6 50 50 12 25 75 23 80 30 15 Assume that employees always walk in a north-south or east-west direction when ­going to and from the restroom. Where should the restroom be located? Solve Problem 2 if the company wants to locate two restrooms. Chapter 36 Penalties and the Evolutionary Solver Questions answered in this chapter: ■ What are the keys to successfully using the Evolutionary Solver? ■ How can I use the Evolutionary Solver to assign 80 workers in Microsoft Finance to a job in one of four workgroups? Answers to This Chapter’s Questions What are the keys to successfully using the Evolutionary Solver? Previously I stated that the Evolutionary Solver should be used to find solutions to ­optimization problems in which the target cell and/or changing cells involve nonsmooth functions such as IF, ABS, MAX, MIN, COUNTIF, COUNTIFS, SUMIF, SUMIFS, AVERAGEIF, and AVERAGEIFS. Before solving a problem with the Evolutionary Solver, you should do the ­following in the Solver Parameters dialog box: ■ Click Options, select the Evolutionary tab, and increase the Mutation rate to .50. ■ Change Maximum Time Without Improvement to 3,600 seconds. ■ Place reasonable lower and upper bounds on your changing cells. Everything in life has an upside and a downside, and the Evolutionary Solver is no exception. The upside of the Evolutionary Solver is that it handles nonsmooth functions well. The downside is that constraints that are not linear functions of the changing cells are not handled very well. To handle most constraints with the Evolutionary Solver, you should penalize the target cell to make violation of a constraint a bad thing. Then the survival of the fittest will do away with any constraint violation. The chapter’s next question shows how to use penalties with the Evolutionary Solver. How can I use the Evolutionary Solver to assign 80 workers in Microsoft Finance to a job in one of four workgroups? You need to assign 80 employees to four workgroups. The head of each workgroup has rated each employee’s competence on a 0 to 10 scale (10 equals most competent). Each employee has rated his or her satisfaction with each job assignment (again on a 0 to 10 scale). For e ­ xample, Worker 1 has been given a 9 rating for Workgroup 1 and Worker 1 gives Workgroup 4 a rating of 7. 297 298 Microsoft Excel 2010: Data Analysis and Business Modeling The work for this question is in the file Assign.xlsx. (See Figure 36-1.) You want to assign ­between 18 and 22 people to each workgroup. You consider job competence to be twice as important as employee satisfaction. How can you assign employees to workgroups to maximize total satisfaction and ensure that each division has the required number of employees? Figure 36-1 Data for job assignment problem. In cells A3:A82 I entered trial assignments of workers to workgroups. Assigning each worker to Workgroup 1, for example, is an okay starting solution. Copying from K3 to K3:K82 the formula HLOOKUP(A3,Qual,B3+1) enables you to look up each employee’s qualifications for her assigned job. Note that Qual refers to the range C2:F82. Next copying from L3 to L3:L82 the formula HLOOKUP(A3,Satis,B3+1) enables you to lookup the employee’s satisfaction with her assigned job. Satis is the range name for G2:J82. To deal with the fact that each division needs between 18 and 22 employees you need to count how many employees have been assigned to each workgroup. You can do this in cells N6:N9 by copying from N6 to N7:N9 the formula COUNTIF($A$3:$A$82,M6). Next, in cells O6:O9 you determine if a workgroup has the incorrect number of employees by copying from O6 to O7:O9 the formula IF(OR(N6<18,N6>22),1,0). Now I’ll show how to work on computing the target cell. In K1:L1, you compute total ­competence and total job quality by copying from K1 to K1:L1 the formula SUM(K3:K82). To ensure that each workgroup will have between 18 and 22 workers, you can penalize the ­target cell. I chose a penalty of 1,000 for each workgroup that has less than 18 or more than 22 workers. There is no hard-and-fast rule to help you determine an appropriate penalty. In this situation, the average rating is 5. This yields a target cell of 2*400 + 400 = 1,200. Therefore, it seems likely that putting the wrong number of people in any division would not benefit the target cell by more than 1,000, so survival of the fittest will kill off any solution for which a workgroup has too many or too few workers. The appropriate penalty should not be Chapter 36 Penalties and the Evolutionary Solver 299 too large (100,000) because it sometimes makes the Solver ignore the “real” problem. If the penalty is too small, Solver will not achieve the goal you’ve set. In cell O10 I computed total number of divisions that do not have the correct number of workers with the formula SUM(O6:O9). Now we are finally ready to compute the target cell in cell O12 by adding twice the total competence to the total job satisfaction and subtracting a penalty of 1,000 for each group that does not have the correct number of employees. Our final target cell is computed with the formula 2*K1+L1-1000*O10. You now can create the Solver model for this problem You need to use the Evolutionary Solver because the COUNTIF functions are nonsmooth functions of the changing cells. The model is shown in Figure 36-2. Figure 36-2 Solver model for worker assignment problem. I maximize the weighted sum of workgroup and employee satisfaction less the penalty for an incorrect number of workers in a workgroup (cell O12). Then I constrain each worker’s ­assignment to be 1, 2, 3, or 4. The solution is shown in Figure 36-1. Each group has the right number of workers; average employee competence is 7.2, while average employee satisfaction is 6.3. Over all 80 workers, the average of their competence ratings is 4.4 and the overall average for satisfaction ratings is 5, so conditions have improved quite a lot over a random assignment. If you had tried the GRG Nonlinear engine (even with the Multistart option), the Solver would not have found the optimal solution because the model includes nonsmooth functions. Another tip about using the Evolutionary Solver is to use as few changing cells as possible, and you will usually be rewarded by having Solver take less time to find an optimal solution. 300 Microsoft Excel 2010: Data Analysis and Business Modeling Using Conditional Formatting to Highlight Each Employee’s Ratings You can use the conditional formatting feature to highlight in red each employee’s actual (based on her assignment) competence and satisfaction. Simply go to cell C3 and select the cell range C3:J82. Then, select New Rule from Conditional Formatting on the Home tab, ­select the Use A Formula To Determine Which Cells to Format option, and fill in the dialog box as shown in Figure 36-3. Figure 36-3 Using conditional formatting to highlight worker quality and satisfaction. This formula will enter in cell C3 a red format if and only if the first worker is assigned to Workgroup 1. You can copy this formula across and down so that each worker’s quality and satisfaction ratings are highlighted only for the workgroup to which each employee is assigned. Problems 1. Use the Evolutionary Solver to solve Problem 4 in Chapter 32, “Using Solver for Capital Budgeting.” 2. Solve the two warehouse problem in Chapter 35, “Warehouse Location and the GRG Multistart and Evolutionary Solver Engines,” assuming that each warehouse can ship at most 120,000 units. Chapter 36 Penalties and the Evolutionary Solver 301 3. In the fictional state of Politicians Care About U.S., there are eight congressional ­districts. Each of 15 cities must be assigned to a congressional district, and each district must be assigned between 150,000 and 250,000 voters. The makeup of each district is given below. Assign the cities to districts to maximize the number of districts won by the Democrats. City Rep Dem 1 80 34 2 43 61 3 40 44 4 20 24 5 40 114 6 40 64 7 70 34 8 50 44 9 70 54 10 70 64 11 80 45 12 40 50 13 50 60 14 60 65 15 50 70 4. Solve the assignment of workers example assuming that worker satisfaction is twice as important as the bosses’ ratings. Chapter 37 The Traveling Salesperson Problem Questions answered in this chapter: ■ How can I use Excel to solve sequencing problems? ■ How can I use Excel to solve a traveling salesperson problem (TSP)? Answers to This Chapter’s Questions How can I use Excel to solve sequencing problems? Many business problems involve the choice of an optimal sequence. Here are two examples: ■ In what order should a print shop work on 10 jobs to minimize the total time by which jobs fail to meet their due dates? Problems of this type are called job shop scheduling problems. ■ A salesperson lives in Boston and wants to visit 10 other cities before returning home. In which order should he visit the cities to minimize the total distance he travels? This is an example of the classic traveling salesperson problem (TSP). Here are two other examples of a TSP: ■ A delivery driver needs to make twenty stops today. In which order should she deliver packages to minimize her time on the road? ■ A robot must drill 10 holes to produce a single printed circuit board. Which order of drilling the holes minimizes the total time needed to produce a circuit board? The new and improved Excel 2010 Solver makes tackling sequencing problems very easy. Simply choose Evolutionary Solver, select your changing cells, and then select Dif. Setting the All Different option ensures that if you have 10 changing cells, Excel will assign the values 1, 2, …10 to the changing cells with each value occurring exactly once. In general, if you select a range of n changing cells to be different, Excel ensures that the changing cells assume the values 1, 2, …, n, with each possible value occurring exactly once. Let’s see how to use the Dif option to easily solve a traveling-salesperson problem. How can I use Excel to solve a traveling salesperson problem (TSP)? Let’s try and solve the following problem. Willie Lowman is a salesman who lives in Boston. He needs to visit each of the cities listed in Figure 37-1 and then return to Boston. In what order should Willie visit the cities to minimize the total distance he travels? Our work is in file Tsp.xlsx. 303 304 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 37-1 Data for the TSP. To model this problem in a spreadsheet, you should note that any ordering or permutation of the numbers 1 through 11 represents an order for visiting cities. For example, the ordering 2-4-6-8-10-1-3-5-7-9-11 can be viewed as traveling from Boston (City 1) to Dallas (City 3), to LA (City 5), and finally to SF (City 10) before returning to Boston. Since the ordering is viewed from the location of City 1, there are 10! = 10×9×8×7×6…×2×1 = 3,628,800 possible orderings for Willie to consider. To begin you need to determine the total distance traveled for any given order for visiting the cities. The INDEX function is perfect for this situation. Recall from Chapter 4, “The INDEX Function,” that the syntax of the INDEX function is INDEX(Range, row#, column#). Excel looks in the range of cells named Range and picks out the entry specified in row# and column# of Range. In this case, you can use the INDEX function to find the total distance traveled in visiting all cities. I began by entering in the range F16:F26 an order of the integers 1 through 11. Next, I named the range G4:Q14 distances, and entered in cell G16 the formula INDEX(distances,F26,F16). This formula determines the distance between the last city listed (in F26) and the first city listed (in F16). Next I enter the formula INDEX(Distances,F16,F17) in cell G17 and copy it to the range G18:G26. In G17 the formula computes the distance ­between the first and second city listed, and so on. Now I can compute the target cell (total distance traveled) in cell G27 with the formula SUM(G16:G26). At this point, I’m ready to invoke the Evolutionary Solver. I choose to minimize cell G27, and then I click Add Constraint and select the range F16:F26. Then I select Dif for All Different. This ensures that Solver always keeps the changing cells in the selected range, assuming the values 1, 2, up to 11. Each value will occur exactly once. The Solver Parameters dialog box is shown in Figure 37-2. Before running Solver, I increased the Mutation rate to .5. Chapter 37 The Traveling Salesperson Problem 305 Figure 37-2 Solver set up for a traveling salesperson problem. The minimum possible distance to travel is 8,995 miles. To see the order in which the c­ ities are visited, simply begin in the row with a 1 (corresponding to Willie’s home, Boston) and follow the cities in the listed sequence. The cities are visited in the following order: ­Boston-NY-Pittsburgh-Chicago-Denver-Seattle-SF-LA-Phoenix-Dallas-Miami-Boston. There are many other sequences for visiting the cities that also yield the minimum total travel ­distance of 8,995 miles. Problems 1. A small job shop needs to schedule six jobs. The due date and days needed to ­complete each job are given below. In what order should the jobs be scheduled to minimize the total days the jobs are late? Job Processing time Due date(measured from today) 1 9 32 2 7 29 3 8 22 4 18 21 5 9 37 6 6 28 306 Microsoft Excel 2010: Data Analysis and Business Modeling 2. The file Nbamiles.xlsx contains the distance between all NBA arenas. Suppose you live in New York and want to visit each arena once and return to New York. In what order should you visit the cities to minimize total distance traveled? 3. Suppose now that you live in Atlanta and are driving 29 general managers. Each GM wants to return to his home. Each time you visit an arena, you drop off a GM at his home arena. In what order should you drop off the GMs in order to minimize the total distance traveled by the GMs. 4. In the Willy Lowman problem, suppose you must visit NY immediately after Denver. What is the solution to the problem? Chapter 38 Importing Data from a Text File or Document Question answered in this chapter: ■ How can I import data from a text file into Excel so that I can analyze it? Jeff Sagarin, the creator of the USA Today basketball and football ratings, and I have ­developed a system to rate NBA players for the Dallas Mavericks team and its owner Mark Cuban. Every day during the season, Jeff’s FORTRAN program produces a multitude of ­information, including ratings for each Dallas Maverick lineup during each game. Jeff’s ­program produces this information in the form of a text file. In this chapter, I show you how you can import a text file into Microsoft Excel to use it for data analysis. Answers to This Chapter’s Question: How can I import data from a text file into Excel so that I can analyze it? You will likely often receive data in a Microsoft Word document or in a text (.txt) file that you need to import into Excel for numerical analysis. To import a Word document into Excel, you should first save it as a text file. You can then use the Text Import Wizard to import the file. With the Text Import Wizard, you can break data in a text file into columns by using one of the following approaches: ■ If you choose the fixed-width option, Excel guesses where the data should be broken into columns. You can easily modify Excel’s assumptions. ■ If you choose the delimited option, you pick a character (common choices are a comma, a space, or a plus sign), and Excel breaks the data into columns wherever it encounters the character you choose. As an example, the file Lineupsch38.docx (a sample of the data is shown below) contains the length of time each lineup played for Dallas in several games during the 2002–2003 season. The file also contains the “rating” of the lineup. For example, the first two lines tell you that 307 308 Microsoft Excel 2010: Data Analysis and Business Modeling against Sacramento, the lineup of Bell, Finley, LaFrentz, Nash, and Nowitzki were on the court together for 9.05 minutes and that the lineup played at a level of 19.79 points (per 48 ­minutes), worse than an average NBA lineup. Bell Finley LaFrentz Nash Nowitzki - 19.79 695# 9.05m SAC DAL* Finley Nash Nowitzki Van Exel Williams - 11.63 695# 8.86m SAC DAL* Finley LaFrentz Nash Nowitzki Van Exel 102.98 695# 4.44m SAC DAL* Bradley Finley Nash Nowitzki Van Exel - 44.26 695# 4.38m SAC DAL* Bradley Nash Nowitzki Van Exel Williams 9.71 695# 3.05m SAC DAL* Bell Finley LaFrentz Nowitzki Van Exel 121.50 695# 2.73m SAC DAL* Bell LaFrentz Nowitzki Van Exel Williams 39.35 695# 2.70m SAC DAL* Bradley Finley Nowitzki Van Exel Williams 86.87 695# 2.45m SAC DAL* Bradley Nash Van Exel Williams Rigaudeau - 54.55 695# 2.32m SAC DAL* We’d like to import this lineup information into Excel so that, for each lineup, the following information would be listed in different columns: ■ Each player’s name ■ Minutes played by the lineup ■ Rating of the lineup The player Van Exel (his full name is Nick Van Exel) raises a problem. If you choose the ­delimited option and use a space character to break the data into columns, Van Exel will ­occupy two columns. For lineups that include Van Exel, the numerical data will be located in a different column than the column in which the data is located for lineups that don’t include Van Exel. To remedy this problem, I used the Replace command in Word to change each ­occurrence of Van Exel to Exel. Now, when Excel breaks up the data where a space ­occurs, Van Exel will require only one column. The first few rows of our data now look like the following. Bell Finley LaFrentz Nash Nowitzki - 19.79 695# 9.05m SAC DAL* Finley Nash Nowitzki Exel Williams - 11.63 695# 8.86m SAC DAL* Finley LaFrentz Nash Nowitzki Exel 102.98 69 5# 4.44m SAC DAL* Bradley Finley Nash Nowitzki Exel 44.26 695# 4.38m SAC DAL* Bradley Nash Nowitzki Exel Williams 9.71 69 5# 3.05m SAC DAL* Bell Finley LaFrentz Nowitzki Exel - 121.50 695# 2.73m SAC DAL* Bell LaFrentz Nowitzki Exel Williams 39.35 69 5# 2.70m SAC DAL* Bradley Finley Nowitzki Exel Williams 86.87 69 5# 2.45m SAC DAL* Bradley Nash Exel Williams Rigaudeau 54.55 695# 2.32m SAC DAL* The trick to importing data from a Word or text file into Excel is to use the Excel Text Import Wizard. As I mentioned earlier, you first need to save the Word file (Lineupsch38.docx in this example) as a text file. To do this, simply open the file in Word, click the File tab, click Save As, and then select Plain Text in the Save As Type list. In the File Conversion dialog box, select the Windows (Default) option, and then click OK. Your file should now be saved with the name Lineupsch38.txt. Close the Word document. In Excel, open the file Lineupsch38.txt. You’ll see step 1 of the Text Import Wizard, which is shown in Figure 38-1. Chapter 38 Importing Data from a Text File or Document 309 Figure 38-1 Step 1 of the Text Import Wizard. Clearly, in this case you want to select the Delimited option and break the data at each space. However, let’s suppose that you choose Fixed Width. Then step 2 of the Text Import Wizard appears, shown in Figure 38-2. As you can see, you can create, move, or delete a break point. For many data import operations, changing column breaks can be a hit-or-miss adventure. Figure 38-2 Step 2 of the Text Import Wizard after selecting the Fixed Width option. If you select Delimited in step 1, you’ll see the second step of the Text Import Wizard that’s shown in Figure 38-3. In this example, I’ve selected Space as the delimiter. Selecting the Treat 310 Microsoft Excel 2010: Data Analysis and Business Modeling Consecutive Delimiters As One option ensures that consecutive spaces result in only a single column break. I recommend keeping Tab selected because many Excel add-ins do not work properly if Tab is cleared. Figure 38-3 Step 2 of the Text Import Wizard after selecting Delimited option. When you click Next, you’re sent to the third step in the wizard, which is shown in Figure 38-4. By selecting the General option as the format, you direct Excel to treat ­numerical data as numbers and other values as text. Figure 38-4 Step 3 of the wizard, in which you can select a format to apply to the data you’re importing. Chapter 38 Importing Data from a Text File or Document 311 When you click Finish, the wizard imports the data into Excel, as shown in Figure 38-5. Figure 38-5 Excel file with lineup information. Each player is listed in a separate column (columns A–E); column F contains the rating of each lineup, column G contains the game number, column H contains the minutes played by each lineup, and columns I and J list the two teams playing in the game. After saving the file as an Excel workbook (.xlsx), you can use all of the analytic capabilities of Excel to analyze the performance of Dallas’s lineups. For example, you could calculate the average performance of the team when Dirk Nowitzki is on or off the court. Problems 1. The file Kingslineups.docx contains performance ratings for some of the Sacramento Kings lineups. Import this data into Excel. 2. In the example discussed in the chapter, the time each lineup played (column H) ends with an m. Modify the file so that the time played by each lineup is an actual number. Chapter 39 Importing Data from the Internet Questions answered in this chapter: ■ Yahoo Finance provides analyst ratings (buy, sell, and hold) for stocks. How can I ­import this information into Excel? ■ Is there a way I can download current stock prices into Excel? We all know that the World Wide Web contains useful data on just about everything. However, you can’t really do any sort of analysis of this data while it’s on the Web. You need to import the data into Microsoft Excel, which you can do very easily. After you open the website where the data you want is located, copy the URL to the Clipboard, and then open an Excel worksheet. On the Data tab, in the Get External Data group, click From Web. When the New Web Query dialog box appears, paste the URL into it, and then click Go. The web page appears, and you can select the data you want to import into Excel. The answer to this chapter’s first question shows you how to implement this simple procedure. Answers to This Chapter’s Questions Yahoo Finance provides analyst ratings (buy, sell, and hold) for stocks. How can I import this information into Excel? The URL http://finance.yahoo.com/q/al?s=MSFT+Analyst+Opinion contains information about analysts’ forecasts for the future price of Microsoft stock. For example, in Figure 39-1, you can see that on August 2, 2010, 31 analysts predicted that on average Microsoft stock would sell on August 2, 2011, for $33.35. The highest prediction was $40, and the lowest prediction was $24. It would be useful to import this data into Excel so that you could better understand the data. You’ll find the web queries used in this example in the Analysts Forecasts ­worksheet in the file Webqueries.xlsx. When you open the Webqueries file you will see the message “Security Warning: Data connections have been disabled. Enable content?” You can, of course, enable the content if you believe the source (this book’s website) is a safe source. 313 314 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 39-1 Analyst forecast for Microsoft in August 2010. The Web contains a lot of useful data, but it isn’t easy to analyze on a website. To import the data into Excel, copy the URL and then open a blank worksheet. Now display the Data tab on the ribbon, and in the Get External Data group, click From Web. When the New Web Query dialog box appears, press Ctrl+V to paste the URL into the Address box, and then click Go. The New Web Query dialog box displays the data shown in Figure 39-2. Figure 39-2 New Web Query dialog box after choosing a URL. You now click the arrow that points to the data you want to download and import. In this case, you would click the arrow directly to the left of Mean Target. The arrow changes to a check mark. After clicking Import, you’ll see the Import Data dialog box, in which you indicate to Excel where you want to place the data. I chose cell G11 of the current worksheet for this example. After clicking OK, the analysts’ ratings are imported into the worksheet. (See Figure 39-3.) Note that the numbers and labels are beautifully separated into different cells. Chapter 39 Importing Data from the Internet 315 Figure 39-3 Analyst forecasts for Microsoft made on August 2, 2010. You can easily set your query to be refreshed or updated in any fashion you want. Just ­right-click anywhere in the query results, select Data Range Properties, and change the Refresh Control settings. As shown in Figure 39-4, I specified that the query be refreshed ­every minute and be automatically refreshed when the file is opened. Figure 39-4 Refresh settings for the web query. To edit this query, simply right-click anywhere within the query output, and select Edit Query. By clicking the Options button shown in the upper- right of Figure 39-2, you can control the formatting of your query results. Of course, when you run this web query again, you’ll probably see different information because analysts are constantly changing their views of the future stock price for Microsoft. Is there a way I can download current stock prices into Excel? Excel comes with a built-in web query that can be used to download current information about stocks. This web query is a dynamic web query, which means that you can set the ­query to update stock information as it changes in real time. All you have to do is select the data you want to update and then, on the Data tab in the Connections group, click Refresh All. Let’s see how to download real-time stock information about Microsoft (ticker symbol MSFT) and International Business Machines (ticker symbol IBM) into Excel. 316 Microsoft Excel 2010: Data Analysis and Business Modeling Open or create a worksheet in Excel, and then display the Data tab. In the Get External Data group, double-click Existing Connections. Now select the web query named MSN MoneyCentral Investor Stock Quotes. Click Open, and then use the Import Data dialog box to indicate where you want to place the data in the worksheet. Click OK, and then fill in the Enter Parameter Value dialog box as shown in Figure 39-5. The query downloads information about Microsoft and IBM into Excel. Figure 39-6 (and the MSFT and IBM worksheet in the file Webqueries.xlsx) shows a sample of the downloaded information at the close of trading on August 2, 2010. Checking the options shown in Figure 39-5 ensures that the worksheet changes to reflect the most current information. Figure 39-5 Use the Enter Parameter Value dialog box to designate the stocks for which you want the ­dynamic web query to download information. Figure 39-6 Downloaded information about Microsoft and IBM stocks. Excel also ships with web queries designed to download currency exchange rates and ­information about major stock indexes. These queries are static, however, and do not update information in real time unless you rerun the query. Of course, you can create your own web queries. Creating web queries is beyond the scope of this book. See Chapter 4 of Data Analysis for Managers with Microsoft Excel by S. Christian Albright, Wayne L. Winston, and Christopher Zappe (Duxbury Press, 2004) for an ­introduction to creating web queries. Chapter 39 Importing Data from the Internet 317 Problems 1. Download real-time information about Disney (ticker symbol DIS) and the Gap (ticker symbol GPS) into Excel. 2. Use the built-in web query designed to download current foreign exchange rate ­information into Excel. 3. Go to NBA.com and download the career statistics of your favorite player into Excel. 4. Go to MLB.com and download the career statistics of your favorite player into Excel. 5. Go to NFL.com and download the season statistics of your favorite player into Excel. 6. Go to http://www.boxofficeguru.com/blockbusters.htm and download data on the top moneymaking movies of all time into Excel. 7. Go to http://money.cnn.com/magazines/fortune/fortune500/full_list/ and download ­information on the Fortune 500 into Excel. 8. Go to Fangraphs.com and download the latest Chicago Cubs 2010 batting statistics. (They are pretty sad!) Chapter 40 Validating Data Questions answered in this chapter: ■ I’m entering scores from professional basketball games into Excel. I know that a team scores from 50 to 200 points per game. I once entered 1,000 points instead of 100 points, which messed up my analysis. Is there a way to have Excel prevent me from making this type of error? ■ I’m entering the date and amount of my business expenses for a new year. Early in the year, I often enter the previous year in the Date field by mistake. Is there a way I can set up Excel to prevent me from making this type of error? ■ I’m entering a long list of numbers. Can I have Excel warn me if I enter a nonnumeric value? ■ My assistant needs to enter state abbreviations when she enters dozens and dozens of sales transactions. Can we set up a list of state abbreviations to minimize the chance that she’ll enter an incorrect abbreviation? A lot of our work often involves mind-numbing data entry. When you’re entering a lot of ­information into Microsoft Excel, it’s easy to make an error. The data validation feature in Excel 2010 can greatly lessen the chances that you’ll commit a costly error. To set up data validation, you begin by selecting the cell range that you want to apply data validation to. Choose Data Validation on the Data tab, and then specify the criteria (as you’ll see in this chapter’s examples) that Excel uses to flag any invalid data that’s entered. Answers to This Chapter’s Questions I’m entering scores from professional basketball games into Excel. I know that a team scores from 50 to 200 points per game. I once entered 1,000 points instead of 100 points, which messed up my analysis. Is there a way to have Excel prevent me from making this type of error? Let’s suppose that you’re going to enter into cells A2:A11 the number of points scored by the home team, and in cells B2:B11, you’ll enter the number of points scored by the visiting team. (You’ll find the work I did to solve this problem in the file Nbadvl.xlsx.) You want to ensure that each value entered in the range A2:B11 is a whole number from 50 through 200. Begin by selecting the range A2:B11, and then choose Data Validation on the Data tab. Select the Settings tab, select Whole Number from the Allow list, and then fill in the Data Validation dialog box as shown in Figure 40-1. 319 320 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 40-1 Use the Settings tab in the Data Validation dialog box to set up data-validation criteria. Excel’s default response to invalid data (called an error alert) is a message stating “The value entered is not valid. A user has restricted values that can be entered into the cell.” You can use the Error Alert tab in the Data Validation dialog box (see Figure 40-2) to change the nature of the error alert, including the icon, the title for the message box, and the text of the message itself. On the Input Message tab, you can create a prompt that informs a user about the type of data that can be safely entered. The message is displayed as a comment in the selected cell. For example, I entered an error alert that states “Please enter a whole number between 50 and 200.” After typing a number that violates that criteria, say 34, in cell E5, you would then see the message shown in Figure 40-3. Figure 40-2 Error Alert tab options in the Data Validation dialog box. Figure 40-3 Error alert for the basketball data validation example. Chapter 40 Validating Data 321 I’m entering the date and amount of my business expenses for a new year. Early in the year, I often enter the previous year in the date field by mistake. Is there a way I can set up Excel to prevent me from making this type of error? Suppose it is early in 2013 and you are entering the date in the cell range A2:A20. (See the file Datedv.xlsx.) Simply select the range A2:A20, and then choose Data Validation on the Data tab. Fill in the Settings tab of the Data Validation dialog box as shown in Figure 40-4. Then you will not be allowed to enter any date earlier than 1/1/2013. Figure 40-4 Use settings such as these to ensure the validity of dates you enter. If you enter a date in this range that occurs earlier than January 1, 2013, you’ll be warned about the error. For example, entering 1/15/2012 in cell A3 will bring up the error alert you define. I’m entering a long list of numbers. Can I have Excel warn me if I enter a nonnumeric value? To unleash the full power of data validation, you need to use the Custom setting. When you select Custom in the Allow list on the Settings tab of the Data Validation dialog box (see Figure 40-4), you use a formula to define valid data. A formula you enter for data validation works the same as a formula used for conditional formatting, which is described in Chapter 24, “Conditional Formatting.” You enter a formula that is true if and only if the content of the first cell in the selected range is valid. When you click OK in the Data Validation dialog box, the formula is copied to the remaining cells in the range. When you enter a value in a cell in the selected range, Excel displays an error alert if the formula you entered returns False for that value. To illustrate the use of the Custom setting, let’s suppose that you want to ensure that each entry in the cell range B2:B20 is a number. (See the file Numberdv.xlsx.) The key to solving this problem is using the Excel ISNUMBER function. The ISNUMBER function returns True 322 Microsoft Excel 2010: Data Analysis and Business Modeling if the function refers to a cell that contains numeric data. The function returns False if the ­function refers to a cell that contains a nonnumeric value. After selecting the cell range B2:B20 and placing the cursor in B2, display the Data tab, click Data Validation in the Data Tools group, and then fill in the Settings tab of the Data Validation dialog box as shown in Figure 40-5. Figure 40-5 Use the ISNUMBER function to ensure that the data in a range is numeric. After clicking OK, you’ll receive an error prompt if you try to enter any nonnumeric value in B2:B20. For example, if you type John in cell B3, you receive an error prompt. If you click Data Validation while working in cell B3, the formula shown in Figure 40-5 is ­displayed as =ISNUMBER(B3). This demonstrates that the formula entered in cell B2 is copied in the correct fashion. Entering John in cell B3 causes =ISNUMBER(B3) to return False, so you receive the error alert. My assistant needs to enter state abbreviations when she enters dozens and dozens of sales transactions. Can we set up a list of state abbreviations to minimize the chance that she’ll enter an incorrect abbreviation? The key to this data validation problem is to use the List validation criteria. Begin by entering a list of state abbreviations. See the file Statedv.xlsx. In this example, I used the range I6:I55 and named the range abbrev. Next, select the range in which you’ll enter state abbreviations. (The example uses D5:D156.) After clicking Data Validation on the Data tab, fill in the Data Validation dialog box as shown in Figure 40-6. Chapter 40 Validating Data 323 Now, whenever you select a cell in the range D5:D156, clicking the drop-down arrow ­displays a list of state abbreviations, as shown in Figure 40-7. Only abbreviations that appear on the list are valid values in this range. If you do not use the drop-down list and instead type a state abbreviation, you’ll receive an error message if you enter an incorrect abbreviation (such as ALK for Alaska). Figure 40-6 The Data Validation dialog box can be used to define a list of valid values. Figure 40-7 Drop-down list of state abbreviations. Remarks ■ If you press F5, click Special in the Go To dialog box, and then check Data Validation, Excel selects all cells with data validation settings. You can also use the Go To Special dialog box to select all cells containing conditional formatting. ■ In previous versions of Excel, if you wanted to use a data validation drop-down list based on a data source list in a different worksheet, you needed to name the list (as I did in this chapter’s example) for the drop-down list to work. In Excel 2010 this ­limitation has been removed. 324 Microsoft Excel 2010: Data Analysis and Business Modeling ■ If you use the dynamic-range technique described in Chapter 22, “The OFFSET Function,” changes you make (adding or deleting items) to the data source list are ­automatically reflected in the drop-down box. (See Problem 10.) Also, if you name the data source list as an Excel table (see Chapter 26, “Tables”), changes in the data source are reflected in the drop-down list, as long as you point to the list range and do not try to type the table name. ■ Suppose you want to use a drop-down list to select a company you sell candy bars to. You want another drop-down list that you can use to select the list of candy bars you sell at the selected store. The problem is that the same set of candy bars might not be sold at each store. How do you create such a nested list selection? Suppose the stores are Target and CVS. Suppose you assign a range name of Target to the list of candy bars sold at Target, and a range name of CVS to the list of candy bars sold at CVS. If the drop-down list for store selection is in, for example, A20, you could create the appropriate drop-down list in cell B20 by clicking Data Validation and filling in for the list selected the formula =INDIRECT(A20). As I discussed in Chapter 23, “The INDIRECT Function,” if A20 contains CVS, the list will key off the range CVS that contains all candy bars sold at CVS, and so on. See Problem 11. ■ To clear data validation from a range, select the range, choose Data Validation on the Data tab, and then select Clear All. ■ If you have a long list, you probably want to invoke Excel’s Autocomplete feature. If you start the range for your drop-down list in the cell below the end of the list (no blank cells allowed), then Autocomplete will work. See the file Fruitlist.xlsx. ■ You can also use data validation to set up criteria based on the length of text in a cell (see Problem 4) or the time of day (see Problem 15). Problems 1. You are entering nonnegative whole numbers in the cell range C1:C20. Enter a data validation setting that ensures that each entry is a nonnegative whole number. 2. You are entering in the cell range C1:C15 the dates of transactions that occurred during July 2004. Enter a data validation setting that ensures that each date entered occurs in July 2004. 3. With the List option in the group of data validation settings, you can generate an ­error message if a value that is not included in a list is entered in the cell range you’re ­validating. Suppose you’re entering employee first names in the cell range A1:A10. Chapter 40 Validating Data 325 The only employees of the company are Jen, Greg, Vivian, Jon, and John. Use the List ­option to ensure that no one misspells a first name. 4. With the Text Length option in the group of data validation settings, you can generate an error message when the number of characters in a cell does not match the number you define. Use the Text Length option to ensure that each cell in the range C1:C10 will contain at most five characters (including blanks). 5. You are entering employee names in the cell range A1:A10. Use data validation to ­ensure that no employee’s name is entered more than twice. (Hint: Use the Custom ­setting and the COUNTIF function.) 6. You are entering product ID codes in the cell range A1:A15. Product ID codes must always end with the characters xyz. Use data validation to ensure that each product ID code entered ends with xyz. (Hint: Use the Custom setting and the RIGHT function.) 7. Suppose you want every entry in the cell range B2:B15 to contain text and not a ­numerical value. Use data validation to ensure that entering a numerical value returns an error. (Hint: Use the ISTEXT function.) 8. Set up a data validation procedure that ensures that all numbers typed in column E will contain exactly two decimal places. (Hint: Use the LEN and FIND functions.) 9. The file Latitude.xlsx contains a formula to compute the distance between two cities using their latitude and longitude. The file also contains the latitude and longitude of various U.S. cities. Set up a drop-down list so that when you select a city in cell P2 and another city in cell Q2, the distance between the cities is computed in Q10. 10. Ensure that if new cities are added to the list of cities in Problem 9, the drop-down list will include the new cities. 11. The file Candybardata.xlsx contains a list of stores where you sell candy bars. The ­worksheet also contains the types of candy bars you sell at each store and the price charged for each candy bar. Set up your worksheet so that users can enter or select both the store and a candy bar from a drop-down list and have the price show up in D19. ❑ Enable users to select a store from the drop-down box in B19. ❑ Set up a drop-down list in C13 to let users choose a type of candy bar from a list containing only those candy bars sold at a selected store. (Hint: Use the INDIRECT function when defining the list.) ❑ If you change the store in B19, then C19 might temporarily not list a candy bar sold at the newly selected store. Ensure that in C19, your worksheet says Make selection above if this is the case. For example, if B19 says CVS and C13 says ­gumballs, then C19 should say Make selection above. 326 Microsoft Excel 2010: Data Analysis and Business Modeling 12. You have a $100,000 expense budget. In column A, you will enter expenses as they are incurred. Set up a data validation criterion that ensures that the total expenses listed in column E do not exceed your budget. 13. Set up a data validation criterion that ensures that a column of numbers is entered in descending order. 14. Set up data validation criteria that ensures that a person can only enter dates that are on Monday through Friday. (Hint: The WEEKDAY function returns a 1 for Sunday, a 2 for Monday, etc.) 15. Set up data validation criteria that ensures that the time entered in the cell range A1:A20 will be a morning time. Chapter 41 Summarizing Data by Using Histograms Questions answered in this chapter: ■ People often say that a picture is worth a thousand words. Can I use Excel to create a picture (called a histogram) that summarizes the values in a data set? ■ What are some common shapes of histograms? ■ What can I learn by comparing histograms from different data sets? The ability to summarize a large data set is important. The three tools used most often to summarize data in Microsoft Excel are histograms, descriptive statistics, and PivotTables. In this chapter, I discuss the use of histograms for summarizing data. I cover descriptive ­statistics in Chapter 42, “Summarizing Data by Using Descriptive Statistics,” and PivotTables in Chapter 43, “Using PivotTables and Slicers to Describe Data.” Answers to This Chapter’s Questions People often say that a picture is worth a thousand words. Can I use Excel to create a ­picture (called a histogram) that summarizes the values in a data set? A histogram is a commonly used tool to summarize data. Essentially, a histogram tells you how many observations (another term for data points) fall in various ranges of values. For ­example, a histogram created from monthly Cisco stock returns might show how many monthly returns Cisco had from 0 percent through 10 percent, 11 percent through 20 ­percent, and so on. The ranges in which you group data are referred to as bin ranges. Let’s look at how to construct and interpret histograms that summarize the values of monthly returns for Cisco and GM stock in the years 1990–2000. You’ll find this data (and returns for other stocks) in the file Stock.xlsx. Figure 41-1 shows a subset of the data (in the Stockprices worksheet). During March 1990, for example, Cisco stock increased in value by 1.075 percent. 327 328 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 41-1 Monthly stock returns. When constructing histograms with Excel, you can let Excel define the bin ranges or you can define the bin ranges yourself. If Excel defines the bin ranges, you could end up with weirdlooking bin ranges, such as –12.53 percent to 4.52 percent. For this reason, I prefer to define the ranges myself. A good way to start defining bin ranges for a histogram (you can think of defining bin ­ranges as setting boundaries) is to divide the range of values (between the smallest and ­largest) into 8 to 15 equally spaced categories. All the monthly returns for Cisco are from –30 ­percent through 40 percent, so I chose bin range boundaries of –30 percent, –20 ­percent, –10 ­percent, 0 percent, and so on up to 40 percent. To create bin ranges, I first enter CSCO, .4, .3, .2,…, –.2, –.3 (the boundaries of the bin ranges) in cells H54:H62. Next, on the Data tab on the ribbon, in the Analysis group, I click Data Analysis to open the Data Analysis dialog box. The dialog box lists the functions of the Analysis ToolPak, which contains many of the statistical capabilities in Excel. Note If the Data Analysis command doesn’t appear on the Data tab, click the File tab, click Options, and then click Add-Ins. In the Manage box, click Excel Add-Ins, and then click Go. In the Add-Ins dialog box, select Analysis ToolPak, and then click OK. Now you can access the Analysis ToolPak functions by clicking Data Analysis in the Analysis group on the Data tab. By clicking Histogram in the Data Analysis dialog box, you open the Histogram dialog box shown in Figure 41-2. Chapter 41 Summarizing Data by Using Histograms 329 Figure 41-2 Histogram dialog box for the Cisco histogram. Here’s how to fill in the dialog box as it’s shown: ■ Select the input range (F51:F181). (To select the range F51:F181, you can select cell F51 and then press Ctrl+Shift+Down Arrow. This takes you to the bottom of the column.) This range includes all the data you want to use to create the histogram. I included the label CSCO from cell F51 because when you do not include a label in the first row, the x-axis of the histogram is often labeled with a number, which can be confusing. ■ The bin range (H54:H62) includes the boundaries of the bin ranges. Excel creates bins of –30 percent through –20 percent, –20 percent through –10 percent, and so on up to 30–40 percent. ■ I checked the Labels option because the first rows of both the bin range and the input range contain labels. ■ I chose to create the histogram in a new worksheet (named histo). ■ Select Chart Output, or Excel will not create a histogram. Click OK in the Histogram dialog box. The Cisco histogram will look like the one shown in Figure 41-3. Figure 41-3 Cisco histogram created by using an Excel Analysis ToolPak function. When you create the histogram, you’ll see gaps between the bars. To remove these gaps, right-click any bar on the graph and choose Format, Data Series. On the Series Options tab, 330 Microsoft Excel 2010: Data Analysis and Business Modeling drag Gap Width to 0%. You might also see that a label does not appear for each bar. If all the labels do not appear, select the graph and drag any handle that has two arrows to widen the graph. You can also reduce the font size to make a label appear. To reduce the font size, right-click the graph axis, and then right-click Font. Change the font size to 5. You can also change the title of the chart by selecting the text and entering the title you want. After I made some of these changes, the histogram appears as its shown in Figure 41-4. Figure 41-4 You can change the format of different elements in the chart. Notice that Cisco returns are most likely between 0 and 10 percent per month, and the height of the bars drops off as the graph moves away from the tallest bar. When you create the histogram, you also obtain the bin-range frequency summary shown in Figure 41-5. Figure 41-5 Cisco bin-range frequencies. From the bin-range frequencies, you can learn, for example, that for two months, Cisco’s ­return was greater than –30 percent and less than or equal to –20 percent; for 13 months, the monthly return was greater than –20 percent and less than or equal to –10 percent. What are some common shapes of histograms? For most data sets, a histogram created from the data will be classified as one of the following: ■ Symmetric ■ Skewed right (positively skewed) ■ Skewed left (negatively skewed) ■ Multiple peaks Chapter 41 Summarizing Data by Using Histograms 331 Let’s look at each type in more detail. See the file Skewexamples.xlsx. ■ Symmetric distribution A histogram is symmetric if it has a single peak and looks approximately the same to the left of the peak as to the right of the peak. Test scores (such as IQ tests) are often symmetric. For example, the histograms of IQs (see cell W42) might look like Figure 41-6. Notice that the height of the bars one bar away from the peak bar are approximately the same, the height of the bars two bars away from the peak bar are approximately the same, and so on. The bar labeled 105 represents all people with an IQ greater than 95 and less than or equal to 105, the bar labeled 65 represents all people having an IQ less than or equal to 65, and so on. Also note that Cisco monthly returns are approximately symmetric. Figure 41-6 Symmetric histogram. ■ Skewed right (positively skewed) A histogram is skewed right (positively skewed) if it has a single peak and the values of the data set extend much farther to the right of the peak than to the left of the peak. Many economic data sets (such as family or individual income) exhibit a positive skew. Figure 41-7 (see cell T24) shows an example of a positively skewed histogram created from a sample of family incomes. Figure 41-7 A positively skewed histogram created from data about family income. 332 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Skewed left (negatively skewed) A histogram is skewed left (negatively skewed) if it has a single peak and the values of the data set extend much farther to the left of the peak than to the right of the peak. Days from conception to birth are negatively skewed. An example is shown in cell Q7 of Figure 41-8. The height of each bar represents the number of women whose time from conception to birth fell in the given bin range. For example, two women gave birth fewer than 180 days after conception. Figure 41-8 A negatively skewed histogram of data plotting days from conception to birth. ■ Multiple peaks When a histogram exhibits multiple peaks, it usually means that data from two or more populations are being graphed together. For example, suppose the diameter of elevator rails produced by two machines yields the histogram shown in Figure 41-9. See cell Q11 of the file Twinpeaks.xlsx. Figure 41-9 A multiple-peak histogram. In this histogram, the data clusters into two separate groups. In all likelihood, each group of data corresponds to the elevator rails produced by one of the machines. If you assume that the diameter you want for an elevator rail is .55 inches, you can conclude that one machine is producing elevator rails that are too narrow, whereas the other machine is producing elevator rails that are too wide. You should follow up with your interpretation of this histogram by constructing a histogram charting the elevator rails produced by each machine. This example shows why histograms are a powerful tool in quality control. Chapter 41 Summarizing Data by Using Histograms 333 What can I learn by comparing histograms from different data sets? Analysts are often asked to compare different data sets. For example, you might be asked how the monthly returns on GM and Cisco stock differ. To answer a question such as this, you can construct a histogram for GM by using the same bin ranges as for Cisco and then place one histogram above the other, as shown in Figure 41-10. See the Histograms worksheet of file Stock.xlsx. Figure 41-10 Using histograms that include the same bin ranges to compare different data sets. By comparing these two histograms, you can draw two important conclusions: ■ Typically, Cisco performed better than GM. You know this because the highest bar for Cisco is one bar to the right of the highest bar for GM. Also, the Cisco bars extend farther to the right than the GM bars. ■ Cisco had more variability, or spread about the mean, than GM. Note that GM’s peak bar contains 59 months, whereas Cisco’s peak bar contains only 41 months. This shows that for Cisco, more of the returns are outside the bin that represents the most likely Cisco return. Cisco returns are more spread out than GM returns. In Chapter 42, we’ll look at more details about the differences between the monthly returns on Cisco and GM. Problems 1. Use the data in Stock.xlsx to construct histograms for monthly returns for GE and Intel. 2. Use the data in Historicalinvest2009.xlsx to create histograms for annual returns on stocks and bonds. Then compare the annual returns on these stocks and bonds. 334 Microsoft Excel 2010: Data Analysis and Business Modeling 3. You are given (in the file Deming.xlsx) the measured diameter (in inches) for 500 rods produced by Rodco, as reported by the production foreman. A rod is considered ­acceptable if it is at least 1 inch in diameter. In the past, the diameter of the rods ­produced by Rodco has followed a symmetric histogram. ❑ Construct a histogram of these measurements. ❑ Comment on any unusual aspects of the histogram. Can you guess what might have caused any unusual aspects of the histogram? (Hint: One of quality-guru Edwards Deming’s 14 points is to “Drive out fear.”) 4. The file Unemployment.xlsx contains monthly U.S. unemployment rates. Create a ­histogram. Are unemployment rates symmetric or skewed? 5. The file Teams.xlsx contains runs scored by major league baseball teams during a ­season. Create a histogram. Are runs scored symmetric or skewed? 6. The file NFLpoints.xlsx contains points scored by NFL teams during a season. Create a histogram. Are points scored symmetric or skewed? Chapter 42 Summarizing Data by Using Descriptive Statistics Questions answered in this chapter: ■ What defines a typical value for a data set? ■ How can I measure how much a data set spreads from its typical value? ■ Together, what do the mean and standard deviation of a data set tell me about the data? ■ How can I use descriptive statistics to compare data sets? ■ For a given data point, can I easily find its percentile ranking within the data set? For example, how can I find the ninetieth percentile of a data set? ■ How can I easily find the second largest or second smallest number in a data set? ■ How can I rank numbers in a data set? ■ What is the trimmed mean of a data set? ■ When I select a range of cells, is there an easy way to get a variety of statistics that ­describe the data in those cells? ■ Why do financial analysts often use the geometric mean to summarize the average ­return on a stock? In Chapter 41, “Summarizing Data by Using Histograms,” I showed how you can describe data sets by using histograms. In this chapter, I show how to describe a data set by using particular characteristics of the data, such as the mean, median, standard deviation, and variance— measures that Microsoft Excel 2010 groups together as descriptive statistics. You can obtain the descriptive statistics for a set of data by clicking Data Analysis in the Analysis group on the Data tab and then selecting the Descriptive Statistics option. After you enter the relevant data and click OK, all the descriptive statistics of your data are displayed. Answers to This Chapter’s Questions What defines a typical value for a data set? To illustrate the use of descriptive statistics, let’s return to the Cisco and GM monthly stock return data in the file Stock.xlsx. To create a set of descriptive statistics for this data, click Data Analysis on the Analysis tab, and then select Descriptive Statistics. Fill in the Descriptive Statistics dialog box as shown in Figure 42-1. 335 336 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 42-1 Descriptive Statistics dialog box. The input range is the monthly Cisco and GM returns, located in the range E51:F181 ­(including the labels in row 51). I filled in the remainder of the Descriptive Statistics dialog box as shown in Figure 42-1 for the following reasons: ■ I selected Columns in the Grouped By options because each data set is listed in a ­different column. ■ I selected Labels In First Row because the first row of the data range contains labels and not data. ■ I selected cell I53 of the current worksheet as the first cell in the output range. ■ By selecting Summary Statistics, I ensured that I got the most commonly used ­descriptive statistics measures for both GM and Cisco monthly returns. When you click OK, Excel calculates the descriptive statistics, as shown in Figure 42-2. Figure 42-2 Descriptive statistics results for Cisco and GM stocks. Chapter 42 Summarizing Data by Using Descriptive Statistics 337 Now let’s interpret the descriptive statistics that define a typical value (or a central location) for Cisco’s monthly stock returns. The Descriptive Statistics output contains three measures of central location: mean (or average), median, and mode. ■ Mean The mean of a data set is written as x and is simply the average of all ­observations in the sample. If the data values were x1, x2,…, xn, then the following ­equation calculates the mean. x= 1 ∑ n i–n i–1 xi Here, n equals the number of observations in the sample, and x i is the ith observation in the sample. We find that Cisco’s mean monthly return is 5.6 percent per month. It is always true that the sum of the deviations of all values from the mean equals 0. Thus, you can think of a data set’s mean as a “balancing point” for the data. Of course, without using the Descriptive Statistics option, you can obtain a sample’s mean in Excel by applying the AVERAGE function to the appropriate cell range. ■ Median The median of a sample is the “middle” observation when the data is listed from smallest to largest. If a sample contains an odd number of observations, the ­median is the observation that has as many observations below it as above it. Thus, for a sample of nine, the median would be the fifth smallest (or fifth largest) observation. When a sample includes an even number of observations, you can simply average the two middle observations. Essentially, the median is the fiftieth percentile of the data. For example, the median monthly return on Cisco is 5 percent. You could also obtain this information by using the MEDIAN function. ■ Mode The mode is the most frequently occurring value in the sample. If no value ­occurs more than once, the mode does not exist. For GM, no monthly return occurred more than once for the years 1990–2000, so the mode does not exist. For Cisco, the mode was approximately 5.14 percent. In versions of Excel prior to Excel 2010, you could also use the MODE function to compute the mode. If no data value occurred more than once, the MODE function returned #NA. The problem is that a data set can have more than one mode, and the MODE f­ unction simply returned the first mode it found. For this reason, Excel 2010 has two new ­functions: MODE.SNGL and MODE.MULT (see the file Modefunctions.xlsx). MODE.SNGL performs exactly as the MODE function performed in earlier Excel ­versions. Earlier versions of Excel, however, do not recognize the MODE.SNGL function. MODE.MULT is an array function. You’ll learn more about array functions in Chapter 83, “Array Functions and Formulas.” To use the MODE.MULT function (or any other array function) you must first select the range of cells where the function will return values. Next, enter the function or formula. Finally, do not just press Enter; you must hold down the Ctrl key followed by the Shift key and then press Enter. The problem with the 338 Microsoft Excel 2010: Data Analysis and Business Modeling MODE.MULT function is that you do not know in advance how many modes a data set has, so you do not know the correct size of the range that you need to select. The file Modefunctions.xlsx (see Figure 42-3) shows the use of all three functions ­involving modes. Figure 42-3 Examples of Excel’s MODE functions. The data set displayed in Figure 42-3 has two modes (3 and 5). In cell F13 I entered the “old school” MODE function with the formula MODE(D5:D11). Excel returned the first mode it found (3). In cell F14 the formula MODE.SNGL(D5:D11) duplicates this result. After selecting the cell range E16:E17, I array-entered the formula MODE.MULT(D5:D11) and Excel returned both the modes (3 and 5). After selecting the cell range C16:C18 (a three-cell range), I array-entered the same formula, and C18 was filled with an #N/A because the data set had no third mode to fill the cell. Finally, I selected the single cell range E20 and array-entered the same formula. Because I selected a range containing a single cell, Excel returned only the first mode it found (3). The mode is rarely used as a measure of central location. It is interesting to note, ­however, that for a symmetric data set, the mean, median, and mode are equal. A natural question is whether the mean or median is a better measure of central ­location. Essentially, the mean is the best measure of central location if the data set does not exhibit an excessive skew. Otherwise, you should use the median as the measure of central location. If a data set is highly skewed, extreme values distort the mean. In this case, the median is a better measure of a typical data set value. For example, the U.S. government reports median family income instead of mean family income because family income is highly positively skewed. Chapter 42 Summarizing Data by Using Descriptive Statistics 339 The skewness measure reported by the Descriptive Statistics output indicates whether a data set is highly skewed. ❑ A skew greater than +1 indicates a high degree of positive skew. ❑ A skew less than –1 indicates a high degree of negative skew. ❑ A skew between –1 and +1 inclusive indicates a relatively symmetric data set. Thus, monthly returns of GM and Cisco exhibit a slight degree of positive skewness. Because the skewness measure for each data set is less than +1, the mean is a better measure of a typical return than the median. You can also use the SKEW function to compute the skew of a data set. ■ Kurtosis Kurtosis, which sounds like a disease, is not a very important measure. Kurtosis near 0 means a data set exhibits “peakedness” close to the normal (or standard bell-shaped) curve. (I’ll discuss the normal curve in Chapter 65, “The Normal Random Variable.”) Positive kurtosis means that a data set is more peaked than a normal random variable, whereas negative kurtosis means that data is less peaked than a normal random variable. GM monthly returns are more peaked than a normal curve, whereas Cisco monthly returns are less peaked than a normal curve. How can I measure how much a data set spreads from its typical value? Let’s consider two investments that each yield an average of 20 percent per year. Before ­deciding which investment you prefer, you’d like to know about the spread, or riskiness, of the investment. The most important measures of the spread (or dispersion) of a data set from its mean are sample variance, sample standard deviation, and range. ■ Sample variance and sample standard deviation by the following formula. 1 s = n–1 2 The sample variance s2 is defined i–n ∑ (x –x) i 2 i–1 You can think of the sample variance as the average squared deviation of the data from its mean. Intuitively, it seems like you should divide by n to compute a true average squared deviation, but for technical reasons you need to divide by n–1. Dividing the sum of the squared deviations by n–1 ensures that the sample variance is an unbiased measure of the true variance of the population from which the sampled data is drawn. The sample standard deviation s is just the square root of s2. Here is an example of these computations for the three numbers 1, 3, and 5. s2 = 1 [ ( 1 – 3 )2 + ( 3 – 3 )2 + ( 5 – 3 )2 ] = 4 3–1 340 Microsoft Excel 2010: Data Analysis and Business Modeling We find that s= 4=2 In the stock example, the sample standard deviation of monthly returns for Cisco is 12.2 percent with a sample variance of 0.015%2. Naturally, %2 is hard to interpret, so you usually look at the sample standard deviation. For GM, the sample standard deviation is 8.97 percent. In previous versions of Excel the sample variance of a data set was computed with the VAR function, and the sample standard deviation was computed with the STDEV function. You can still use these functions in Excel 2010, but Excel 2010 has added the equivalent functions VAR.S and STDEV.S. (The S stands for sample.) The new functions VAR.P and STDEV.P compute the population variance and population standard ­deviation. To compute a population variance or standard deviation, simply replace n-1 in the denominator of the definition of s2 by n. ■ Range The range of a data set is the largest number in the data set minus the s­ mallest number. Here, the range in the monthly Cisco returns is equal to 54 percent and the range for GM monthly returns is 52 percent. Together, what do the mean and standard deviation of a data set tell me about the data? Assuming that a histogram follows a Gaussian, or normal population, the rule of thumb tells us the following: ■ Approximately 68 percent of all observations are between x–s and x+s. ■ Approximately 95 percent of all observations are between x–2s and x+2s. ■ Approximately 99.7 percent of all observations are between x–3s and x+3s. For example, you would expect that approximately 95 percent of all Cisco monthly returns are from –19 percent through 30 percent, as shown here: Mean–2s=.056-2*(.122)=–19% and Mean+2s=.056+2*(.122)=30% Any observation more than two standard deviations away from the mean is called an outlier. For the Cisco data, 9 of 130 observations (or roughly 7 percent of all returns) are outliers. In general, the rule of thumb is less accurate for highly skewed data sets but is usually very accurate for relatively symmetric data sets, even if the data does not come from a normal population. Many valuable insights can be obtained by finding causes of outliers. Companies should try to ensure that the causes of “good outliers” occur more frequently and the causes of “bad” outliers occur less frequently. Chapter 42 Summarizing Data by Using Descriptive Statistics 341 Using Conditional Formatting to Highlight Outliers You’ll find that it is often useful to highlight all outliers in a data set. An example is shown in Figure 42-4 (see the Stockprices worksheet in the Stock.xlsx file). Figure 42-4 Outliers for Cisco highlighted with conditional formatting. For example, to highlight the outliers for the Cisco data, you first compute the lower cutoff for an outlier (mean–2s) in cell J69 and the upper cutoff for an outlier (mean+2s) in cell J70. Next, select the entire range of Cisco returns (cells F52:F181). Then go to the first cell in the range (F52), select Conditional Formatting on the Home tab, and select New Rule. In the New Formatting Rule dialog box, select Use A Formula To Determine Which Cells To Format, and then fill in the rest of the dialog box as shown in Figure 42-5. Figure 42-5 Conditional formatting rules to select outliers, as shown in the Edit Formatting Rule dialog box. 342 Microsoft Excel 2010: Data Analysis and Business Modeling This condition ensures that if cell F52 is either more than 2s above or below the mean monthly Cisco return, the format you select (a red font color in this case) will be applied to cell F52. This formatting condition is automatically copied to the selected range, and all ­outliers show up in red. How can I use descriptive statistics to compare data sets? You can use descriptive statistics to summarize the differences between data sets; for ­example, between Cisco and GM monthly returns. Looking at the shape and the measures and spread of a typical value, you can conclude the following: ■ Typically (looking at either the mean or the median), Cisco monthly returns are higher than GM. ■ Cisco monthly returns are more variable (looking at standard deviation, variance, and range) than monthly GM returns. ■ Both Cisco and GM monthly returns exhibit slightly positive skews. GM monthly returns are more peaked than a normal curve, whereas Cisco monthly returns are less peaked than a normal curve. For a given data point, can I easily find its percentile ranking within the data set? For ­example, how can I find the ninetieth percentile of a data set? In previous versions of Excel, the PERCENTILE and PERCENTRANK functions were useful when you wanted to determine an observation’s relative position in a data set. Four new related functions have been added in Excel 2010: PERCENTILE.INC, PERCENTILE.EXC, PERCENTRANK. INC, PERCENTRANK.EXC. The functions PERCENTILE.INC and PERCENTRANK.INC give results identical to the old PERCENTILE and PERCENTRANK functions. Take note that previous versions of Excel do not recognize these new functions. Examples of how all these functions work are in the file Percentile.xlsx, shown in Figure 42-6. Figure 42-6 Examples of PERCENTILE and PERCENTRANK Functions. Chapter 42 Summarizing Data by Using Descriptive Statistics 343 The PERCENTILE, PERCENTILE.INC, AND PERCENTILE.EXC functions return the percentile of a data set that you specify. The syntax of the these functions is of the form PERCENTILE. INC(data,k), which returns the kth percentile of the information in the cell range specified by data. Consider a data set consisting of n pieces of data. The old PERCENTILE and the new PERCENTILE.INC functions returned the pth percentile (0<p<1) as the 1+(n-1)p ranked item in the data set. For example, in H13, the formula PERCENTILE.INC(C4:C18,F13) computes the ninetieth percentile of the data in C4:C18 as 1+(15-1).9, which equals the 13.6 ranked item. That is, assuming the data is sorted in ascending order, Excel computes a number 60 percent of the way between the thirteenth data point (130) and the fourteenth data point (140). This yields 136. The PERCENTILE.EXC function computes the kth percentile as the (n+1)p ranked item in the data set. PERCENTILE.EXC computes the ninetieth percentile of the data as (15+1)(.9), which is the 14.4 ranked item. That is, the ninetieth percentile (assuming again data is sorted in ascending order) is computed to be 40 percent of the way between the fourteenth data point (140) and the fifteenth data point (300). This yields (.60)(140) + (.40)(300) =204. You can see that the two functions return drastically different answers. If you consider the data to have been drawn by sampling from a large set of data, you might assume that given the data you’ve seen, there is much more than a 10 percent chance that a piece of data would be more than 136. After all, two of the 15 data points are more than 130, so it does not seem reasonable to say that the ninetieth percentile of the data is only 136.Therefore, saying the ninetieth percentile is 204 seems more reasonable. I strongly recommend using the .EXC function instead of the .INC function. Note that the .EXC function does not compute a percentile for 0 and 1. The .EXC stands for the fact that the PERCENTILE.EXC function excludes the zero and one hundredth percentiles. The PERCENTRANK, PERCENTRANK.INC, and PERCENTRANK.EXC functions return the ­ranking of an observation relative to all values in a data set. The syntax of the PERCENTRANK.EXC function, for example, is PERCENTRANK.EXC(data,value). The PERCENTRANK and PERCENTRANK.INC functions both calculate the percentile rank of the kth smallest number in the data set as (k-1)/(n-1). Thus, as shown in cell E4, the PERCENTILE or PERCENTILE.INC function yields a rank of 0 for 10, because k =1 for this data point. The PERCENTRANK.EXC function computes the rank of the kth smallest data point as k/(n+1). In cell D4, the PERCENTRANK.EXC function returns a rank of 1/16 = .0625. A percentile ranking of 6.25 percent seems more realistic than a ranking of 0 percent because there is little reason to think that a value of 10 is the smallest data point in a larger data set from which this data was sampled. Note The PERCENTILE and PERCENTRANK functions are easily confused. To simplify, PERCENTILE yields a value of the data, whereas PERCENTRANK yields a percentage. 344 Microsoft Excel 2010: Data Analysis and Business Modeling How can I easily find the second largest or second smallest number in a data set? The formula =LARGE(range,k) returns the kth largest number in a cell range. The formula =SMALL(range,k) returns the kth smallest number in a cell range. For example, in the file Trimmean.xlsx, in cell F1, the formula =LARGE(C4:C62,2) returns the second largest number in the cell range C4:C62 (99), whereas in cell F2, the formula =SMALL(C4:C62,2) returns the second smallest number in the cell range C4:C62 (80). (See Figure 42-7.) Figure 42-7 Examples of the LARGE and SMALL functions, the RANK and RANK.AVG functions, and trimmed mean. How can I rank numbers in a data set? In previous versions of Excel, you used the RANK function to rank numbers in a data set. The syntax of the RANK function is RANK(number,array,0). Excel 2010 includes a new function, RANK.EQ, which returns results identical to the RANK function. This formula yields the rank of a number in a given array, where the largest number in the array is assigned rank 1, the second largest number is rank 2, and so on. The syntax RANK(number,array,1) or RANK. EQ(number,array,1) results in assigning a rank of 1 to the smallest number in the array, a rank of 2 to the second smallest number, and so on. In the file Trimmean.xlsx (see Figure 42-7), copying the formula RANK.EQ(C4,$C$4,$C$62,0) from cell D4 to D5:D62 returns the rank of each test score. For example, the score of 100 in cell C7 is the highest score, whereas the scores of 98 in cells C21 and C22 tied for third highest. Note that the RANK function returned a 3 for both scores of 98. Chapter 42 Summarizing Data by Using Descriptive Statistics 345 The new Excel 2010 function RANK.AVG has the same syntax as the other RANK f­ unctions, but in the case of ties, RANK.AVG returns the average rank for all tied data points. For ­example, since the two scores of 98 ranked third and fourth, RANK.AVG returns 3.5 for each. I generated the average ranks by copying the formula RANK.AVG(C4,$C$4:$C$62,0) from E4 to E5:E62. What is the trimmed mean of a data set? Extreme skewness in a data set can distort the mean of the data set. In these situations, ­people usually use median as a measure of the data set’s typical value. The median, however, is unaffected by many changes in the data. For example, compare the following two data sets: Set 1: –5, –3, 0, 1, 3, 5, 7, 9, 11, 13, 15 Set 2: –20, –18, –15, –10, –8, 5, 6, 7, 8, 9, 10 These data sets have the same median (5), but the second data set should have a lower ­“typical” value than the first. The Excel TRIMMEAN function is less distorted by extreme ­values than the AVERAGE function, but it is more influenced by extreme values than the median. The formula =TRIMMEAN(range,percent) computes the mean of a data set after ­deleting the data points at the top percent divided by 2 and bottom percent divided by 2. For example, applying the TRIMMEAN function with percent=10% converts the mean after deleting the top 5 percent and bottom 5 percent of the data. In cell F3 of the file Trimmean.xlsx, the formula =TRIMMEAN(C4:C62,.10) computes the mean of the scores in C4:C62 after deleting the three highest and three lowest scores. (The result is 90.04.) In cell F4, the ­formula =TRIMMEAN(C4:C62,.05) computes the mean of the scores in C4:C62 after deleting the top and bottom scores. This calculation occurs because .05*59=2.95 would indicate the deletion of 1.48 of the largest observations and 1.48 of the smallest. Rounding off 1.48 results in d ­ eleting only the top and bottom observations. (See Figure 42-7.) When I select a range of cells, is there an easy way to get a variety of statistics that ­describes the data in those cells? To see the solution to this question, select the cell range C4:C36 in the file Trimmean.xlsx. In the lower-right corner of your screen, the Excel status bar displays a cornucopia of statistics describing the numbers in the selected cell range. (See Figure 42-8.) For example, for the cell range C4:C36, the mean is 90.39, there are 33 numbers, the smallest value is 80, and the largest value is 100. If you right-click the status bar, you can change the displayed set of statistics. Figure 42-8 Statistics shown on the status bar. 346 Microsoft Excel 2010: Data Analysis and Business Modeling Why do financial analysts often use the geometric mean to summarize the average return on a stock? The file Geommean.xlsx contains the annual returns of two fictitious stocks. (See Figure 42-9.) Figure 42-9 Geometric mean. Cell C9 indicates that the average annual return on Stock 1 is 5 percent and the average ­annual return on Stock 2 is 10 percent. This would seem to indicate that Stock 2 is a better investment. If you think about it, however, what will probably happen with Stock 2 is that one year you will lose 50 percent and the next gain 70 percent. This means that every two years $1.00 becomes 1(1.7)(.5)=.85. Because Stock 1 never loses money, you know that it is clearly the better investment. Using the geometric mean as a measure of average annual return helps to correctly conclude that Stock 1 is the better investment. The geometric mean of n numbers is simply the nth root of the product of the numbers. For example, the geometric mean of 1 and 4 is the square root of 4 (2), whereas the geometric mean of 1, 2, and 4 is the cube root of 8 (also 2). To use the geometric mean to calculate an average annual return on an investment, you add 1 to each annual return and take the geometric mean of the resulting numbers. Then subtract 1 from this result to obtain an estimate of the stock’s average annual return. The formula =GEOMMEAN(range) finds the geometric mean of numbers in a range. So, to estimate the average annual return on each stock, you proceed as follows: 1. Compute 1+each annual return by copying from C12 to C12:D15 the formula =1+C5. 2. Copy from C16 to D16 the formula =GEOMEAN(C12:C15)–1. The annual average return on Stock 1 is estimated to be 5 percent, and the annual average return on Stock 2 is –7.8 percent. Note that if Stock 2 yields the mean return of –7.8 percent during two consecutive years, $1 becomes 1(1–.078)2=.85, which agrees with common sense. Chapter 42 Summarizing Data by Using Descriptive Statistics 347 Problems 1. Use the data in the file Stock.xlsx to generate descriptive statistics for Intel and GE stock. 2. Use your answer to Problem 1 to compare the monthly returns on Intel and GE stock. 3. City Power & Light produces voltage-regulating equipment in New York and ships the equipment to Chicago. A voltage regulator is considered acceptable if it can hold a voltage of 25–75 volts. The voltage held by each unit is measured in New York before each unit is shipped. The voltage is measured again when the unit arrives in Chicago. A sample of voltage measurements from each city is given in the file Citypower.xlsx. ❑ Using descriptive statistics, comment on what you have learned about the voltage held by units before and after shipment. ❑ What percentage of units are acceptable before and after shipping? ❑ Do you have any suggestions about how to improve the quality of City Power & Light’s regulators? ❑ Ten percent of all New York regulators have a voltage exceeding what value? ❑ Five percent of all New York regulators have a voltage less than or equal to what value? 4. In the file Decadeincome.xlsx, you are given a sample of incomes (in thousands of 1980 dollars) for a set of families sampled in 1980 and 1990. Assume that these families are representative of the whole United States. Republicans claim that the country was ­better off in 1990 than in 1980 because average income increased. Do you agree? 5. Use descriptive statistics to compare the annual returns on stocks, T-Bills, and corporate bonds. Use the data contained in the file Historicalinvest.xlsx. 6. In 1970 and 1971, eligibility for the U.S. armed services draft was determined on the basis of a draft lottery number. The number was determined by birth date. A total of 366 balls, one for each possible birth date, were placed in a container and shaken. The first ball selected was given the number 1 in the lottery, and so on. Men whose birthdays corresponded to the lowest numbers were drafted first. The file Draftlottery.xlsx contains the actual results of the 1970 and 1971 drawings. For example, in the 1970 drawing, January 1 received the number 305. Use descriptive statistics to demonstrate that the 1970 draft lottery was not random and the 1971 lottery was random (Hint: Use the AVERAGE and MEDIAN functions to compute the mean and median lottery number for each month.) 348 Microsoft Excel 2010: Data Analysis and Business Modeling 7. The file Jordan.xlsx gives the starting salaries (hypothetical) of all 1984 geography graduates from the University of North Carolina (UNC). What is your best estimate of a “typical” starting salary for a geography major? In reality, the major at UNC having the highest average starting salary in 1984 was geography because the great basketball player Michael Jordan was a geography major! 8. Use the LARGE or SMALL function to sort the annual stock returns in the file Historicalinvest.xlsx. What advantage does this method of sorting have over clicking the Sort button? 9. Compare the mean, median, and trimmed mean (trimming 10 percent of the data) of the annual returns on stocks, T-Bills, and corporate bonds given in the file Historicalinvest.xlsx. 10. Use the geometric mean to estimate the mean annual return on stocks, bonds, and T-Bills in the file Historicalinvest.xlsx. 11. The file Dow.xlsx contains monthly returns on the 30 Dow stocks during the last 20 years. Use this data to determine the three stocks with the largest mean monthly returns. 12. Using the Dow.xlsx data again, determine the three stocks with the most risk or variability. 13. Using the Dow.xlsx data, determine the three stocks with the highest skew. 14. Using the Dow.xlsx data, how do the trimmed-mean returns (trim off 10 percent of the returns) differ from the overall mean returns? 15. The file Incomedata.xlsx contains incomes of a representative sample of Americans in the years 1975, 1985, 1995, and 2005. Describe how U.S. personal income has changed over this time period. 16. The file Coltsdata.xlsx contains yards gained by the 2006 Indianapolis Colts on each rushing and passing play. Describe how the outcomes of rushing plays and passing plays differ. Chapter 43 Using PivotTables and Slicers to Describe Data Questions answered in this chapter: ■ What is a PivotTable? ■ How can I use a PivotTable to summarize grocery sales at several grocery stores? ■ What PivotTable layouts are available in Excel 2010? ■ Why is a PivotTable called a PivotTable? ■ How can I easily change the format in a PivotTable? ■ How can I collapse and expand fields? ■ How do I sort and filter PivotTable fields? ■ How do I summarize a PivotTable by using a PivotChart? ■ How do I use the Report Filter section of the PivotTable? ■ How do Excel 2010 slicers work? ■ How do I add blank rows or hide subtotals in a PivotTable? ■ How do I apply conditional formatting to a PivotTable? ■ How can I update my calculations when I add new data? ■ I work for a small travel agency for which I need to mass-mail a travel brochure. My funds are limited, so I want to mail the brochure to people who spend the most money on travel. From information in a random sample of 925 people, I know the gender, the age, and the amount these people spent on travel last year. How can I use this data to determine how gender and age influence a person’s travel expenditures? What can I conclude about the type of person to whom I should mail the brochure? ■ I’m doing market research about Volvo Cross Country Wagons. I need to determine what factors influence the likelihood that a family will purchase a station wagon. From information in a large sample of families, I know the family size (large or small) and the family income (high or low). How can I determine how family size and income influence the likelihood that a family will purchase a station wagon? 349 350 Microsoft Excel 2010: Data Analysis and Business Modeling ■ I work for a manufacturer that sells microchips globally. I’m given monthly actual and predicted sales for Canada, France, and the United States for Chip 1, Chip 2, and Chip 3. I’m also given the variance, or difference, between actual and budgeted revenues. For each month and each combination of country and product, I’d like to display the ­following data: actual revenue, budgeted revenue, actual variance, actual revenue as a percentage of annual revenue, and variance as a percentage of budgeted revenue. How can I display this information? ■ What is a calculated field? ■ How do I use a report filter or slicer? ■ How do I group items in a PivotTable? ■ What is a calculated item? ■ What is “drilling down”? ■ I often have to use specific data in a PivotTable to determine profit, such as the April sales in France of Chip 1. Unfortunately, this data moves around when new fields are added to my PivotTable. Does Excel have a function that enables me to always extract April’s Chip 1 sales in France from the PivotTable? Answers to This Chapter’s Questions What is a PivotTable? In numerous business situations, you need to analyze, or “slice and dice,” your data to gain important insights. Imagine that you sell different grocery products in different stores at different points in time. You might have hundreds of thousands of data points to track. PivotTables let you quickly summarize your data in almost any way imaginable. For example, for your grocery store data, you could use a PivotTable to quickly determine the following: ■ Amount spent per year in each store on each product ■ Total spending at each store ■ Total spending for each year In a travel agency, as another example, you might slice data so that you can determine whether the average amount spent on travel is influenced by age or gender or by both ­factors. In analyzing automobile purchases, you’d like to compare the fraction of large ­families that buy a station wagon to the fraction of small families that purchase a station wagon. For a microchip manufacturer, you’d like to determine total Chip 1 sales in France, for example, during April, and so on. A PivotTable is an incredibly powerful tool that you can use to slice and dice data. The easiest way to understand how a PivotTable works is to walk through some carefully constructed examples, so let’s get started! I’ll begin with Chapter 43 Using PivotTables and Slicers to Describe Data 351 an i­ntroductory example and then illustrate many advanced PivotTable features through ­subsequent examples. Note Excel 2010 contains a new feature called slicers that make it much easier to use PivotTables to examine your data from many perspectives. I discuss slicers later in the chapter. How can I use a PivotTable to summarize grocery sales at several grocery stores? The Data worksheet in the file Groceriespt.xlsx contains more than 900 rows of sales data. (See Figure 43-1.) Each row contains the number of units sold and revenue of a product at a store, as well as the month and year of the sale. The product group (either fruit, milk, cereal, or ice cream) is also included. You would like to see a breakdown of sales during each year of each product group and product at each store. You would also like to be able to show this breakdown during any subset of months in a given year (for example, what the sales were during January–June). Figure 43-1 Data for the grocery PivotTable example. Before creating a PivotTable, you must have headings in the first row of your data. Notice that the grocery data contains headings (Year, Month, Store, Group, Product, Units, and Revenue) in row 2. Place your cursor anywhere in the data, and then click PivotTable in the Tables group on the Insert tab. Excel opens the Create PivotTable dialog box, shown in Figure 43-2, and makes an assumption about your data range. (In this case, Excel correctly guessed that the data range was C2:I924.) By selecting Use An External Data Source, you can also refer to a database as a source for a PivotTable. 352 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-2 The Create PivotTable dialog box. After you click OK, you see the PivotTable Field List shown in Figure 43-3. Figure 43-3 The PivotTable Field List. You fill in the PivotTable Field List by dragging PivotTable headings, or fields, into the boxes, or zones. This step is critical to ensuring that the PivotTable will summarize and display the data in the manner you want. The four zones are as follows: ■ Row Labels Fields dragged here are listed on the left side of the table in the order in which they are added to the box. For example, I dragged to the Row Labels box the fields Year, Group, Product, and Store, in that order. This causes Excel to summarize data first by year, then for each product group within a given year, then by product within each group, and finally each product by store. You can at any time drag a field to a different zone or reorder the fields within a zone by dragging a field up or down in a zone or by clicking the arrow to the right of the field label. Chapter 43 Using PivotTables and Slicers to Describe Data 353 ■ Column Labels Fields dragged here have their values listed across the top row of the PivotTable. To start out this example, we have no fields in the Column Labels zone. ■ Values Fields dragged here are summarized mathematically in the table. I dragged Units and Revenue (in that order) to this zone. Excel tries to guess what kind of calculation you want to perform on a field. In this example, Excel guesses that Revenue and Units should be summed, which happens to be correct. If you want to change the method of calculation for a data field to an average, a count, or something else, simply click the data field and choose Value Field Settings. I give an example of how to use the Value Field Settings command later in the chapter. ■ Report Filter Beginning in Excel 2007, Report Filter is the new name for the old Page Field area. For fields dragged to the Report Filter area, you can easily pick any subset of the field values so that the PivotTable shows calculations based only on that subset. In this example, I dragged Month to the Report Filter area. That lets me easily select any subset of months, for example January–June, and the calculations are based on only those months. Slicers in Excel 2010 make report filters virtually obsolete. The completed PivotTable Field List is shown in Figure 43-4. The resulting PivotTable is shown in Figure 43-5 and in the All Row Fields worksheet of the workbook Groceriespt.xlsx. In row 6, you can see that 233,161 units were sold for $702,395.82 in 2007. Tip Here is some advice about navigating workbooks (like the one in this example) containing many worksheets. In the lower-right corner of the Excel window (to the left of the worksheet names), you will see four arrows. Clicking the left-most arrow takes you to the first worksheet; clicking the right-most arrow shows the last worksheet; and clicking the other arrows moves you one worksheet to the left or right. Note To see the field list, you need to be in a field in the PivotTable. If you do not see the field list, right-click any cell in the PivotTable and select Show Field List. Figure 43-4 Completed PivotTable Field List. 354 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-5 The Grocery PivotTable in compact form. What PivotTable layouts are available in Excel 2010? The PivotTable layout shown in Figure 43-5 is called the compact form. In the compact form, the row fields are shown one on top of another. To change the layout, first place your cursor anywhere within the table. On the Design tab, in the Layout Group, click Report Layout, and choose one of the following: Show In Compact Form (see Figure 43-5), Show In Outline Form (see Figure 43-6 and the Outline Form worksheet), or Show In Tabular Form (Figure 43-7 and the Tabular Form worksheet). Figure 43-6 The outline format. Chapter 43 Using PivotTables and Slicers to Describe Data 355 Figure 43-7 The tabular format. Why is a PivotTable called a PivotTable? You can easily pivot fields from a row to a column and vice versa to create a different layout. For example, by dragging the Year field to the Column Labels box, you create the PivotTable layout shown in Figure 43-8. (See the Years Column worksheet.) Figure 43-8 The Years field pivoted to the column field. How can I easily change the format in a PivotTable? If you want to change the format of an entire column field, simply double-click the column heading and select Number Format from the Value Field Settings dialog box. Then apply the format you want. For example, in the Formatted $s worksheet, I formatted the Revenue field as currency by double-clicking the Sum Of Revenue heading and applying a currency format. You can also change the format of a value field by clicking the arrow to the right of the Value 356 Microsoft Excel 2010: Data Analysis and Business Modeling field in the PivotTable Field List. Select Value Field Settings followed by Number Format, and then you can reformat the column as you want it. From any cell in a PivotTable, you can select the Design tab on the ribbon to reveal many PivotTable styles. How can I collapse and expand fields? Expanding and collapsing fields (a feature introduced in Excel 2007) is a great advantage in PivotTables. In Figure 43-5, you see minus (–) signs by each year, group, and product. Clicking the minus sign collapses a field and changes the sign to a plus (+) sign. Clicking the plus sign expands the field. For example, if you click the minus sign by cereal in any cell in column A, you will find that in each year, cereal is contracted to one row, and the various cereals are no longer listed. See Figure 43-9 and the Cerealcollapse worksheet. Clicking the plus sign in cell A6 brings back the detailed or expanded view listing all the cereals. Figure 43-9 The cereal field collapsed. You can also expand or contract an entire field. Go to any row containing a member of that field, and select PivotTable Tools Options on the ribbon. In the Active Field group, click either the green Expand Entire Field button (labeled with a plus sign) or the red Contract Entire Field button (labeled with a minus sign). (See Figure 43-10.) Figure 43-10 The Expand Entire Field and Contract Entire Field buttons. Chapter 43 Using PivotTables and Slicers to Describe Data 357 For example, suppose you simply want to see for each year the sales by product group. Pick any cell containing a group’s name (for example, A6), select PivotTable Tools Options on the ribbon, and click the Collapse Entire Field button. You will see the result shown in Figure 43-11 (the Groups Collapsed worksheet). Selecting the Expand Entire Field button brings you back to the original view. Figure 43-11 The Group field collapsed. How do I sort and filter PivotTable fields? In Figure 43-5, the products are listed alphabetically within each group. For example, ­chocolate is the first type of milk listed. If you want the products to be listed in reverse ­alphabetical order, simply move the cursor to any cell containing a product (for example, A7 in the All Row Fields worksheet) and click the drop-down arrow to the right of the Row Labels entry in A5. You will see the list of filtering options shown in Figure 43-12. Selecting Sort Z To A would list whole milk first for milk, plums for fruit, and so on. Initially, our PivotTable displays results first from 2007, then 2006, and then 2005. If you want to see the data for 2005 first, move the cursor to any cell containing a year (for example, A5), and choose Sort Smallest To Largest from the available options. At the bottom of the filtering options dialog box, you can also select any subset of p ­ roducts to be displayed. You may want to first clear Select All and then select the products you want to show. 358 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-12 PivotTable filtering options for the Product field. For another example of filtering, look at the Data worksheet in the file Ptcustomers.xlsx, shown in Figure 43-13. The worksheet data contains for each customer transaction the ­customer number, the amount paid, and the quarter of the year in which payment was ­received. After dragging Customer to the Row Labels box, Quarter to the Column Labels box, and Paid to the Values box, the PivotTable shown in Figure 43-14 is displayed. (See the Ptable worksheet in the Pcustomers.xlsx file.) Figure 43-13 The Customer PivotTable data. Chapter 43 Using PivotTables and Slicers to Describe Data 359 Figure 43-14 The Customer PivotTable. Naturally, you might like to show a list of just your top 10 customers. To obtain this layout, simply click the Row Labels arrow and select Value Filters. Then choose Top 10 items to obtain the layout shown in Figure 43-15 (see the Top 10 cus worksheet). Of course, by selecting Clear Filter, you can return to the original layout. Figure 43-15 Top 10 customers. Suppose you simply want to see the top customers that generate 50 percent of your revenue. Select the Row Labels filtering icon, select Value Filters, Top 10, and fill in the dialog box as shown in Figure 43-16. 360 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-16 Configuring the Top 10 Filter dialog box to show customers generating 50 percent of revenue. The resulting PivotTable is in the Top half worksheet and shown in Figure 43-17. As you can see, the top 14 customers generate a little more than half of the revenue. Figure 43-17 The top customers generating half of the revenues. Now let’s suppose you want to sort your customers by Quarter 1 revenue. (See the Sorted q1 worksheet.) Right-click anywhere in the Quarter 1 column, point to Sort, and then click Sort Largest To Smallest. (See Figure 43-18.) The resulting PivotTable is shown in Figure 43-19. Note that Customer 13 paid the most in Quarter 1, Customer 2 paid the second most, and so on. Figure 43-18 Sorting on the Quarter 1 column. Chapter 43 Using PivotTables and Slicers to Describe Data 361 Figure 43-19 Customers sorted on Quarter 1 revenue. How do I summarize a PivotTable by using a PivotChart? Excel makes it easy to visually summarize PivotTables by using PivotCharts. The key to l­aying out the data the way you want it in a PivotChart is to sort data and collapse or e ­ xpand fields. In the grocery example, suppose you want to summarize the trend over time of each food group’s unit sales. (See the Chart 1 worksheet in the file Groceriespt.xlsx.) You should move the Year field to a column field and delete Revenue as a values field. You also need to collapse the entire Group field in the Row Labels zone. Now you are ready to create a PivotChart. Simply click anywhere inside the table, and select Options, PivotChart. Now pick the chart type you want to create. I chose the fourth Line Graph option, which displays the chart in Figure 43-20. The chart shows that milk sales were highest in 2005 and lowest in 2006. 362 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-20 PivotChart for unit group sales trend. How do I use the Report Filter section of the PivotTable? Recall that I placed Months in the Report Filter section of the table. To see how to use a ­report filter, suppose that you want to summarize sales for the months January–June. By clicking the Filter icon in cell B2 of the First 6 months worksheet, you can select January–June. This results in the PivotTable shown in Figure 43-21, which summarizes the number of units sold by product, group, and year for the months January–June. Figure 43-21 A PivotTable summarizing January–June sales. Chapter 43 Using PivotTables and Slicers to Describe Data 363 How do Excel 2010 slicers work? The problem with a report filter is that a viewer of the PivotTable shown in Figure 43-21 cannot easily see that the table summarizes January–June sales. Excel’s 2010 slicer feature solves this problem. To create a slicer for any of the columns of data used to generate your PivotTable, place your cursor anywhere in the PivotTable, and then click Slicer on the r­ ibbon’s Insert tab. In the worksheet Slicers of the file Groceriespt.xlsx, I selected Slicer from the Insert menu. Then I selected the Month and Product fields to create slicers for Month and Product. Using a given slicer, you can select any subset of possible values to be used in creating your table.In the Month slicer, I selected (one at a time, while holding down the Ctrl key) the months January through June. I did nothing to the Product slicer, so the data is based on January–June sales. The slicers are shown in Figure 43-22. Figure 43-22 Example of slicers for the Month and Product fields. If you click in a slicer, you see formatting options that allow you to change its look. How do I add blank rows or hide subtotals in a PivotTable? If you want to add a blank row between each grouped item, select PivotTable Tools Design on the ribbon, click Blank Rows, and then click Insert Blank Line After Each Item. If you want to hide subtotals or grand totals, select PivotTable Tools Design, and then select Subtotals or Grand Totals. After adding blank rows and hiding all totals, I obtained the table in the Blank rows no totals worksheet, shown in Figure 43-23. After right-clicking in any PivotTable cell, you can select PivotTable Options to open the PivotTable Options dialog box. In this dialog box, you can replace empty cells by using any character, such as an underscore (_), or by ­using a 0. Figure 43-23 Grocery PivotTable without totals. 364 Microsoft Excel 2010: Data Analysis and Business Modeling How do I apply conditional formatting to a PivotTable? Suppose you want to apply data bars to the Units column in the grocery PivotTable. One problem you’ll encounter is that subtotals and grand totals will have large data bars and also make the other data bars smaller than they should be. It’s better to have the data bars a ­ pply to all product sales, not the subtotals and grand totals. (See the Cond form worksheet of workbook Groceriespt.xlsx.) To apply the data bars to only the unit sales by product, begin by placing the cursor in a cell containing a product (for example, chocolate milk in B8), and then select the Sum Of Units column data (the cell range B7:B227). On the Home tab, click Conditional Formatting followed by Data Bars, and then choose More Rules. You will see the New Formatting Rule dialog box shown in Figure 43-24. Figure 43-24 New Formatting Rule dialog box for using conditional formatting with PivotTables. By selecting All Cells Showing “Sum of Units” Values For “Product”, you can ensure that data bars apply only to cells listing unit sales for products, as you can see in the Cond form ­worksheet and Figure 43-25. Chapter 43 Using PivotTables and Slicers to Describe Data 365 Figure 43-25 Data bars for a PivotTable. How can I update my calculations when I add new data? If the data in your original set of rows changes, you can update your PivotTable to include the data changes by right-clicking the table and selecting Refresh. You can also select Refresh after choosing Options. If you want data you add to be automatically included in your PivotTable calculations when you refresh it, you should name your original data set as a table by selecting it with Ctrl+T. (See Chapter 26, “Tables,” for more information.) If you want to change the range of data used to create a PivotTable, you can always select Change Data Source on the Options tab. You can also move the table to a different location by selecting Move PivotTable. I work for a small travel agency for which I need to mass-mail a travel brochure. My funds are limited, so I want to mail the brochure to people who spend the most money on ­travel. From information in a random sample of 925 people, I know the gender, the age, and the amount these people spent on travel last year. How can I use this data to ­determine how gender and age influence a person’s travel expenditures? What can I ­conclude about the type of person to whom I should mail the brochure? To understand this data, you need to break it down as follows: ■ Average amount spent on travel by gender ■ Average amount spent on travel for each age group ■ Average amount spent on travel by gender for each age group 366 Microsoft Excel 2010: Data Analysis and Business Modeling The data is included on the Data worksheet in the file Traveldata.xlsx, and a sample is shown in Figure 43-26. For example, the first person is a 44-year-old male who spent $997 on travel. Let’s first get a breakdown of spending by gender. Begin by selecting Insert PivotTable. Excel extracts the range A2:D927. After clicking OK, put the cursor in the table so that the field list appears. Next, drag the Gender column to the Row Labels zone and drag Amount Spent On Travel to the Values zone. This results in the PivotTable shown in Figure 43-27. You can tell from the heading Sum Of Amount Spent On Travel that you are summarizing the total amount spent on travel, but you actually want the average amount spent on travel by men and women. To calculate these quantities, double-click Sum Of Amount Spent On Travel and then select Average from the Value Field Settings dialog box, shown in Figure 43-28. Figure 43-26 Travel agency data showing amount spent on travel, age, and gender. Figure 43-27 PivotTable summarizing the total travel expenditures by gender. Figure 43-28 You can select a different summary function in the Value Field Settings dialog box. Chapter 43 Using PivotTables and Slicers to Describe Data 367 You now see the results shown in Figure 43-29. Figure 43-29 Average travel expenditures by gender. On average, people spend $908.13 on travel. Women spend an average of $901.16, whereas men spend $914.99. This PivotTable indicates that gender has little influence on the propensity to travel. By clicking the Row Labels arrow, you can show just male or female results. Now you want to see how age influences travel spending. To remove Gender from the PivotTable, simply click Gender in the Row Labels portion of the PivotTable Field List and remove it from the Row Labels area. Then, to break down spending by age, drag Age to the row area. The PivotTable now appears as it’s shown in Figure 43-30. Figure 43-30 PivotTable showing the average travel expenditures by age. Age seems to have little effect on travel expenditures. In fact, this PivotTable is pretty useless in its present state. You need to group data by age to see any trends. To group the results by age, right-click anywhere in the Age column and choose Group. In the Grouping dialog box, you can designate the interval by which to define an age group. By using 10-year increments, you obtain the PivotTable shown in Figure 43-31. On average, 25–34 year olds spend $935.84 on travel, 55–64 year olds spend $903.57 on travel, and so on. This information is more useful, but it still indicates that people of all ages tend to spend about the same amount on travel. This view of the data does not help ­determine who you should mail your brochure to. 368 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-31 Use the Group And Show Detail command to group detailed records. Finally, let’s get a breakdown of average travel spending by age, for men and women ­separately. All you have to do is drag Gender to the Column Labels zone of the field list ­resulting in the PivotTable shown in Figure 43-32 (see the Final Table worksheet). Figure 43-32 Age/gender breakdown of travel spending. Now we’re cooking! You can see that as age increases, women spend more on travel and men spend less. Now you know who should get the brochure: older women and younger men. As one of my students said, “That would be some kind of cruise!” A graph provides a nice summary of this analysis. After moving the cursor inside the PivotTable and choosing PivotChart, select the fourth option from Column Graphs. The result is the chart shown in Figure 43-33. If you want to edit the chart further, select PivotChart Tools. Then, for example, if you choose Layout, you can add titles to the chart and axis and make other changes. Figure 43-33 PivotChart for the age/gender travel expenditure breakdown. Chapter 43 Using PivotTables and Slicers to Describe Data 369 Each age group spends approximately the same on travel, but as age increases, women spend more than men. (If you want to use a different type of chart, you can change the chart type by right-clicking the PivotChart and then choosing Chart Type.) Notice that the bars showing expenditures by males decrease with age, and the bars ­representing the amount spent by women increase with age. You can see why the PivotTables that showed only gender and age data failed to unmask this pattern. Because half our sample population are men and half are women, we found that the average amount spent by people does not depend on the age. (Notice that the average height of the two bars for each age is approximately the same.) We also found that the average amount spent by men and women was approximately the same. You can see this because, averaged over all ages, the blue and red bars have approximately equal heights. Slicing and dicing the data simultaneously across age and gender does a much better job of showing you the real information. I’m doing market research about Volvo Cross Country Wagons. I need to determine what factors influence the likelihood that a family will purchase a station wagon. From information in a large sample of families, I know the family size (large or small) and the family income (high or low). How can I determine how family size and income influence the likelihood that a family will purchase a station wagon? In the file Station.xlsx, you can find the following information: ■ Is the family size large or small? ■ Is the family’s income high or low? ■ Did the family buy a station wagon? Yes or No. A sample of the data is shown in Figure 43-34 (see the Data worksheet). For example, the first family listed is a small, high-income family that did not buy a station wagon. Figure 43-34 Data collected about income, family size, and the purchase of a station wagon. 370 Microsoft Excel 2010: Data Analysis and Business Modeling You want to determine how family size and income influence the likelihood that a family will purchase a station wagon. The trick is to look at how income affects purchases for each ­family size and how family size affects purchases for each income level. To begin, choose Insert Pivot Table, and then select the data (the cell range B2:D345). Using the PivotTable Field List, drag Family Size to the Row Labels area, Station Wagon to the Column Labels area, and any of the three fields to the Values area. The result is the PivotTable shown in Figure 43-35 (see the 1st Table worksheet). Notice that Excel has chosen to summarize the data appropriately by counting the number of observations in each category. For example, 34 high-salary, large families did not buy a station wagon, whereas 100 high-salary, large families did buy one. Figure 43-35 Summary of station wagon ownership by family size and salary. You would like to know for each row in the PivotTable the percentage of families that ­purchased a station wagon. To display the data in this format, right-click anywhere in the PivotTable data and then choose Value Field Settings, which displays the Value Field Settings dialog box. In the dialog box, click Show Values As, and then select % Of Row in the Show Data As list. You now obtain the PivotTable shown in Figure 43-36. (See the 1st Percent Breakdown worksheet.) Figure 43-36 Percentage breakdown of station wagon ownership by income for large and small families. From Figure 43-36 you learn that for both large and small families, income has little effect on whether the family purchases a station wagon. Now you need to determine how family Chapter 43 Using PivotTables and Slicers to Describe Data 371 size affects the propensity to buy a station wagon for high-income and low-income families. To do this, move Salary above Family Size in the Row Labels zone, resulting in the PivotTable shown in Figure 43-37 (see the Final Percent Breakdown worksheet). Figure 43-37 Breakdown of station wagon ownership by family size for high and low salaries. From this table, you learn that for high-income families, a large family is much more likely to buy a station wagon than a small family. Similarly, for low-income families, a large family is also more likely to purchase a wagon than a small family. The bottom line is that family size has a much greater effect on the likelihood that a family will purchase a station wagon than does income. I work for a manufacturer that sells microchips globally. I’m given monthly actual and predicted sales for Canada, France, and the United States for Chip 1, Chip 2, and Chip 3. I’m also given the variance, or difference, between actual and budgeted revenues. For each month and each combination of country and product, I’d like to display the ­following data: actual revenue, budgeted revenue, actual variance, actual revenue as a percentage of annual revenue, and variance as a percentage of budgeted revenue. How can I display this information? In this scenario, you are a finance manager for a microchip manufacturer. You sell your ­products in different countries and at different times. PivotTables can help you summarize your data in a format that’s easily understood. The file Ptableexample.xlsx includes monthly actual and predicted sales during 1997 of Chip 1, Chip 2, and Chip 3 in Canada, France, and the United States. The file also contains the variance, or difference, between actual revenues and budgeted revenues. A sample of the data is shown in Figure 43-38 (see the data worksheet). For example, in the U.S. in January, sales of Chip 1 totaled $4,000, although sales of $5,454 were predicted. This yielded a ­variance of –$1,454. 372 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-38 Chip data from different countries for different months showing actual, budget, and variance revenues. For each month and each combination of country and product, you would like to display the following data: ■ Actual revenue ■ Budgeted revenue ■ Actual variance ■ Actual revenue as a percentage of annual revenue ■ Variance as a percentage of budgeted revenue To begin, select a cell within the range of data you’re working with (remember that the first row must include headings), and then choose Insert PivotTable. Excel automatically ­determines that your data is in the range A1:F208. If you drag Month to the Row Labels area, Country to the Column Labels area, and Revenue to the Values area, for example, you obtain the total revenue each month by country. A field you add to the Report Filter area (Product, for example) lets you filter your PivotTable by using values in that field. By adding Product to the Report Filter area, you can view sales of only Chip 1 by month for each country. Given that you want to be able to show data for any combination of country and product, you should add Month to the Row Labels area of the PivotTable and both Country and Product to the Report Filter area. Next, drag Var, Revenue, and Budget to the Values zone. You have now created the PivotTable that is shown in Figure 43-39. (See the 1st Table worksheet.) Chapter 43 Using PivotTables and Slicers to Describe Data 373 Figure 43-39 Monthly summary of revenue, budget, and variances. For example, in January, total revenue was $87,534 and total budgeted sales were $91,831, so actual sales fell $4,297 short of the forecast. You want to determine the percentage of revenue earned during each month. Again drag Revenue from the field list to the Values area of the PivotTable. Right-click in this data ­column, and then choose Value Field Settings. In the Value Field Settings dialog box, click Show Values As. In the Show Values As list, select % Of Column and rename this field as Sum Of Revenue2, as shown in Figure 43-40. Figure 43-40 Creating each month’s percentage of annual revenue. You now obtain the PivotTable shown in Figure 43-41. (See the 2nd Table worksheet.) January sales provided 8.53 percent of revenue. Total revenue for the year was $1,026,278. 374 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-41 Monthly revenue breakdown. What is a calculated field? Now you want to determine for each month the variance as a percentage of total sales. To do this, you can create a calculated field. Select a cell anywhere within the data area of the PivotTable, and then choose Formulas on the Option tab. Next choose Calculated Field to display the Insert Calculated Field dialog box. As shown in Figure 43-42, enter a name for your field, and then enter your formula. The formula for this example is =Var/Budget. You can enter the formula yourself or use the list of fields and the Insert Field button to add a field to the formula. After clicking Add and then OK, you see the PivotTable shown in Figure 43-43. (See the Calc Field worksheet of the Ptableexample.xlsx file.) Figure 43-42 Creating a calculated field. Chapter 43 Using PivotTables and Slicers to Describe Data 375 Figure 43-43 The PivotTable with calculated field for variance percentage. Thus, in January, sales were 4.7 percent lower than budgeted. By displaying the Insert Calculated Field dialog box again, you can modify or delete a calculated field. How do I use a report filter or slicer? To see sales of Chip 2 in France, for example, you can select the appropriate values from the Product and Country fields in the Report Filter area. With Chip 2 and France selected, you would see the PivotTable shown in Figure 43-44. Figure 43-45 shows how to create the same table with slicers (see the Slicers worksheet). Figure 43-44 Sales of Chip 2 in France. In the worksheet Slicers, I used Slicers to create the same table. I clicked in the PivotTable and selected Slicers from the Insert tab. Then I created the slicers shown in Figure 44-45 by selecting the Product and Country fields. Selecting Chip 2 from the Product slicer and France from the Country slicer yields the relevant computations for all transactions involving Chip 2 in France. If you want to resize a slicer, hold down the Ctrl key, and then resize the slicer. 376 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-45 Sales of Chip 2 in France with slicers. How do I group items in a PivotTable? Often, you want to group headings in a PivotTable. For example, you might want to combine sales for January–March. To create a group, select the items you want to group, right-click the selection, and then choose Group And Show Detail, Group. After changing the name Group 1 to Jan-March, you obtain the PivotTable shown in Figure 43-46. Figure 43-46 Grouping items together for January, February, and March. Remarks About Grouping ■ You can disband a group by selecting Group And Show Detail and then Ungroup. ■ You can group nonadjacent selections by holding down the Ctrl key while you select nonadjacent rows or columns. Chapter 43 ■ Using PivotTables and Slicers to Describe Data 377 With numerical values or dates in a row field, you can group by number or dates in ­arbitrary intervals. For example, you can create groups for age ranges and then find the average income for all 25–34 year olds. What is a calculated item? A calculated item works just like a calculated field except that you are creating one row rather than a column. To create a calculated item, you should select an item in the row area of the PivotTable, not an item in the body of the PivotTable. Then, on the Options tab, select Formulas, followed by Calculated Item. See Problem 11 in the “Problems” section of this chapter for an example of creating a calculated item. In the chip manufacturing PivotTable example, you could not create a calculated item because you had multiple copies of the Revenue field. What is “drilling down”? “Drilling down” is double-clicking a cell in a PivotTable to display all the detailed data that’s summarized in that field. For example, double-clicking any March entry in the microchip ­scenario displays the data that’s related to March sales. I often have to use specific data in a PivotTable to determine profit, such as the April sales in France of Chip 1. Unfortunately, this data moves around when new fields are added to my PivotTable. Does Excel have a function that enables me to always extract April’s Chip 1 sales in France from the PivotTable? Yes, there is such a function. The GETPIVOTDATA function fills the bill. Suppose that you want to extract sales of Chip 1 in France during April from the PivotTable contained in the Data worksheet in the file Getpivotdata.xlsx. (See Figure 43-47.) Entering in cell E2 the formula GETPIVOTDATA(A4,”April France Chip 1 Sum of Revenue”) yields the correct value ($37,600) even if additional products, countries, and months are added to the PivotTable later. You can also determine the resulting revenue by pointing to the cell containing Chip 1 April sales in France (cell D24). The first argument for this function is in the cell in the upper-left corner of the PivotTable (cell A4). You enclose in quotation marks (separated by spaces) the PivotTable headings that define the entry you want. The last entry must specify the data field, but other headings can be listed in any order. Thus, the formula here means “For the PivotTable whose upper-left corner is in cell A4, find the Sum of Revenue for Chip 1 in France during April.” This formula returns the correct answer even if the sales data for Chip 1 in France in April moves to a ­different location in the PivotTable. 378 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 43-47 Use the GETPIVOTDATA function to locate April Chip 1 Sales in France. If you want to simply return total revenue ($1,026,278), you can enter the formula (see cell F2) GETPIVOTDATA(A4,”Sum of Revenue”). Often, the GETPIVOTDATA function is a nuisance. In these cases, you can turn off the option to use it. Suppose you want to refer to data in cells B5:B11 from a PivotTable elsewhere in your workbook. You would probably use the formula =B5 and copy it to the range B6:B11. Hopefully, this would extract B6, B7,…, B11 to the cells you want. Unfortunately, if the GETPIVOTDATA option is active, you get a bunch of GETPIVOTDATA functions that refer to the same cell. If you want to turn off GETPIVOTDATA, click the File tab and then click Options. Select Formulas, and under Working With Formulas, clear the GetPivotData Function For PivotTable References. This ensures that clicking inside a PivotTable yields a formula like =B5 rather than a GETPIVOTDATA function. Finally, note that you can also combine the MATCH and OFFSET functions (explained in Chapter 5, “The MATCH Function,” and Chapter 22, “The OFFSET Function,” respectively) to extract various PivotTable entries. Problems 1. Contoso, Ltd. produces microchips. Five types of defects (labeled 1–5) have been known to occur. Chips are manufactured by two operators (A and B) using four ­machines (1–4). You are given data about a sample of defective chips, including the type of defect, the operator, machine number, and day of the week the defect ­occurred. Use this data to chart a course of action that would lead, as quickly as ­possible, to improved product quality. You should use a PivotTable to “stratify” the defects with respect to type of defect, day of the week, machine used, and operator working. You might even want to break down the data by machine, operator, and so on. Assume that each operator and machine made an equal number of products. You’ll find this data in the file Contoso.xlsx. Chapter 43 Using PivotTables and Slicers to Describe Data 379 2. You own a fast food restaurant and have done some market research in an attempt to better understand your customers. For a random sample of customers, you are given the income, gender, and number of days per week that residents go out for fast food. Use this information to determine how gender and income influence the frequency with which a person goes out to eat fast food. The data is in the file Macdonalds.xlsx. 3. Students at the School of Fine Art apply to study either English or Science. You have been assigned to determine whether the School of Fine Art discriminates against ­women in admitting students to the school of their choice. You are given the following data on the School of Fine Art’s students: ❑ Female or male ❑ Major applied for: English (Eng) or Science (Sci) ❑ Admit? Yes or No Assuming that women are as equally qualified for each major as men, does this data indicate that the college discriminates against women? Be sure you use all available ­information. The data is in the file Finearts.xlsx. 4. You have been assigned to evaluate the quality of care given to heart attack patients at Emergency Room (ER) and Chicago Hope (CH). For the last month you are given the following patient data: ❑ Hospital (ER or CH). ❑ Risk category (high or low). High-risk people are less likely to survive than ­low-risk people. ❑ Patient outcome (live or die). Use this data to determine which hospital is doing a better job of caring for heart ­attack patients. Hint: Use all the data. The data is in the file Hospital.xlsx. 5. You are given the monthly level of the Dow Jones Index for the years 1947 to1992. Does this data indicate any unusual seasonal patterns in stock returns? Hint: You can extract the month (January, February, and so on) by using the formula TEXT(A4,”mmm”) copied to any column. The data is in the file Dow.xlsx. 6. The file Makeupdb.xlsx contains information about the sales of makeup products. For each transaction, you are given the following information: ❑ Name of salesperson ❑ Date of sale ❑ Product sold ❑ Units sold ❑ Transaction revenue 380 Microsoft Excel 2010: Data Analysis and Business Modeling Create a PivotTable to compile the following information: ❑ The number of sales transactions for each salesperson. ❑ For each salesperson, the total revenue by product. ❑ Using your answer to the previous question, create a function that always yields Jen’s lipstick sales. ❑ Total revenue generated by each salesperson broken down by location. ❑ Total revenue by salesperson and year. (Hint: You need to group the data by year.) 7. For the years 1985–1992, you are given monthly interest rates on bonds that pay money one year after the day they’re bought. It’s often suggested that interest rates are more volatile—tend to change more—when interest rates are high. Does the data in the file Intratevol-volatility.xlsx support this statement? Hint: PivotTables can display standard deviations. 8. For the grocery example, prepare a chart that summarizes the trend over time of the sales at each store. 9. For the grocery example, create a calculate field that computes an average per unit price received for each product. 10. For the grocery example, create a PivotChart that summarizes the sales of each product at each store for the years 2005 and 2006. 11. For the data in the file Calcitemdata.xlsx, create calculated fields that summarize sales of dessert (cakes+puddings) and fruits (apples+grapes). 12. In the chip PivotTable example, create a PivotTable that summarizes monthly sales of Chips 1 and 3 in France and the U.S. 13. In the customer PivotTable example, show the top 15 customers in one table and the bottom 5 customers in another table. 14. The file Ptablepartsdata.xlsx contains sales of various parts. Each part code begins with either Part (for computer part) or Comp (for computer). Create a PivotTable that shows only sales of Parts. (Hint: Use a labels filter.) 15. For the data in Problem 14, summarize the total sales of parts and computers. 16. The file Cigarettedata.xlsx contains the age of a sample of Americans, whether they smoke cigarettes or cigars, and whether they died during the current year. What can you conclude from this data? 17. The file Collegedata.xls tells you the following information about students who a ­ pplied to graduate school at Kelley University: gender, desired major, whether accepted or rejected. If you construct the appropriate PivotTable, you will find fewer women are ­accepted than men. Do you think Kelley discriminates against women? Chapter 44 Sparklines Questions answered in this chapter: ■ How can you graphically summarize daily customer counts for each of a bank’s ­branches in a single cell? ■ How can you modify sparklines? ■ How can you summarize an NFL team’s sequence of wins or losses in a single cell? ■ Do sparklines automatically update when new data is included? Sparklines are exciting graphics that can summarize a row or column of data in a single cell. The term sparkline was first used by Edward Tufte, a famous expert on the visual presentation of data and its analysis. Tufte described sparklines as “data-intense, design-simple, ­word-sized graphics.” Microsoft Excel 2010 makes it a snap to create amazing graphics that reside in a single cell. Answers to This Chapter’s Questions How can you graphically summarize daily customer counts for each of a bank’s branches in a single cell? The file Sparklines.xlsx contains daily customer counts at several branches of a New York state bank. See Figure 44-1. Figure 44-1 Data for sparklines. Let’s say that you want to summarize the weekly customer counts by graphing the daily counts for each branch in a single cell. Simply select the range where you want your ­sparklines to go (I chose I8:I14), and then from the Insert tab, select Line from the Sparklines group shown in Figure 44-2. 381 382 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 44-2 Sparkline choices. Then fill in the dialog box below with the data on which the sparklines are based (D8:H14). Figure 44-3 Creating line sparklines. You now see a line graph (Figure 44-4) that summarizes the customer traffic for each branch. You can see this in the worksheet Line Sparkline in the file Sparklines.xlsx. Figure 44-4 Line sparklines summarizing branch traffic. You can see that for each branch, Monday and Friday are clearly the busiest days. How can you modify sparklines? If you click in any cell containing a sparkline, the Sparkline Tools Design tab appears. After selecting the Design tab, you can make many changes to your sparklines. For example, as shown in Figure 44-5, I selected the high and low points to be marked. The resulting sparklines are shown in Figure 44-6. See the worksheet High Low in file Sparklines.xlsx. Chapter 44 Sparklines 383 Figure 44-5 Selecting high and low points to mark on sparklines. Figure 44-6 High and low points marked on sparklines. These sparklines make it clear that Friday is the busiest day for each branch and Tuesday or Wednesday is the least busy day. From the Design tab you can make the following changes to your sparklines: ■ Change the type of sparkline (line, column, or win/loss). I discuss column and win/loss sparklines later in the chapter. ■ Use the Edit Data command to change the data used to create the sparklines. You can also change the default setting so that hidden data is included in your sparklines. ■ Select any combination of the high point, low point, negative points, first point, or last point to be marked. ■ Change the style or color associated with the sparklines and/or sparkline markers. ■ By selecting Axis, you can change the way the axes are set for each sparkline. For ­example, you can make the x-axis or y-axis scale the same for each sparkline. The ­default is to base the scale for each axis on the data for the individual sparkline. This is the scaling used in Figure 44-4. The Custom option allows you to pick an upper and lower limit for each axis. ■ When data points occur at irregularly spaced dates, you can select Data Axis from the Axis option so that the graphed points are separated by an amount of space proportional to the differences in dates. Figure 44-7 shows company sales at irregularly spaced dates (see the worksheet Date Axis in the file Sparklines.xlsx). In cell F12, the sparkline is graphed as though the dates are spaced at regular intervals. After clicking Axis and choosing the range C10:C13 to use as the data axis, the sparkline in cell F10 reflects the irregular date spacing. 384 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 44-7 Sparklines with a data axis. You can also change line sparklines to column sparklines by clicking any sparkline and then selecting Column from the Sparklines Tools Design tab. See Figure 44-8 and the worksheet Column Sparkline in the file Sparklines.xlsx. Figure 44-8 Column sparkline graph. How can you summarize an NFL team’s sequence of wins or losses in a single cell? The file Nflwinslosses.xlsx contains the game by game performance for each NFL team d ­ uring the 2009 regular season. A subset of this data is shown in Figure 44-9 (see the Win Loss worksheet). Figure 44-9 Sparklines summarizing wins and losses for NFL teams. Chapter 44 Sparklines 385 A 1 denotes a win, and a –1 a loss. Each win/loss sparkline treats any positive number as an “up block” and any negative number as a “down block.” Any 0s are graphed as a gap. To create the win/loss sparklines, select the range where the sparklines should be placed (cell range C8:C39), and then select Win/Loss from the Sparklines group on the Insert menu. Next, choose the data range E8:T39. The sparklines make the 2009 NFL season come alive. You can see the amazing starts of the Indianapolis Colts and the New Orleans Saints. You can see that the Tennessee Titans started poorly and then got red hot. The New York Giants started well and then hit a rough patch. Win/loss sparklines are great for tracking an organization’s ­progress toward meeting quotas or goals. See Problem 4 at the end of this chapter. Do Sparklines automatically update when new data is included? If you want your sparklines to automatically update to include new data, you should make the data a table (see Chapter 26, “Tables”) or convert the data into a dynamic range (see Chapter 22, “The OFFSET Function.”) Problems 1. For the bank branch data, make your line sparklines use the same scale for each branch. 2. The data Dow.xlsx contains the values of the Dow Jones Index for January 2–August 10, 2010. Create a line sparkline to show the ups and downs of the market. 3. Use win/loss sparklines to capture the market’s ups and downs. Again use the file Dow.xlsx. 4. The file Goals.xlsx shows the percentage amount by which bank branches met or failed to meet their goals each month. Summarize this data with win/loss sparklines. Chapter 45 Summarizing Data with Database Statistical Functions Questions answered in this chapter ■ ■ Joolas is a small makeup company that tracks each sales transaction in a Microsoft Excel 2010 worksheet. Often, they want to answer questions such as: ❑ How many dollars worth of lip gloss did Jen sell? ❑ What was the average number of lipstick units sold each time Jen made a sale in the East region? ❑ What was the total dollar amount of all makeup sold by Emilee or in the East region? ❑ How many dollars worth of lipstick were sold by Colleen or Zaret in the East region? ❑ How many lipstick transactions were not in the East region? ❑ How many dollars worth of lipstick did Jen sell during 2004? ❑ How many units of makeup were sold for a price of at least $3.20? ❑ What is the total dollar amount each salesperson sold of each makeup product? ❑ What helpful tricks can I use to set up criteria ranges? I have a database that lists for each sales transaction the revenue, the date sold, and the product ID code. Given the date sold and the ID code for a transaction, is there an easy way to extract the transaction’s revenue? As you saw in Chapter 43, “Using PivotTables and Slicers to Describe Data,” Excel PivotTables are a great tool for summarizing data. Often, however, a PivotTable gives you much more information than you need. Database statistical functions make it easy to answer any “­reporting” question without having to create a PivotTable. You are already familiar with functions such as SUM, AVERAGE, COUNT, MAX, and MIN. By prefixing a D (which stands for database) to these and other functions, you create database statistical functions. But what does the DSUM function do, for example, that the SUM function can’t? Whereas the SUM function adds up every cell in a cell range, the DSUM function enables you to specify (by using criteria) a subset of rows to add together in a cell range. For 387 388 Microsoft Excel 2010: Data Analysis and Business Modeling example, suppose you have a sales database for a small makeup company that contains the following information about each sales transaction: ■ Name of salesperson ■ Transaction date ■ Product sold ■ Units sold ■ Dollars of revenue generated per transaction ■ Region of the country where the transaction took place You can find this data in the file Makeupdb.xlsx, which is shown in Figure 45-1. Figure 45-1 We’ll use this data to describe how to work with database statistical functions. Using the DSUM function with appropriate criteria, you could, for example, add up the revenue generated only by transactions involving lip gloss sales in the East during 2004. Essentially, the criteria you set up flags those rows that you want to include in the total sum. Within these rows, the DSUM function acts like the ordinary SUM function. The syntax of the DSUM function is DSUM(database,field,criteria). ■ Database is the cell range that makes up the database. The first row of the list contains labels for each column. ■ Field is the column containing the values you want the function to add. You can define the field by enclosing the column label in quotation marks. (For example, you would designate the Dollars column by entering “Dollars”.) The field can also be specified by using the position of the column in the database, measured from left to right. For ­example, the makeup transaction database would use columns H through M. (I did not Chapter 45 Summarizing Data with Database Statistical Functions 389 include the Transactions column as part of the database.) You could specify column H as field 1 and column M as field 6. ■ A criterion refers to a cell range that specifies the rows on which the function should operate. The first row of a criteria range must include one or more column labels. (The only exception to this rule is computed criteria, which I’ll discuss in the last two examples in this chapter.) As the examples illustrate, the key to creating a criteria range is to understand that multiple criteria in the same row are joined by AND, whereas criteria in different rows are joined by OR. Now let’s go on to some examples that illustrate the power and versatility of database ­statistical functions. Answers to This Chapter’s Questions How many dollars’ worth of lip gloss did Jen sell? In this example, you want to apply DSUM to column 5 of the database. Column 5 contains the dollar volume for each transaction. (I gave the name data to the database, which consists of the range H4:M1895.) The criteria range in O4:P5 flags all rows in the database in which Name equals Jen and Product equals lip gloss. Thus, entering in cell N5 (see Figure 45-2) the formula DSUM(data,5,O4:P5) calculates the total dollar amount of lip gloss sold by Jen. You could have also entered the formula as DSUM(data,”Dollars”,O4:P5). Jen sold $5,461.61 worth of lip gloss. In cell N6 you can find the same answer by using the SUMIFS function (see Chapter 21, “The SUMIF, AVERAGEIF, SUMIFS, and AVERAGEIFS Functions”) with the formula =SUMIFS(Dollars,Name,”Jen”,Product,”lip gloss”). Figure 45-2 Database statistical functions at work. 390 Microsoft Excel 2010: Data Analysis and Business Modeling What was the average number of lipstick units sold each time Jen had a sale in the East region? You can compute this number by entering in cell N8 the formula DAVERAGE(data,4,O7:Q8). Using 4 as the value for field specifies the Units column, and the criteria range O7:Q8 flags all rows in the database in which Name equals Jen, Product equals lipstick, and Location equals East. Using DAVERAGE ensures that you average the units sold for the flagged rows. You can see that on average, Jen sold 42.25 units of lipstick in transactions in the East region. In cell N9, you can calculate the same answer by using the formula =AVERAGEIFS(Units,Name,”Jen”, Product,”lipstick”,Location,”east”). What was the total dollar amount of all makeup sold by Emilee or in the East region? In cell N11, you can compute the total dollars ($76,156.48) of sales made by Emilee or in the East by using the formula DSUM(data,5,O10:P12). The criteria in O10:P12 flags sales in the East or by Emilee, because criteria in different rows are treated as an OR operation. The great programmers at Microsoft have ensured that this formula does not double-count Emilee’s sales in the East. Here, you cannot use SUMIFS to easily find the answer. How many dollars’ worth of lipstick were sold by Colleen or Zaret in the East region? The formula DSUM(data,5,O13:Q15) in cell N14 computes the total lipstick revenue ­generated through Colleen and Zaret’s sales ($1,073.20) in the East. Notice that O14:Q14 specifies ­criteria that selects Colleen’s lipstick sales in the East, and O15:Q15 specifies criteria that ­selects Zaret’s lipstick sales in the East. Remember that criteria in different rows are joined by OR. In cell N15, the answer to this question is calculated with the following formula: =SUMIFS(Dollars,Name,”Colleen”,Product,”lipstick”,Location,”east”) +SUMIFS(Dollars,Name,”Zaret”,Product,”lipstick”,Location,”east”) How many lipstick transactions were not in the East region? In cell N17, you can compute the total number of lipstick transactions (164) outside the East region with the formula DCOUNT(data,4,O16:P17). You use DCOUNT in this problem because you want to specify criteria by which the function will count the number of rows involving lipstick sales and regions other than the East. Excel treats the expression <>East in the criteria range as “not East.” For this problem, using SUMIFS would require that you have a SUMIFS function for each region. Because the COUNT function counts numbers, you need to refer to a column containing numerical values. Column 4, the Units column, contains numbers, so I designated that column in the formula. The formula DCOUNT(data,3,O16:P17) would return 0 because there are no numbers in the database’s third column (which is column J in the worksheet). Of course, the formula DCOUNTA(data,3,O16:P17) would return the correct answer because COUNTA counts text as well as numbers. Chapter 45 Summarizing Data with Database Statistical Functions 391 How many dollars’ worth of lipstick did Jen sell during 2004? The trick here is knowing how to flag only sales that occurred in 2004. By including in one row of your criteria range a reference to the Date field, using the expressions >=1/1/2004 and <1/1/2005 captures only the 2004 sales. Thus, entering in cell N19 the formula DSUM(data,5,O18:R19) computes the total lipstick sales by Jen ($1,690.79) after January 1, 2004, and before January 1, 2005. In cell N20, the answer to this problem is calculated with the formula =SUMIFS(Dollars,Date,”>=1/1/2004”,Date,”<=12/31/2004”,Product,”lipstick”,Na me,”Jen”). How many units of makeup were sold for a price of at least $3.20? This example involves computed criteria. Basically, computed criteria flags rows of the ­database on the basis of whether a computed condition is true or false for that row. For this question, you want to flag each row that contains Dollars/Units>=$3.20. When setting up a computed criteria (see Figure 45-3), the label in the first row above the computed criteria must not be a column label. For example, you can’t use Name, Product, or another label from row 4 of this worksheet. The computed criteria is set up to be a formula that returns True based on the first row of information in the database. Thus, to specify rows in which the average price is greater than or equal to $3.20, you need to enter =(L5/K5)>=3.2 in your criteria range below a heading that is not a column label. If the first row of data does not satisfy this condition, you will see FALSE in the worksheet, but Excel will still flag all rows having a unit price that’s greater than or equal to $3.20. Entering in N22 the formula DSUM(data,4,O21:O22) computes the total number of units of makeup sold (1,127) in orders for which the unit price was greater than or equal to $3.20. Note that cell O22 contains the formula =(L5/K5)>=3.2. Figure 45-3 Computed criteria. What is the total dollar amount each salesperson sold of each makeup product? For this problem, I’d like to use a DSUM function whose criteria range is based on both the Name and Product columns. Using a data table, I can easily loop through all possible combinations of Name and Product in the criteria range and compute the total revenue for each Name and Product combination. I begin by entering any name in cell X26 and any product in cell Y26. Then I enter in cell Q25 the formula DSUM(data,5,X25:Y26), which computes total sales revenue for (in this case) Betsy and eye liner. Next, I enter each salesperson’s name in the cell range Q26:Q33 and each product in the cell range R25:V25. Now select the data table range (Q25:V33). On the Data tab, in the Data Tools group, click What-If Analysis, and then click Data Table. Choose cell X26 as the column input cell and Y26 as the row input cell. You then obtain the results shown 392 Microsoft Excel 2010: Data Analysis and Business Modeling in Figure 45-4. Each entry in the data table computes the revenue generated for a different name/product combination because the data table causes the names to be placed in cell X26 and the products to be placed in cell Y26. For example, Ashley sold $3,245.45 worth of lipstick. Figure 45-4 Combining data tables with a DSUM function. This example shows how combining data tables with database statistical functions can ­quickly generate many statistics of interest. Note that I also solved this problem by copying from cell R37 to R37:V45 the formula =SUMIFS(Dollars,Name,$Q37,Product,R$36). What helpful tricks can I use to set up criteria ranges? Here are some examples of little tricks that might help you set up an appropriate criteria range. Suppose the column label in the first row of the criteria range refers to a column ­containing text (for example, column H). ■ *Allie* will flag records containing the text string Allie in column H. ■ A?X will flag a record if the record’s column H entry begins with A and contains X as its third character. (The second character can be anything!) ■ <>*B* will flag a record if column H’s entry does not contain any Bs. If a column (for example, column I) contains numerical values, ■ >100 will flag a record if column I contains a value greater than 100. ■ <>100 will flag a record if column I contains a value not equal to 100. ■ >=1000 will flag a record if column I contains a value greater than or equal to 1,000. I have a database that lists for each sales transaction the revenue, the date sold, and the product ID code. Given the date sold and the ID code for a transaction, is there an easy way to capture the transaction’s revenue? The file Dget.xlsx (see Figure 45-5) contains a database that lists revenues, dates, and p ­ roduct ID codes for a series of sales transactions. If you know the date and the product ID code Chapter 45 Summarizing Data with Database Statistical Functions 393 for a transaction, how can you find the transaction’s revenue? With the DGET function, it’s simple. The syntax of the DGET function is DGET(database,field#,criteria). Given a cell range for database and a value for field# in the database (counting columns from left to right across the range), the DGET function returns the entry in column field# from the database record satisfying the criteria. If no record satisfies the criteria, the DGET function returns the #VALUE error message. If more than one record satisfies the criteria, the DGET function returns the #NUM! error message. Suppose that you want to know the revenue for a transaction involving product ID code 62426 that occurred on 1/9/2006. Assuming that the transaction involving this product on the given date is unique, the formula (entered in cell G9) DGET(B7:D28,1,G5:H6) yields the transaction’s revenue of $169. Note that I used 1 for the field# argument because Revenue is listed in the first column of the database (which is contained in the cell range B7:D28). The criteria range G5:H6 ensures that you find a transaction involving product 62426 on 1/9/2006. Figure 45-5 Using the DGET function. Problems 1. How many units of lip gloss did Zaret sell during 2004 and 2005? 2. Create a data table that contains each person’s total revenue and units sold. 3. How many units of lip gloss did Colleen sell outside the West region? 4. Using the data in file Makeupdb.xlsx, create a data table that shows the average perunit revenue generated by each person for sales in which the average per-unit price exceeded $3.30. 394 Microsoft Excel 2010: Data Analysis and Business Modeling 5. Use the data in the file Sales.xlsx to determine the following: ❑ Total dollar sales in the Midwest ❑ Total dollars that Heather sold in the East ❑ Total dollars that Heather sold or that were sold in the East ❑ Total dollars sold in the East by Heather or John ❑ Number of transactions in the East region ❑ Number of transactions with greater than average sales ❑ Total sales not in the Midwest 6. The file Housepricedata.xlsx contains the following information for selected homes: ❑ Square footage ❑ Price ❑ Number of bathrooms ❑ Number of bedrooms Use this information to answer the following questions: ❑ What is the average price of all homes having a total number of bathrooms and bedrooms greater than or equal to six? ❑ How many homes sell for more than $300,000 and have a total number of ­bedrooms and bathrooms less than or equal to five? ❑ How many homes have at least three bathrooms but the total number of ­bedrooms and bathrooms is less than or equal to six? ❑ What is the highest price of a home having at most 3,000 square feet and a t­ otal number of bedrooms and bathrooms less than or equal to six? (Hint: Use the DMAX function to solve this problem.) 7. The file Deciles.xlsx contains the unpaid balance for 20 accounts. Use DBASE functions to compute the total unpaid balances in each decile. Chapter 46 Filtering Data and Removing Duplicates Questions answered in this chapter: Joolas is a small company that manufactures makeup. Its managers track each sales ­transaction in a Microsoft Excel 2010 worksheet. Sometimes they want to extract, or “filter out,” a subset of their sales data. For example, they might want to identify sales transactions that answer the following questions: ■ How can I identify all transactions in which Jen sold lipstick in the East region? ■ How can I identify all transactions in which Cici or Colleen sold lipstick or mascara in the East or South region? ■ How can I copy all transactions in which Cici or Colleen sold lipstick or mascara in the East or South region to a different worksheet? ■ How do I clear filters from a column or database? ■ How can I identify all transactions that involved sales greater than $280 and greater than 90 units? ■ How can I identify all sales occurring in 2005 or 2006? ■ How can I identify all transactions in the last three months of 2005 or the first three months of 2006? ■ How can I identify all transactions for which the salesperson’s first name starts with C? ■ How can I identify all transactions for which the cell containing the product name is colored in red? ■ How can I identify all transactions in the top 30 revenue values in which Hallagan or Jen was the salesperson? ■ How can I easily obtain a complete list of salespeople? ■ How can I view every combination of salesperson, product, and location that occurs in the database? ■ If my data changes, how can I reapply the same filter? ■ How can I extract all foundation transactions in the first six months of 2005 for which Emilee or Jen was the salesperson and the average per-unit price was more than $3.20? Microsoft Excel 2010 has filtering capabilities that make identifying any subset of data a snap. Excel also makes it easy to remove duplicate records from a list. You’ll find the work 395 396 Microsoft Excel 2010: Data Analysis and Business Modeling for this chapter in the file Makeupfilter.xlsx. For the 1,891 sales transactions listed in this file (Figure 46-1 shows a subset of the data), you have the following information. ■ Transaction number ■ Name of the salesperson ■ Date of the transaction ■ Product sold ■ Units sold ■ Dollar amount of the transaction ■ Transaction location Figure 46-1 Makeup sales data. Each column (C through I) of our database (cell range C4:I1894) is called a field. Each row of the database that contains data is called a record. (Thus, the records in our database are contained in the cell range C4:I1894.) The first row of each field must contain a field name. For example, the name of the field in column F is Product. By using the Excel AutoFilter, you can query the database using AND criteria to identify a subset of records. This means that you can use queries of the form “Find all records where Field 1 satisfies certain conditions, and Field 2 satisfies certain conditions, and Field 3 satisfies certain conditions.” This chapter’s ­examples illustrate the capabilities of the Excel AutoFilter. Chapter 46 Filtering Data and Removing Duplicates 397 Answers to This Chapter’s Questions How can I identify all transactions in which Jen sold lipstick in the East region? To begin, place your cursor anywhere in the database and select Filter in the Sort & Filter group on the Data tab on the ribbon. As shown in Figure 46-2, each column of the database now has an arrow in the heading row (see the Data worksheet). Figure 46-2 AutoFilter heading arrows. After clicking the arrow for the Name column, you will see the choices shown in Figure 46-3. You could choose Text Filters, which allows you to filter based on characteristics of the person’s name (more on this later). For now, you just want to work with data for Jen, so first clear the Select All check box, then select the check box for Jen, and then click OK. You now see only those records for which Jen was the salesperson. Next, go to the Product column and select the lipstick check box. Then go to the Location column, and select the East check box. You now see only those transactions for which Jen sold lipstick in the East region. (See Figure 46-4 and the Lipstick Jen East worksheet.) Notice that the arrow has changed to a cone in the columns in which you set up filtering criteria. 398 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 46-3 Choices for filtering or sorting the Name column. Figure 46-4 Jen sells lipstick in the East region. How can I identify all transactions in which Cici or Colleen sold lipstick or mascara in the East or South region? You simply select Cici and Colleen from the Name column list, lipstick and mascara from the Product column list, and East and South from the Location column list. The records ­meeting this filtering criteria are shown in Figure 46-5 (see the Cici Colleen Lipstick And Masc worksheet). Chapter 46 Filtering Data and Removing Duplicates 399 Figure 46-5 Transactions in which Cici or Colleen sold lipstick or mascara in the East or South region. How can I copy all transactions in which Cici or Colleen sold lipstick or mascara in the East or South region to a different worksheet? The trick here is to first press F5, click Special, and then select the Visible Cells Only option. Now when you copy your data, Excel includes only the visible rows (in this case, the rows ­selected by the filtering criteria). Select all the filtered cells in the worksheet (Cici, Colleen, ­lipstick, and mascara) and paste them into a blank worksheet. You can create a blank worksheet in your workbook by right-clicking any worksheet tab, clicking Insert, selecting Worksheet, then clicking OK. The worksheet Visible Cells Copied contains the records where Cici or Colleen sold lipstick or mascara in the East. How do I clear filters from a column or database? Clicking Filter on the Data tab removes all filters. Clicking the cone for any column for which you created a filter displays an option to clear the filter from that column. How can I identify all transactions that involved sales greater than $280 and greater than 90 units? After clicking Filter on the Data tab, first click the Units column arrow to display the options shown in Figure 46-6. 400 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 46-6 Filtering options for a numerical column. You can check any subset of numerical unit values (for example, all transactions for which sales were –10 or –8 units). I clicked Number Filters to display the choices in Figure 46-7. Figure 46-7 Number Filters options. Most of the options you see in the figure are self-explanatory. Here you choose the Is Greater Than option and then fill in the dialog box as shown in Figure 46-8. Chapter 46 Filtering Data and Removing Duplicates 401 Figure 46-8 Selecting all records where units sold is greater than 90. Next, go to the Dollars column and click to include only records where the dollar amount is greater than $280. You obtain the records shown in Figure 46-9 (see the Sales > 90 units ­dollars > $280 worksheet). Note that all selected records have both units greater than 90 and dollars greater than $280. Figure 46-9 Transactions where more than 90 units were sold for a total of more than $280. How can I identify all sales occurring in 2005 or 2006? After clicking Filter on the ribbon, click the arrow for the Date column to display the ­choices in Figure 46-10. 402 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 46-10 Filtering options for the Date column. After selecting 2005 and 2006, you see only those records involving sales in 2005 or 2006, as shown in Figure 46-11 (see the Sales In 2005 And 2006 worksheet). Figure 46-11 Sales during 2005 and 2006. Note that you could also have selected Date Filters to display the options shown in Figure 46-12. Chapter 46 Filtering Data and Removing Duplicates 403 Figure 46-12 Date Filters options. Most of these options are self-explanatory as well. The Custom Filter option allows you to select any range of dates as your filtering criteria. How can I identify all transactions in the last three months of 2005 or the first three months of 2006? After clicking the arrow for the Date column, you see the list of years shown in Figure 46-10 earlier. Clicking the + sign to the left of the year displays a list of months. You can check October through December of 2005 and then January through March of 2006 to show all sales during those months. (See Figure 46-13 and the Filter By Months worksheet.) Figure 46-13 All sales during October 2005–March 2006. 404 Microsoft Excel 2010: Data Analysis and Business Modeling How can I identify all transactions for which the salesperson’s first name starts with C? Simply click the Name column arrow, and choose Text Filters. Next, select Begins With, and in the dialog box shown in Figure 46-14, choose Begins With C. Figure 46-14 Custom AutoFilter dialog box set up to select all records for which the salesperson’s name ­begins with C. How can I identify all transactions for which the cell containing the product name is ­colored in red? Click the Product column arrow, and then choose Filter By Color. You can now select the color to use as a filter. As shown in Figure 46-15, I chose to include only the rows for which the product is colored in red. Figure 46-16 shows the resulting records (see the Filter By Color worksheet). Figure 46-15 Dialog box for filtering by cell color. Chapter 46 Filtering Data and Removing Duplicates 405 Figure 46-16 All records where the product cell color is red. How can I identify all transactions in the top 30 revenue values for which Hallagan or Jen was the salesperson? After clicking Filter on the ribbon, you click the Name column arrow and then select the check boxes for Hallagan and Jen. Then you click the arrow for the Dollar column and choose Number Filters. From the Number Filters list, select the Top 10 option, and then fill in the dialog box as shown in Figure 46-17. You have now filtered all records in the top 30 revenue values in which Jen or Hallagan is the salesperson. See the results in Figure 46-18 (see the Top 30 $s With Hallagan Or Jen worksheet). Note that only five of the top 30 sales had Hallagan or Jen as the salesperson. You can also select Top 5 percent, Bottom 20 percent, and so on, for any numerical column. Figure 46-17 Dialog box to select the top 30 records by dollar value. Figure 46-18 Top 30 records by dollar value for which Jen or Hallagan was the salesperson. How can I easily obtain a complete list of salespeople? Here we want a list of all the salespeople, without anybody’s name repeated. Begin by ­selecting Remove Duplicates on the Data tab on the ribbon to display the Remove Duplicates dialog box shown in Figure 46-19. After choosing Unselect All, select only the Name check box, and then click OK. This setting filters the data for only the first record involving each salesperson’s name. See the results in Figure 46-20 and in the Name Duplicates Removed worksheet. 406 Microsoft Excel 2010: Data Analysis and Business Modeling Important Because selecting Remove Duplicates removes some of your data, I recommend making a copy of your data before selecting Remove Duplicates. Figure 46-19 Remove Duplicates dialog box. Figure 46-20 List of salespersons’ names. How can I view every combination of salesperson, product, and location that occurs in the database? Here again you need to click Remove Duplicates on the Data tab to begin. Then fill in the Remove Duplicates dialog box as shown in Figure 46-21. Chapter 46 Filtering Data and Removing Duplicates 407 Figure 46-21 Finding unique salesperson, product, and location combinations. Figure 46-22 lists the first record for each combination of person, product, and location ­occurring in the database (see the Unique Name Product Location worksheet). One hundred and eighty unique combinations occurred. Note that the twentieth record was omitted because it included Zaret selling lip gloss in the Midwest and the fifth record had already picked up this combination. Figure 46-22 List of unique salesperson, product, and location combinations. If my data changes, how can I reapply the same filter? Simply right-click any cell in your filtered results, point to Filter, and then click Reapply. Any changes to your data are reflected in the filtered data. 408 Microsoft Excel 2010: Data Analysis and Business Modeling How can I extract all foundation transactions in the first six months of 2005 for which Emilee or Jen was the salesperson and the average per-unit price was more than $3.20? The AutoFilter feature (even with the Custom option) is limited to AND queries across ­columns. This means, for example, that you cannot find all transactions for lipstick sales by Jen during 2005 OR foundation sales by Zaret during 2004. To perform more complex ­queries such as this one, you need to use the Advanced Filter feature. To use Advanced Filter, you set up a criteria range that specifies the records you want to extract. (This process is ­described in detail in Chapter 45, “Summarizing Data with Database Statistical Functions.”) After specifying the criteria range, you tell Excel whether you want the records extracted to the current location or to a different location. To identify all foundation transactions in the first six months of 2005 for which Emilee or Jen was the salesperson and for which the ­average per-unit price was more than $3.20, you can use the criteria range shown in the range O4:S6 in Figure 46-23. (See the Jen + Emilee worksheet in the file Advancedfilter.xlsx.) Figure 46-23 Setting up a criteria range to use with an advanced filter. In cells R5 and R6, I entered the formula =(L5/K5)>3.2. Recall from Chapter 45 that this ­formula creates computed criteria that flags each row in which the per-unit price is more than $3.20. Also remember that your heading for a computed criteria must not be a field name. I used Price as the field heading here. The criteria in O5:S5 flags all records in which Jen is the salesperson, the date is between 1/1/2005 and 6/30/2005, the product sold is foundation, and the per-unit price is more than $3.20. The criteria in O6:S6 flags all records in which Emilee is the salesperson, the date is between 1/1/2005 and 6/30/2005, the product sold is foundation, and the per-unit price is more than $3.20. The criteria range O4:S6 flags exactly the records you want. Remember that criteria in different rows are joined by OR. You can now select any cell within the database range and select Advanced in the Sort & Filter group on the Data tab. Then fill in the dialog box as shown in Figure 46-24. Figure 46-24 Advanced Filter dialog box settings. Chapter 46 Filtering Data and Removing Duplicates 409 With these settings, you are telling Excel to extract all records in the database (the cell range G4:M1895) that satisfy the criteria specified in O4:S6. These records should be copied to a range whose upper-left corner is cell O14. The records extracted are shown in the cell range O14:U18. Only the four records shown in Figure 46-25 meet the defined criteria (see the Jen + Emilee worksheet again). Figure 46-25 Advanced filter results. If you select Unique Records Only in the Advanced Filter dialog box, no duplicate records are returned. For example, if Jen had another foundation transaction in the East region on 3/19/2005 for one unit for $4.88, only one of those transactions would be extracted. Problems 1. Find all transactions in which Hallagan sold eye liner in the West region. 2. Find all transactions that rank in the top 5 percent with regard to units sold. 3. Find the top 20 revenue-generating transactions that involve foundation sales. 4. Find all transactions involving sales of at least 60 units during 2004 for which the ­per-unit price was a maximum of $3.10. 5. Find all foundation transactions during the first three months of 2004 for which the per-unit price was larger than the average price received for foundation during the ­entire time period. 6. Find all transactions in which Zaret or Betsy sold either lipstick or foundation. 7. Find all unique combinations of product and salesperson’s name. 8. Find all of the top 30 sales (by units) occurring in 2005 that involved lip gloss or mascara. 9. Find all sales by Jen between August 10 and September 15, 2005. 10. Find all sales of lipstick sold by Colleen for which the number of units sold is higher than the average number of units in a lipstick transaction. 11. Find all unique combinations of name, product, and location occurring during the first three months of 2006. 12. Find all records in which the product cell is colored yellow. Chapter 47 Consolidating Data Question answered in this chapter: ■ My company sells products in several regions of the United States. Each region keeps records of the number of units of each product sold during the months of January, February, and March. Is there an easy way to create a “master workbook” that always combines each region’s sales and gives a tally of the total amount of each product sold in the U.S. during each month? A business analyst often receives worksheets that tally the same information (such as ­monthly product sales) from different affiliates or regions. To determine the company’s ­overall profitability, the analyst usually needs to combine or consolidate this information into a single Microsoft Excel workbook. PivotTables built from multiple consolidation ranges can be used to accomplish this goal, but the little-known Consolidate command (on the Data tab on the ribbon) is another way to accomplish this goal. With Consolidate, you can ensure that c­ hanges in the individual worksheets are automatically reflected in the consolidated worksheet. Answer to This Chapter’s Question My company sells products in several regions of the United States. Each region keeps records of the number of units of each product sold during the months of January, February, and March. Is there an easy way to create a “master workbook” that always combines each region’s sales and gives a tally of the total amount of each product sold in the U.S. during each month? The file East.xlsx (shown in Figure 47-1) displays monthly unit sales of Products A–H in the eastern U.S. during January, February, and March. Similarly, the file West.xlsx (shown in Figure 47-2) displays monthly unit sales of Products A–H in the western U.S. from January through March. Your need is to create a consolidated worksheet that tabulates each ­product’s total sales by month. 411 412 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 47-1 East region sales during January–March. Figure 47-2 West region sales during January–March. Before you use the Consolidate command, it’s helpful to see both worksheets together on the screen. To do this, open both workbooks, click Arrange All in the Window group on the View tab, and select the Tiled option. Your screen should look like Figure 47-3. Chapter 47 Consolidating Data 413 Figure 47-3 East and West sales arranged on the same screen. Now open a blank worksheet in a new workbook, and then click Arrange All and Tiled again. In the blank worksheet, click Consolidate in the Data Tools group on the Data tab, and you’ll see the Consolidate dialog box, shown in Figure 47-4. Figure 47-4 Consolidate dialog box. To consolidate the data from the East and West regions into your new, blank worksheet, ­enter the ranges you want to consolidate in the Reference box of the Consolidate dialog box, clicking Add after selecting each range. By selecting the Top Row and Left Column check boxes in the Use Labels In area, you ensure that Excel consolidates the selected ranges by looking at labels in the top row and left column of each range. The Create Links To Source Data option enables changes in the selected ranges to be reflected in the consolidated ­worksheet. Select Sum in the Function box because you want Excel to add up the total 414 Microsoft Excel 2010: Data Analysis and Business Modeling sales of each product by month. Selecting Count, for instance, would count the number of ­transactions for each product during each month; selecting Max would compute the largest sales transaction for each product during each month. The Consolidate dialog box should be filled out as shown in Figure 47-5. After clicking OK, the new worksheet looks like the one shown in Figure 47-6. (See file Eastandwestconsolidated.xlsx.) You can see, for example, that 1,317 units of Product A were sold in February, 597 units of Product F were sold in January, and so on. Figure 47-5 Completed Consolidate dialog box. Figure 47-6 Total sales after consolidation. Now go to cell C2 of East.xlsx and change the February Product A sales from 263 to 363. Notice that in the consolidated worksheet, the entry for February Product A sales has also increased by 100 (from 1,317 to 1,417). This change occurs because the Create Links To Source Data option was selected in the Consolidate dialog box. (By the way, if you click the 2 right below the workbook name in the consolidated worksheet, you’ll see how Excel grouped the data to perform the consolidation.) The final result is contained in the file Eastandwestconsolidated.xlsx. Chapter 47 Consolidating Data 415 If you frequently download new data to your source workbooks (in this case, East.xlsx and West.xlsx), it’s a good idea to name the ranges including your data as a table. Then new data is automatically included in the consolidation. You might also choose to select some blank rows below the current data set. When you populate the blank rows with new data, Excel picks up the new data when it performs the consolidation. A third choice is to make each data range a dynamic range (see Chapter 22, “The OFFSET Function,” for more information). Problems The following problems refer to the data in files Jancon.xlsx and Febcon.xlsx. Each file ­contains the unit sales, dollar revenues, and product sold for each transaction during the month. 1. Create a consolidated worksheet that gives the total unit sales and dollar revenue for each product by region. 2. Create a consolidated worksheet that gives the largest first-quarter transaction for each product by region from the standpoint of revenue and units sold. Chapter 48 Creating Subtotals Questions answered in this chapter: ■ Is there an easy way to set up a worksheet to calculate total revenue and units sold by region? ■ Can I also obtain a breakdown by salesperson of sales in each region? Joolas is a small company that manufactures makeup. For each transaction, it tracks the name of the salesperson, the location of the transaction, the product sold, the units sold, and the revenue. The managers want answers to questions such as those that are the focus of this chapter. PivotTables can be used to slice and dice data in Microsoft Excel. Often, however, you’d like an easier way to summarize a list or a database within a list. In a sales database, for example, you might want to create a summary of sales revenue by region, a summary of sales revenue by product, and a summary of sales revenue by salesperson. If you sort a list by the column in which specific data is listed, the Subtotal command allows you to create a subtotal in a list on the basis of the values in the column. For example, if you sort the makeup database by location, you can calculate total revenue and units sold for each region and place the totals just below the last row for that region. As another example, after sorting the database by product, you can use the Subtotal command to calculate total revenue and units sold for each product and display the totals below the row in which the product changes. In the next section, we’ll look at some specific examples. Answers to This Chapter’s Questions Is there an easy way to set up a worksheet to calculate total revenue and units sold by region? The data for this question is in the file Makeupsubtotals.xlsx. In Figure 48-1 you can see a subset of the data as it appears after sorting the list by the Location column. To calculate revenue and units sold by region, place the cursor anywhere in the database, and then click Subtotal in the Outline group on the Data tab. In the Subtotal dialog box, fill in the values as shown in Figure 48-2. By selecting Location from the At Each Change In list, you ensure that subtotals are c­ reated at each point in which the value in the Location column changes. This corresponds to the ­different regions. Selecting Sum from the Use Function box tells Excel to total the units and dollars for each different region. By selecting the Units and Dollars options in the Add 417 418 Microsoft Excel 2010: Data Analysis and Business Modeling Subtotal To area, you indicate that subtotals should be created on the basis of the values in these columns. The Replace Current Subtotals option causes Excel to remove any previously computed subtotals. Because you haven’t created any subtotals, it doesn’t matter whether this option is selected for this example. If the Page Break Between Groups option is selected, Excel inserts a page break after each subtotal. Selecting the Summary Below Data check box causes Excel to place subtotals below the data. If this option is not selected, the subtotals are created above the data used for the computation. Clicking Remove All removes subtotals from the list. Figure 48-1 After sorting a list by the values in a specific column, you can easily create subtotals for that data. Figure 48-2 Subtotal dialog box. Chapter 48 Creating Subtotals 419 A sample of the subtotals results is shown in Figure 48-3. You can see that 18,818 units were sold in the East region, earning revenue of $57,372.09. Figure 48-3 Subtotals for each region. Notice that in the left corner of the window, below the Name box, buttons with the numbers 1, 2, and 3 appear. Clicking the largest number (in this case 3) yields the data and subtotals. If you click the 2 button, you see just the subtotals by region, as shown in Figure 48-4. Clicking the 1 button yields the Grand Total, as shown in Figure 48-5. In short, clicking a lower ­number reduces the level of detail shown. Figure 48-4 When you create subtotals, Excel adds buttons that you can click to display only subtotals or both subtotals and details. Figure 48-5 Displaying the overall total without any detail. 420 Microsoft Excel 2010: Data Analysis and Business Modeling Can I also obtain a breakdown by salesperson of sales in each region? If you want to, you can nest subtotals. In other words, you can obtain a breakdown of sales by each salesperson in each region, or you can even get a breakdown of how much each salesperson sold of each product in each region. (See the file Nestedsubtotals.xlsx.) To ­demonstrate the creation of nested subtotals, let’s create a breakdown of sales by each ­salesperson in each region. To begin, you must sort your data first by Location and then by Name. This gives a ­breakdown for each salesperson of units sold and revenue within each region. If you sort first by Name and then by Location, you would get a breakdown of units sold and revenue for each salesperson by region. After sorting the data, you proceed as before and create the subtotals by region. Then you click Subtotal again and fill in the dialog box as shown in Figure 48-6. Figure 48-6 Creating nested subtotals. You now want a breakdown by Name. Clearing the Replace Current Subtotals box ensures that you will not replace your regional breakdown. You can now see the breakdown of sales by each salesperson in each region as shown in Figure 48-7. Chapter 48 Creating Subtotals Figure 48-7 Nested subtotals. Problems You can find the data for this chapter’s problems in the file Makeupsubtotals.xlsx. Use the Subtotal command for the following computations: 1. Find the units sold and revenue for each salesperson. 2. Find the number of sales transactions for each product. 3. Find the largest transaction (in terms of revenue) for each product. 4. Find the average dollar amount per transaction by region. 5. Display a breakdown of units sold and revenue for each salesperson that shows the ­results for each product by region. 421 Chapter 49 Estimating Straight Line Relationships Questions answered in this chapter: ■ How can I determine the relationship between monthly production and ­monthly ­operating costs? ■ How accurately does this relationship explain the monthly variation in plant operating costs? ■ How accurate are my predictions likely to be? ■ When estimating a straight line relationship, which functions can I use to get the slope and intercept of the line that best fits the data? Suppose you manage a plant that manufactures small refrigerators. National headquarters tells you how many refrigerators to produce each month. For budgeting purposes, you want to forecast your monthly operating costs and need answers to the questions that are the ­focus of this chapter. Every business analyst should have the ability to estimate the relationship between important business variables. In Microsoft Excel, the trend curve, which I’ll discuss in this chapter as well as in Chapter 50, “Modeling Exponential Growth,” and in Chapter 51, “The Power Curve,” is often helpful in determining the relationship between two variables. The variable that analysts try to predict is called the dependent variable. The variable you use for prediction is called the independent variable. Here are some examples of business relationships you might want to estimate. Independent variable Dependent variable Units produced by plant in a month Monthly cost of operating plant Dollars spent on advertising in a month Monthly sales Number of employees Annual travel expenses Company revenue Number of employees (headcount) Monthly return on the stock market Monthly return on a stock (for example, Dell) Square feet in home Value of home The first step in determining how two variables are related is to graph the data points (by ­using the Scatter Chart option) so that the independent variable is on the x-axis and the 423 424 Microsoft Excel 2010: Data Analysis and Business Modeling dependent variable is on the y-axis. With the chart selected, you click a data point (all data points are then displayed in blue), click Trendline in the Analysis group on the Chart Tools Layout tab, and then click More Trendline Options (or right-click and select Add Trendline). You’ll see the Format Trendline dialog box, which is shown in Figure 49-1. Figure 49-1 Format Trendline options. If your graph indicates that a straight line is a reasonable fit to the points, choose the Linear option. If the graph indicates that the dependent variable increases at an accelerating rate, the Exponential (and perhaps Power) option probably fits the relationship. If the graph shows that the dependent variable increases at a decreasing rate, or that the dependent variable decreases at a decreasing rate, the Power option is probably the most relevant. In this chapter, I’ll focus on the Linear option. In Chapter 50, I’ll discuss the Exponential ­option, and in Chapter 51, I’ll cover the Power option. In Chapter 58, “Using Moving Averages to Understand Time Series,” I’ll discuss the moving average curve, and in Chapter 80, “Pricing Products by Using Tie-Ins,” I’ll discuss the polynomial curve. (The logarithmic curve is of little value in this discussion, so I won’t address it.) Chapter 49 Estimating Straight Line Relationships 425 Answers to This Chapter’s Questions How can I determine the relationship between monthly production and monthly ­operating costs? The file Costestimate.xlsx, shown in Figure 49-2, contains data about the units produced and the monthly plant operating cost for a 14-month period. You are interested in predicting monthly operating costs from units produced, which helps the plant manager determine the operating budget and better understand the cost to produce refrigerators. Figure 49-2 Plant operating data. Begin by creating an XY chart (or a scatter plot) that displays the independent variable (units produced) on the x-axis and the dependent variable (monthly plant cost) on the y-axis. The column of data that you want to display on the x-axis must be located to the left of the column of data you want to display on the y-axis. To create the graph, select the data in the range C2:D16 (including the labels in cells C2 and D2). Then click Scatter in the Charts group on the Insert tab, and select the first option (Scatter With Only Markers) as the chart type. You’ll see the graph shown in Figure 49-3. Figure 49-3 Scatter plot of operating cost vs. units produced. 426 Microsoft Excel 2010: Data Analysis and Business Modeling If you want to modify this chart, you can click anywhere inside the chart to display the Chart Tools contextual tab. Using the commands on the Chart Tools Design tab, you can: ■ Change the chart type. ■ Change the source data. ■ Change the style of the chart. ■ Move the chart. Using the commands on the Chart Tools Layout tab, you can: ■ Add a chart title. ■ Add axis labels. ■ Add labels to each point that give the x and y coordinate of each point. ■ Add gridlines to the chart. Looking at the scatter plot, it seems reasonable that a straight line (or linear relationship) exists between units produced and monthly operating costs. You can see the straight line that best fits the points by adding a trendline to the chart. Click within the chart to select it, and then click a data point. All the data points are displayed in blue, with an X covering each point. Right-click, and then click Add Trendline. In the Format Trendline dialog box, select the Linear option, and then select the Display Equation On Chart and the Display R-Squared Value On Chart check boxes, as shown in Figure 49-4. Figure 49-4 Selecting trendline options. Chapter 49 Estimating Straight Line Relationships 427 After clicking Close, you’ll see the results shown in Figure 49-5. Notice that I added a title to the chart and labels for the x-axis and y-axis by selecting Chart Tools and clicking Chart Title and then Axis Titles in the Labels group on the Layout tab. Figure 49-5 Completed trend curve. If you want to add more decimal points to the values in the equation, you can select the trendline equation, and after selecting Layout from Chart Tools, choose Format Selection. Now after selecting Number, you can choose the number of decimal places to be displayed. How does Excel determine the best fitting line? Excel chooses the line that minimizes (over all lines that could be drawn) the sum of the squared vertical distance from each point to the line. The vertical distance from each point to the line is called an error, or residual. The line created by Excel is called the least-squares line. You minimize the sum of squared ­errors rather than the sum of the errors because in simply summing the errors, positive and n ­ egative errors can cancel each other out. For example, a point 100 units above the line and a point 100 units below the line cancel each other if you add errors. If you square errors, however, the fact that your predictions for each point are wrong is used by Excel to find the best fitting line. Thus, Excel calculates that the best fitting straight line for predicting monthly operating costs from monthly units produced as follows: (Monthly operating cost)=37,894.0956+64.2687(Units produced) By copying the formula 64.2687*C3+37894.0956 from cell E3 to the cell range E4:E16, you compute the predicted cost for each observed data point. For example, when 1,260 units are produced, the predicted cost is $123,118. (See Figure 49-2.) You should not use a least-squares line to predict values of an independent variable that lie outside the range for which you have data. The line in this example should only be used 428 Microsoft Excel 2010: Data Analysis and Business Modeling to predict monthly plant operating costs during months in which production is between ­approximately 450 and 1,300 units. The intercept of this line is $37,894.10, which can be interpreted as the monthly fixed cost. So, even if the plant does not produce any refrigerators during a month, this graph estimates that the plant will still incur costs of $37,894.10. The slope of this line (64.2687) indicates that each extra refrigerator produced increases monthly costs by $64.27. Thus, the variable cost of producing a refrigerator is estimated to be $64.27. In cells F3:F16, I computed the errors (or residuals) for each data point. I defined the error for each data point as the amount by which the point varies from the least-squares line. For each month, error equals the observed cost minus the predicted cost. Copying from F3 to F4:F16 the formula D3-E3 computes the error for each data point. A positive error indicates a point is above the least-squares line, and a negative error indicates that the point is below the least-squares line. In cell F1, I computed the sum of the errors and obtained –0.03. In reality, for any least-squares line, the sum of the errors should equal 0. (I obtained –0.03 because I rounded the equation to four decimal points.) The fact that errors sum to 0 implies that the least-squares line has the intuitively satisfying property of splitting the points in half. How accurately does this relationship explain the monthly variation in plant operating cost? Clearly, each month both the operating cost and the units produced vary. A natural q ­ uestion is, What percentage of the monthly variation in operating costs is explained by the monthly variation in units produced? The answer to this question is the R2 value (0.69 shown in Figure 49-5). You can state that the linear relationship explains 69 percent of the variation in monthly operating costs. This implies that 31 percent of the variation in monthly operating costs is explained by other factors. Using multiple regression (see Chapters 53 through 55), you can try to determine other factors that influence operating costs. People always ask, what is a good R2 value? There is really no definitive answer to this ­question. With one independent variable, of course, a larger R2 value indicates a better fit of the data than a smaller R2 value. A better measure of the accuracy of your predictions is the standard error of the regression, which I’ll describe in the next section. How accurate are my predictions likely to be? When you fit a line to points, you obtain a standard error of the regression that m ­ easures the “spread” of the points around the least-squares line. The standard error associated with a least-squares line can be computed with the STEYX function. The syntax of this ­function is STEYX(yrange,xrange), where yrange contains the values of the dependent ­variable, and xrange contains the values of the independent variable. In cell K1, I computed the standard error of the cost estimate line in the file Costestimate.xlsx using the formula STEYX(D3:D16,C3:C16). The result is shown in Figure 49-6. Chapter 49 Estimating Straight Line Relationships 429 Approximately 68 percent of the points should be within one standard error of regression (SER) of the least-squares line, and about 95 percent of the points should be within two SER of the least-squares line. These measures are reminiscent of the descriptive statistics rule of thumb that I described in Chapter 42, “Summarizing Data by Using Descriptive Statistics.” In this example, the absolute value of around 68 percent of the errors should be $13,772 or smaller, and the absolute value of around 95 percent of the errors should be $27,544 (or 2*13,772) or smaller. Looking at the errors in column F, you can see that 10 out of 14, or 71 percent, of the points are within one SER of the least-squares line and all (100 percent) of the points are within two standard SER of the least-squares line. Any point that is more than two SER from the least-squares line is called an outlier. Looking for causes of outliers can often help you improve the operation of your business. For example, a month in which actual operating costs are $30,000 higher than anticipated would be a cost outlier on the high side. If you could ascertain the cause of this high cost outlier and prevent it from recurring, you would clearly improve plant efficiency. Similarly, consider a month in which actual costs are $30,000 less than expected. If you could ascertain the cause of this low cost outlier and ­ensure it occurred more often, you would improve plant efficiency. Figure 49-6 Computation of slope, intercept, RSQ, and standard error of regression. When estimating a straight line relationship, which functions can I use to get the slope and intercept of the line that best fits the data? The Excel SLOPE(yrange,xrange) and INTERCEPT(yrange,xrange) functions return the slope and intercept, respectively, of the least-squares line. Thus, entering in cell I1 the formula SLOPE(D3:D16,C3:C16) (see Figure 49-6) returns the slope (64.27) of the least-squares line. Entering in cell I2 the formula INTERCEPT(D3:D16,C3:C16) returns the intercept (37,894.1) of the least-squares line. By the way, the RSQ(yrange,xrange) function returns the R2 value associated with a least-squares line. So, entering in cell I3 the formula RSQ(D3:D16,C3:C16) ­returns the R2 value of 0.6882 for the least-squares line. Problems The file Delldata.xlsx contains monthly returns for the Standard & Poor’s stock index and for Dell stock. The beta of a stock is defined as the slope of the least-squares line used to predict the monthly return for a stock from the monthly return for the market. 1. Estimate the beta of Dell. 2. Interpret the meaning of Dell’s beta. 430 Microsoft Excel 2010: Data Analysis and Business Modeling 3. If you believe a recession is coming, would you rather invest in a high beta or a low beta stock? 4. During a month in which the market goes up 5 percent, you are 95 percent sure that Dell’s stock price will increase between which range of values? The file Housedata.xlsx gives the square footage and sales prices for several houses in Bellevue, Washington. 5. You are going to build a 500-square-foot addition to your house. How much do you think your home value will increase as a result? 6. What percentage of the variation in home value is explained by variation in house size? 7. A 3,000-square-foot house is selling for $500,000. Is this price out of line with typical real estate values in Bellevue? What might cause this discrepancy? 8. We know that 32 degrees Fahrenheit is equivalent to 0 degrees Celsius, and that 212 degrees Fahrenheit is equivalent to 100 degrees Celsius. Use the trend curve to determine the relationship between Fahrenheit and Celsius temperatures. When you create your initial chart, before clicking Finish, you must indicate that data is in columns and not rows, because with only two data points, Excel assumes different variables are in different rows. 9. The file Betadata.xlsx contains the monthly returns on the Standard & Poor’s index as well as the monthly returns on Cinergy, Dell, Intel, Microsoft, Nortel, and Pfizer. Estimate the beta of each stock. 10. The file Electiondata.xlsx contains, for several elections, the percentage of votes Republicans gained from voting machines (counted on election day) and the percentage Republicans gained from absentee ballots (counted after election day). Suppose that during an election, Republicans obtained 49 percent of the votes on election day and 62 percent of the absentee ballot votes. The Democratic candidate cried “Fraud.” What do you think? Chapter 50 Modeling Exponential Growth Question answered in this chapter: ■ How can I model the growth of a company’s revenue over time? If you want to value a company, it’s important to have some idea about its future revenues. Although the future might not be like the past, you often begin a valuation analysis of a ­corporation by studying the company’s revenue growth during the recent past. Many analysts like to fit a trend curve to recent revenue growth. To fit a trend curve, you plot the year on the x-axis (for example, the first year of data is Year 1, the second year of data is Year 2, and so on), and on the y-axis, you plot the company’s revenue. Usually, the relationship between time and revenue is not a straight line. Recall that a straight line always has the same slope, which implies that when the independent variable (in this case, the year) is increased by 1, the prediction for the dependent variable (revenue) ­increases by the same amount. For most companies, revenue grows by a fairly constant ­percentage each year. If this is the case, as revenue increases, the annual increase in revenue also increases. After all, revenue growth of 10 percent of $1 million means revenue grows by $100,000. Revenue growth of 10 percent of $100 million means revenue grows by $10 million. This analysis implies that a trend curve for forecasting revenue should grow more steeply and have an increasing slope. The exponential function has the property that as the independent variable increases by 1, the dependent variable increases by the same ­percentage. This relationship is exactly what you need to model revenue growth. The equation for the exponential function is y=aebx. Here, x is the value of the independent variable (in this example, the year), whereas y is the value of the dependent variable (in this case, annual revenue). The value e (approximately 2.7182) is the base of natural logarithms. If you select Exponential from Excel’s trendline options, Excel calculates the values of a and b that best fit the data. Let’s look at an example. Answers to This Chapter’s Question How can I model the growth of a company’s revenue over time? The file Ciscoexpo.xlsx, shown in Figure 50-1, contains the revenues for Cisco for the years 1990 through 1999. All revenues are in millions of dollars. In 1990, for example, Cisco’s ­revenues were $103.47 million. 431 432 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 50-1 Cisco’s annual revenues for the years 1990 through 1999. To fit an exponential curve to this data, begin by selecting the cell range A3:B13. Next, on the Insert tab, in the Charts group, click Scatter. Selecting the first chart option (Scatter With Only Markers) creates the chart shown in Figure 50-2. Figure 50-2 Scatter plot for the Cisco trend curve. Fitting a straight line to this data would be ridiculous. When a graph’s slope is rapidly ­increasing, as in this example, an exponential growth will usually provide a good fit to the data. To obtain the exponential curve that best fits this data, right-click a data point (all the points turn blue), and then click Add Trendline. In the Format Trendline dialog box, select the Exponential option in the Trendline Options area, and also select the Display Equation On Chart and Display R-Squared Value On Chart check boxes. After you click Close, you’ll see the trend curve shown in Figure 50-3. The estimate of Cisco’s revenue in year x (remember that x=1 is the year 1990) is computed from the following formula Estimated Revenue=58.552664e.569367x Chapter 50 Modeling Exponential Growth 433 I computed estimated revenue in the cell range C4:C13 by copying from C4 to C5:C13 the formula =58.552664*EXP(0.569367*A4). For example, the estimate of Cisco’s revenue in 1999 (year 10) is $17.389 billion. Figure 50-3 Exponential trend curve for Cisco revenues. Notice that most of the data points are very close to the fitted exponential curve. This pattern indicates that exponential growth does a good job of explaining Cisco’s revenue growth during the 1990s. The fact that the R2 value (0.98) is very close to 1 is also consistent with the visual evidence of a good fit. Remember that whenever x increases by 1, the estimate from an exponential curve increases by the same percentage. You can verify this fact by computing the ratio of each year’s estimated revenue to the previous year’s estimated revenue. To compute this ratio, copy from D5 to D6:D13 the formula=C5/C4. You’ll find that the estimate of Cisco’s growth rate is 76.7 percent per year, which is the best estimate of Cisco’s annual growth rate for the years 1990 through 1999. Of course, to use this estimated annual revenue growth rate in a valuation analysis, you need to ask yourself whether it’s likely that this growth rate can be maintained. Be forewarned that exponential growth cannot continue forever. For example, if you use the exponential trend curve to forecast revenues for 2005 (year 16), Cisco’s 2005 predicted revenues would be $530 billion. If this estimate were realized, Cisco’s revenues would be triple the 2002 revenues of the world’s largest company (Walmart). This seems highly unrealistic. The moral is that during its early years, the revenue growth for a technology company follows exponential growth. After a while, the growth rate slows down. If Wall Street analysts had understood this fact during the late 1990s, the Internet stock bubble might have been avoided. Note that ­during 1999, Cisco’s actual revenue fell well short of the trend curve’s estimated revenue. This fact may well have indicated the start of the technology slowdown, which began during late 2000. 434 Microsoft Excel 2010: Data Analysis and Business Modeling By the way, why must you use x=1 instead of x=1990? If you used x=1990, Excel would have to juggle numbers around the size of e1990. A number this large causes Excel a great deal of difficulty. Problems The file Exponentialdata.xlsx contains annual sales revenue for Staples, Walmart, and Intel. Use this data to work through the first five problems for this chapter. 1. For each company, fit an exponential trend curve to its sales data. 2. For which company does exponential growth have the best fit with its revenue growth? 3. For which company does exponential growth have the worst fit with its revenue growth? 4. For each company, estimate the annual percentage growth rate for revenues. 5. For each company, use your trend curve to predict 2003 revenues. 6. The file Impalas.xlxs contains the price of 2009, 2008 2007, and 2006 Impalas during 2010. From this data, what can you conclude about how a new car loses it value as it grows older? Chapter 51 The Power Curve Questions answered in this chapter: ■ As my company produces more of a product, it learns how to make the product more efficiently. Can I model the relationship between units produced and the time needed to produce a unit? A power curve is calculated with the equation y =axb. In the equation, a and b are constants. Using a trend curve, you can determine the values of a and b that make the power curve best fit a scatter plot diagram. In most situations, a is greater than 0. When this is the case, the slope of the power curve depends on the value of b, as follows: ■ For b>1, y increases as x increases, and the slope of the power curve increases as x increases. ■ For 0<b<1, y increases as x increases, and the slope of the power curve decreases as x increases. ■ For b=1, the power curve is a straight line. ■ For b<0, y decreases as x increases, and the power curve flattens out as x increases. Here are examples of different relationships that can be modeled by a power curve. These examples are contained in the file Powerexamples.xlsx. If you are trying to predict total production cost as a function of units produced, you might find a relationship similar to that shown in Figure 51-1. Notice that b equals 2. As I mentioned previously, with this value of b, the cost of production increases with the number of units produced. The slope becomes steeper, which indicates that each additional unit costs more to produce. This relationship might occur because increased production requires more ­overtime labor, which costs more than regular labor. Figure 51-1 Predicting cost as a function of the number of units produced. 435 436 Microsoft Excel 2010: Data Analysis and Business Modeling If you are trying to predict sales as a function of advertising expenditures, you might find a curve similar to that shown in Figure 51-2. Figure 51-2 Plotting sales as a function of advertising. Here, b equals 0.5, which is between 0 and 1. When b has a value in this range, sales increase with increased advertising but at a decreasing rate. Thus, the power curve allows you to model the idea of diminishing return—that each additional dollar spent on advertising will provide less benefit. If you are trying to predict the time needed to produce the last unit of a product based on the number of units produced to date, you often find a scatter plot similar to that shown in Figure 51-3. Here you find that b equals –0.1. Because b is less than 0, the time needed to produce each unit decreases, but the rate of decrease—that is, the rate of “learning”—slows down. This relationship means that during the early stages of a product’s life cycle, huge savings in labor time occur. As you make more of a product, however, savings in labor time occur at a slower rate. The relationship between cumulative units produced and time needed to produce the last unit is called the learning or experience curve. Figure 51-3 Plotting the time needed to produce a unit based on cumulative production. Chapter 51 The Power Curve 437 A power curve has the following properties: ■ Property 1 If x increases by 1 percent, y increases by approximately b percent. ■ Property 2 Whenever x doubles, y increases by the same percentage. Suppose that demand for a product as a function of price can be modeled as 1000(Price)–2. Property 1 then implies that a 1 percent increase in price will lower demand (regardless of price) by 2 percent. In this case, the exponent b (without the negative sign) is called the ­elasticity. I will discuss elasticity further in Chapter 79, “Estimating a Demand Curve.” With this background, let’s take a look at how to fit a power curve to data. Answer to This Chapter’s Question As my company produces more of a product, it learns how to make the product more ­efficiently. Can I model the relationship between units produced and the time needed to produce a unit? The file Fax.xlsx contains data about the number of fax machines produced and the unit cost (in 1982 dollars) of producing the “last” fax machine made during each year. In 1983, for ­example, 70,000 fax machines were produced, and the cost of producing the last fax machine was $3,416. The data is shown in Figure 51-4. Figure 51-4 Data used to plot the learning curve for producing fax machines. Because a learning curve tries to predict either cost or the time needed to produce a unit from data about cumulative production, I’ve calculated in column C the cumulative number of fax machines produced by the end of each year. In cell C4, I refer to cell B4 to show the number of fax machines produced in 1982. By copying from C5 to C6:C10 the formula SUM($B$4:B4), I compute cumulative fax machine production for the end of each year. You can now create a scatter plot that shows cumulative units produced on the x-axis and unit cost on the y-axis. After creating the chart, you click one of the data points (the data points will be displayed in blue), then right-click and click Add Trendline. In the Format Trendline dialog box, select the Power option and then select the Display Equation On 438 Microsoft Excel 2010: Data Analysis and Business Modeling Chart and the Display R-Squared Value On Chart check boxes. With these settings, you ­obtain the chart shown in Figure 51-5. The curve drawn represents the power curve that best fits the data. Figure 51-5 Learning curve for producing fax machines. The power curve predicts the cost of producing a fax machine as follows: Cost of producing fax machine=65,259(cumulative units produced) -.2533 Notice that most data points are near the fitted power curve and that the R2 value is nearly 1, indicating that the power curve fits the data well. By copying from cell E4 to E5:E10 the formula 65259*C4^–0.2533, you compute the ­predicted cost for the last fax machine produced during each year. (The carat symbol [^], which is located over the 6 key, is used to raise a number to a power.) If you estimated that 1,000,000 fax machines were produced in 1989, after computing the total 1989 production (2,744,000) in cell C11, you can copy the forecast equation to cell E11 to predict that the last fax machine produced in 1989 cost $1,526.85. Remember that Property 2 of the power curve states that whenever x doubles, y increases by the same percentage. By entering twice cumulative 1988 production in cell C12 and copying your forecast formula in E10 to cell E12, you’ll find that doubling cumulative units produced reduces the predicted cost to 83.8 percent of its previous value (1,516.83/1,712.60). For this reason, the current learning curve is known as an 84-percent learning curve. Each time you double units produced, the labor required to make a fax machine drops by 16.2 percent. If a curve gets steeper, the exponential curve might fit the data as well as the power curve does. A natural question is which curve fits the data better? In most cases, this question can be answered simply by eyeballing the curves and choosing the one that looks like it’s a better fit. More precisely, you could compute the Sum of Squared Errors (SSE) for each curve (­obtained by adding up for each data point the square of the curve value minus the actual value) and choose the curve with the smaller SSE. Chapter 51 The Power Curve 439 The learning curve was discovered in 1936 at Wright-Patterson Air Force Base in Dayton, Ohio, when it was found that whenever the cumulative number of airplanes produced ­doubled, the time required to make each airplane dropped by around 15 percent. Wikipedia gives the following learning curve estimates for various industries: ■ Aerospace: 85 percent ■ Shipbuilding: 80–85 percent ■ Complex machine tools for new models: 75–85 percent ■ Repetitive electronics manufacturing: 90–95 percent ■ Repetitive machining or punch-press operations: 90–95 percent ■ Repetitive electrical operations: 75–85 percent ■ Repetitive welding operations: 90 percent ■ Raw materials: 93–96 percent ■ Purchased parts: 85–88 percent Problems 1. Use the fax machine data to model the relationship between cumulative fax machines produced and total production cost. 2. Use the fax machine data to model the relationship between cumulative fax machines produced and average production cost per machine. 3. A marketing director estimates that total sales of a product as a function of price will be as shown in the following table. Estimate the relationship between price and demand, and predict demand for a $46 price. A 1 percent increase in price will reduce demand by what percentage? Price Demand $30.00 300 $40.00 200 $50.00 110 $60.00 60 440 Microsoft Excel 2010: Data Analysis and Business Modeling 4. The brand manager for a new drug believes that the annual sales of the drug as a ­function of the number of sales calls on doctors will be as shown in the following table. Estimate sales of the drug if 80,000 sales calls are made on doctors. Sales calls Units sold 50,000 25,000 100,000 52,000 150,000 68,000 200,000 77,000 5. The time needed to produce each of the first ten airplanes produced is as follows: Unit Hours 1 1,000 2 800 3 730 4 630 5 600 6 560 7 560 8 500 9 510 10 510 Estimate the total number of hours needed to produce the next ten airplanes. Chapter 52 Using Correlations to Summarize Relationships Questions answered in this chapter: ■ How are monthly stock returns for Microsoft, GE, Intel, GM, and Cisco related? Trend curves are a great help in understanding how two variables are related. Often, ­however, you need to understand how more than two variables are related. Looking at the correlation between any pair of variables can provide insights into how multiple variables move up and down in value together. The correlation (usually denoted by r) between two variables (call them x and y) is a unit-free measure of the strength of the linear relationship between x and y. The correlation between any two variables is always between –1 and +1. Although the exact formula used to compute the correlation between two variables isn’t very important, being able to interpret the ­correlation between the variables is. A correlation near +1 means that x and y have a strong positive linear relationship. That is, when x is larger than average, y tends to be larger than average, and when x is smaller than average, y also tends to be smaller than average. When a straight line is applied to the data, there will be a straight line with a positive slope that does a good job of fitting the points. As an example, for the data shown in Figure 52-1 (x=units produced and y=monthly ­production cost), x and y have a correlation of +0.90. (See the file Correlationexamples.xlsx for Figures 52-1 through 52-3.) Figure 52-1 A correlation near +1, indicating that two variables have a strong positive linear relationship. 441 442 Microsoft Excel 2010: Data Analysis and Business Modeling On the other hand, a correlation near –1 means that there is a strong negative linear ­relationship between x and y. That is, when x is larger than average, y tends to be smaller than average, and when x is smaller than average, y tends to be larger than average. When a straight line is applied to the data, the line has a negative slope that does a good job of ­fitting the points. As an example, for the data shown in Figure 52-2, x and y have a ­correlation of –0.90. Figure 52-2 A correlation near –1, indicating that two variables have a strong negative linear relationship. A correlation near 0 means that x and y have a weak linear relationship. That is, knowing whether x is larger or smaller than its mean tells you little about whether y will be larger or smaller than its mean. Figure 52-3 shows a graph of the dependence of unit sales (y) on years of sales experience (x). Years of experience and unit sales have a correlation of 0.003. In this data set, the average experience is 10 years. You can see that when a person has more than 10 years of sales experience, his or her sales can be either low or high. You can also see that when a person has fewer than 10 years of sales experience, sales can be low or high. Although experience and sales have little or no linear relationship, there is a strong nonlinear relationship (see the fitted curve) between years of experience and sales. Correlation does not measure the strength of nonlinear relationships. Figure 52-3 A correlation of 0, indicating a weak linear relationship between two variables. Chapter 52 Using Correlations to Summarize Relationships 443 Answer to This Chapter’s Question How are monthly stock returns for Microsoft, GE, Intel, GM, and Cisco related? The file Stockcorrel.xlsx (see Figure 52-4) shows monthly stock returns for Microsoft, GE, Intel, GM, and Cisco during the 1990s. You can use correlations to try to understand how ­movements in these stocks are related. To find the correlations between each pair of stocks, click Data Analysis in the Analysis group on the Data tab, and then select the Correlation option. You must install the Analysis ToolPak (as described in Chapters 41 and 42) before you can use this feature. Click OK, and then fill in the Correlation dialog box as shown in Figure 52-5. Figure 52-4 Monthly stock returns during the 1990s. Figure 52-5 Correlation dialog box. 444 Microsoft Excel 2010: Data Analysis and Business Modeling The easiest way to enter the input range is to select the upper-left cell of the range (B51) and then press Ctrl+Shift+Right Arrow, followed by Ctrl+Shift+Down Arrow. Select the Labels In First Row option if the first row of the input range contains labels. I entered cell H52 as the upper-left cell of the output range. After clicking OK, I got the results shown in Figure 52-6. Figure 52-6 Stock return correlations. The correlation between Cisco and Microsoft is 0.513, for example, whereas the correlation between GM and Microsoft is 0.069. The analysis shows that returns on Cisco, Intel, and Microsoft are most closely tied together. Because the correlation between each pair of these stocks is around 0.5, these stocks exhibit a moderate positive relationship. In other words, if one stock does better than average, it is likely (but not certain) that the other stocks will do better than average. Because Cisco, Intel, and Microsoft stock returns are closely tied to technology spending, their fairly strong correlation is not surprising. You can also see that the monthly returns on Microsoft and GM are virtually uncorrelated. This relationship indicates that when Microsoft stock does better than average, you really can’t tell whether GM stock will do better or worse than average. Again, this trend is not surprising because GM is not ­really a high-tech company and is more susceptible to the vagaries of the business cycle. Filling In the Correlation Matrix As you can see in this example, Excel left some entries in the correlation matrix blank. For ­example, the correlation between Microsoft and GE (which is equal to the correlation between GE and Microsoft) is omitted. If you want to fill in the entire correlation matrix, rightclick the matrix, and then click Copy. Right-click a blank portion of the worksheet, and then click Paste Special. In the Paste Special dialog box, select Transpose. This flips the data on its side. Now right-click the flipped data, and click Copy. Right-click the original correlation matrix, and click Paste Special again. In the Paste Special dialog box, select Skip Blanks, and then click OK. The transposed data is copied to the original matrix, but pasting the data does not copy the blank cells from the transposed data. The full correlation matrix is shown in Figure 52-7. Chapter 52 Using Correlations to Summarize Relationships 445 Figure 52-7 The complete correlation matrix. Using the CORREL Function As an alternative to using the Correlation option from the Analysis ToolPak, you can use the CORREL function. For example, entering in cell I49 the formula CORREL(E52:E181,F52:F181) confirms that the correlation between monthly returns on Cisco (shown in column F) and GM (shown in column E) is 0.159. Relationship Between Correlation and R2 In Chapter 49, “Estimating Straight Line Relationships,” we found an R2 value for units ­produced and monthly operating cost of 0.688. How is this value related to the correlation between units produced and monthly operating costs? The correlation between two sets of data is simply R2value for the trendline, where you choose the sign for the square root to be the same as the sign of the slope of the trendline. Thus the correlation between units produced and monthly ­operating cost for the data in Chapter 49 is + .688 = + .829 Correlation and Regression Toward the Mean You have probably heard the phrase “regression toward the mean.” Essentially, this ­statement means that the predicted value of a dependent variable will be in some sense closer to its average value than the independent variable. More precisely, suppose you try to predict a 446 Microsoft Excel 2010: Data Analysis and Business Modeling dependent variable y from an independent variable x. If x is k standard deviations above average, then your prediction for y will be rk standard deviations above average (here, r=correlation between x and y). Because r is between -1 and +1, this means that y is fewer standard deviations away from the mean than x. This is the real definition of “regression ­toward the mean.” See Problem 5 for an interesting application of the concept of regression toward the mean. Problems The data for the following problems is in file Ch52data.xlsx. 1. The Problem 1 worksheet contains the number of cars parked each day both in the outdoor lot and in the parking garage near the Indiana University Kelley School of Business. Find and interpret the correlation between the number of cars parked in the outdoor lot and in the parking garage. 2. The Problem 2 worksheet contains daily sales volume (in dollars) of laser printers, ­printer cartridges, and school supplies. Find and interpret the correlations between these quantities. 3. The Problem 3 worksheet contains annual returns on stocks, T-Bills, and T-Bonds. Find and interpret the correlations between the annual returns on these three classes of investments. Here are two more problems: 4. The file Dow.xlsx contains the monthly returns between the 30 stocks comprising the Dow Jones Index. Find the correlations between all stocks. Then, for each stock, use conditional formatting to highlight the three stocks most correlated with that stock. (Of course, you should not highlight a stock as correlated with itself.) 5. NFL teams play 16 games during the regular season. Suppose the standard deviation of the number of games won by all teams is 2, and the correlation between the number of games a team wins in two consecutive seasons is 0.5. If a team goes 12 and 4 ­during a season, what is your best prediction for how many games that team will win next season? Chapter 53 Introduction to Multiple Regression Questions answered in this chapter: ■ Our factory manufactures three products. How can I predict the cost of running the factory based on the number of units produced? ■ How accurate are my forecasts for predicting monthly cost based on units produced? ■ I know how to use the Data Analysis command to run a multiple regression. Is there a way to run the regression without using this command and place the regression’s ­results in the same worksheet as the data? Answers to This Chapter’s Questions Our factory manufactures three products. How can I predict the cost of running the ­factory based on the number of units produced? In Chapters 49 through 51, I described how to use the trend curve in Microsoft Excel 2010 to predict one variable (called y, or the dependent variable) from another variable (called x, or the independent variable). However, you often want to use more than one independent variable (called the independent variables x1, x2, … xn) to predict the value of a dependent variable. In these cases, you can use either the multiple regression option in the Excel Data Analysis feature or the LINEST function to estimate the relationship you want. Multiple regression assumes that the relationship between y and x1, x2, … xn has the ­following form: Y=Constant+B1X1+B2X2+...BnXn Excel calculates the values of Constant, B1, B2, … Bn to make the predictions from this ­equation as accurate (in the sense of minimizing the sum of squared errors) as possible. The following example illustrates how multiple regression works. The Data worksheet in the file Mrcostest.xlsx (see Figure 53-1) contains the cost of running a plant over 19 months, as well as the number of units of Product A, Product B, and Product C produced during each month. 447 448 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 53-1 Data for predicting monthly operating costs. You would like to find the best forecast for monthly operating cost that has the following form (which I’ll refer to as Form 1): Monthly operating cost=Constant+B1*(Units A produced)+B2*(Units B produced) +B3*(Units C produced) The Excel Data Analysis feature can find the equation for this form that best fits your data. Click Data Analysis in the Analysis group on the Data tab, and then select Regression. Fill in the Regression dialog box as shown in Figure 53-2. Note If you haven’t previously installed the Analysis ToolPak, click the File tab, click Options, and then click Add-Ins. With Excel Add-ins selected in the Manage box, click Go, select the Analysis ToolPak box, and then click OK. Figure 53-2 Regression dialog box. Chapter 53 Introduction to Multiple Regression 449 ■ Input Y Range (B3:B22 in this example) contains the dependent variable or data (­including the Cost label) that you want to predict. ■ Input X Range (C3:E22) contains the data or independent variables (including the labels A Made, B Made, and C Made) that you want to use in the prediction. Excel has a limit of 15 independent variables, which must be in adjacent columns. ■ Because both the Input X and Input Y ranges include labels, I’ve checked the Labels box. ■ I chose to place the output in a new worksheet titled Regression. ■ Selecting the Residuals check box causes Excel to list, for each observation, the ­prediction from Form 1 and the residual, which equals the observed cost minus the predicted cost. After clicking OK in the Regression dialog box, you obtain the output shown in Figures 53-3 and 53-4. (See the Regression worksheet.) Figure 53-3 Original multiple regression output. Figure 53-4 Original multiple regression residual output. 450 Microsoft Excel 2010: Data Analysis and Business Modeling What is the best prediction equation? You’ll find in the Coefficients column (column B of the summary output) that the best equation of Form 1 that can be used to predict monthly cost is the following: Predicted monthly cost=35,102.90+2.07(AMade)+4.18(BMade)+4.79(CMade) A natural question is, Which of our independent variables are useful for predicting monthly cost? After all, if you choose the number of games won by the Seattle Mariners during a ­one-month period as an independent variable, you would expect that this variable would have little effect on predicting monthly operating cost. When you run a regression, each ­independent variable has a p-value between 0 and 1. Any independent variable with a p-value (see column E) of less than or equal to 0.15 is considered to be useful for predicting the dependent variable. Thus, the smaller the p-value, the higher the predictive power of the independent variable. Our three independent variables have p-values of 0.23 (for A Made), 0.025 (for B Made), and 0.017 (for C Made). These p-values can be interpreted as follows: ■ When you use B Made and C Made to predict monthly operating cost, you have a 77 percent chance (1–0.23) that A Made adds predictive power. ■ When you use A Made and C Made to predict monthly operating cost, there is a 97.5 percent chance (1–0.025) that B Made adds predictive power. ■ When you use A Made and B Made to predict monthly operating cost, there is a 98.3 percent chance (1–0.017) that C Made adds predictive power. Our p-values indicate that A Made does not add much predictive power to B Made and C Made, which means that if you know B Made and C Made, you can predict monthly operating cost about as well as you can if you include A Made as an independent variable. Therefore, you can opt to delete A Made as an independent variable and use just B Made and C Made for your prediction. I copied the data to the worksheet titled A Removed and deleted the A Made column (column C). I then adjusted the Input X range to be C3:D22. In the worksheet titled NoA, you can see the regression output shown in Figure 53-5 and Figure 53-6. Figure 53-5 Multiple regression output with A Made data removed as an independent variable. Chapter 53 Introduction to Multiple Regression 451 Figure 53-6 Residual output calculated when A Made data is removed as an independent variable. You can see that A Made and B Made each have very low p-values (0.002 and 0.007, ­respectively). These values indicate that both these independent variables have useful ­predictive power. Using the new coefficients in column B, you can now predict monthly ­operating cost using the following equation: Predicted monthly operating cost=35,475.3+5.32(BMade)+5.42(CMade) How accurate are my forecasts for predicting monthly cost based on units produced? In the regression output in cell B5 of the NoA worksheet (see Figure 53-5), R2 equals 0.61. An R2 value such as this one means that together, B Made and C Made explain 61 percent of the variation in monthly operating costs. Notice that in the original regression, which ­included A Made as an independent variable, R2 equals 0.65. This indicates that the addition of A Made as an independent variable explains only 4 percent more variation in monthly ­operating costs. Having such a minor difference is consistent with the decision to delete A Made as an independent variable. In the regression output in cell B7 in the NoA worksheet, the standard error for the ­regression with B Made and C Made as independent variables is 1,274. You would expect about 68 percent of your multiple regression forecasts to be accurate within one standard error, and 95 percent to be accurate within two standard errors. Any forecast that differs from the a ­ ctual value by more than two standard errors is considered an outlier. Thus, if your ­forecasted operating cost is in error by more than $2,548 (2*1274), you consider that ­observation to be an outlier. In the Residual portion of the output, shown earlier in Figure 53-6, you are given for each ­observation the predicted cost and the residual, which equals the actual cost less the ­predicted cost. For the first observation, for example, the predicted cost is $43,381.10. The residual of $1,057.95 indicates that the prediction of actual cost was too low by $1,057.95. 452 Microsoft Excel 2010: Data Analysis and Business Modeling I know how to use the Data Analysis command to run a multiple regression. Is there a way to run the regression without using this command and place the regression’s results in the same worksheet as the data? The Excel LINEST function can be used to insert the results of a regression analysis directly into a workbook. To use the LINEST function when there are m independent variables, begin by selecting a blank cell range consisting of five rows and m+1 columns, where you want LINEST to deposit the results. In the A Removed worksheet, I used the range F5:H9. The syntax of the LINEST function is LINEST(KnownYs,KnownXs,True,True). If the third ­argument is changed to False, Excel estimates the equation without a constant term. Changing the fourth argument to False causes the LINEST function to omit many regression computations and return only the multiple regression equation. With the upper-left cell of the target range selected (F5 in this example), select the range of the size you want (in this case, the cell range F5:H9), and then enter the formula =LINEST(B4:B22,C4:D22,True,True). At this point, do not press Enter! LINEST is an array ­function (see Chapter 83, “Array Formulas and Functions,” for further discussion of array functions), so you must first hold down Ctrl+Shift and then press Enter for the function to work correctly. After using this key combination, you obtain the results shown in Figure 53-7. (See the A Removed worksheet.) Figure 53-7 Using the LINEST function to calculate a multiple regression. In row 5, you find the prediction equation (coefficients read right to left, starting with the intercept) of Predicted monthly cost=35,475.3+5.32(B Made)+5.43(C Made). Row 6 contains standard errors for each coefficient estimate, but these are not too relevant. Cell F7 contains the R2 value of 0.61, and cell G7 contains the regression standard error of 1,274. Rows 8 and 9 contain information (F statistic, degrees of freedom, sum of squares regression, and sum of squares residual) that is less important. Note Problems that you can work with to learn more about multiple regression are available at the end of Chapter 55. Chapter 54 Incorporating Qualitative Factors into Multiple Regression Questions answered in this chapter: ■ How can I predict quarterly U.S. auto sales? ■ How can I predict U.S. presidential elections? ■ Is there an Excel function I can use to easily make forecasts from a multiple regression equation? In the first example of multiple regression in Chapter 53, “Introduction to Multiple Regression,” I forecasted the monthly cost of plant operations by using the number of units of each product manufactured at the plant. Because you can quantify exactly the amount of a product produced at a plant, you can refer to the units produced of Product A, Product B, and Product C as quantitative independent variables. In many situations, however, independent variables can’t be easily quantified. In this chapter, we’ll look at ways to incorporate qualitative factors such as seasonality, gender, or the party of a presidential candidate into a multiple regression analysis. Answers to This Chapter’s Questions How can I predict quarterly U.S. auto sales? Suppose you want to predict quarterly U.S. auto sales to determine whether the quarter of the year impacts auto sales. We’ll use the data in the Data worksheet in the file Auto.xlsx, shown in Figure 54-1. Sales are listed in thousands of cars, and GNP is in billions of dollars. 453 454 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 54-1 Auto sales data. You might be tempted to define an independent variable that equals 1 during the first ­quarter, 2 during the second quarter, and so on. Unfortunately, this approach would force the fourth quarter to have four times the effect of the first quarter, which might not be true. The quarter of the year is a qualitative independent variable. To model a qualitative independent variable, you create an independent variable called a dummy variable for all but one of the qualitative variable’s possible values. (It is arbitrary which value you leave out. In this example, I chose to omit Quarter 4.) The dummy variables tell you which value of the q ­ ualitative variable occurs. Thus, we’ll have a dummy variable for Quarter 1, Quarter 2, and Quarter 3 with the following properties: ■ Quarter 1 dummy variable equals 1 if the quarter is Quarter 1 or 0 if otherwise. ■ Quarter 2 dummy variable equals 1 if the quarter is Quarter 2 or 0 if otherwise. ■ Quarter 3 dummy variable equals 1 if the quarter is Quarter 3 or 0 if otherwise. A Quarter 4 observation will be identified by the fact that the dummy variables for Quarter 1 through Quarter 3 equal 0. You can see why you don’t need a dummy variable for Quarter 4. In fact, if you include a dummy variable for Quarter 4 as an independent variable in the regression, Microsoft Excel returns an error message, the reason being that if an exact linear relationship exists between any set of independent variables, Excel must perform the mathematical equivalent of dividing by 0 (an impossibility) when running a multiple regression. In this example, if you include a Quarter 4 dummy variable, every data point satisfies the ­following exact linear relationship: (Quarter 1 Dummy)+(Quarter 2 Dummy)+(Quarter 3 Dummy)+(Quarter 4 Dummy)=1 Chapter 54 Incorporating Qualitative Factors into Multiple Regression 455 Note An exact linear relationship occurs if there exists constants c0, c1, … cN, such that for each data point c0 + c1x1 + c2x2 + … cNxN = 0. Here, x1 through xN are the values of the ­independent variables. To create the dummy variable for Quarter 1, I copied from G12 to G13:G42 the formula IF(B12=1,1,0). This formula places a 1 in column G whenever a quarter is the first quarter or a 0 in column G whenever the quarter is not the first quarter. In a similar fashion, I created dummy variables for Quarter 2 (in H12:H42) and Quarter 3 (in I12:I42). You can see the results of the formulas in Figure 54-2. Figure 54-2 Using dummy variables to track the quarter in which a sale occurs. In addition to seasonality, we’d like to use macroeconomic variables such as gross national product (GNP, in billions of 1986 dollars), interest rates, and unemployment rates to predict car sales. Suppose, for example, that you are trying to estimate sales for the second quarter of 1979. Because values for GNP, interest rate, and unemployment rate aren’t known at the beginning of the second quarter in 1979, you can’t use second quarter 1979 GNP, interest rate, and unemployment rate to predict Quarter 2 1979 auto sales. Instead, you use the values for GNP, interest rate, and unemployment rate lagged one quarter to forecast auto sales. By copying from J12 to J12:L42 the formula =D11, you create the lagged value for GNP, the first of our macroeconomic independent variables. For example, the range J12:L12 contains GNP, unemployment rate, and interest rate for the first quarter of 1979. You can now run the multiple regression by clicking Data Analysis on the Data tab and then selecting Regression in the Data Analysis dialog box. Use C11:C42 as the Input Y Range, G11:L42 as the Input X Range, select the labels option (row 11 contains labels), and also select 456 Microsoft Excel 2010: Data Analysis and Business Modeling the Residuals check box. After clicking OK, you obtain the output, which you can see in the Regression worksheet and in Figures 54-3 through 54-5. Figure 54-3 Summary output and ANOVA table for auto sales data. In Figure 54-4, you can see that the equation (equation 1) used to predict quarterly auto sales is as follows: Predicted quarterly sales=3154.7+156.833Q1+379.784Q2+203.03 6Q3+.174(LAGGNP in billions) –93.83(LAGUNEMP)–73.91(LAGINT) Also in Figure 54-4, you see that each independent variable has a p-value less than or equal to 0.15. You can conclude that all independent variables have a significant effect on quarterly auto sales. You interpret all coefficients in a regression equation ceteris paribus (which means that each coefficient gives the effect of the independent variable after adjusting for the ­effects of all other variables in the regression). Figure 54-4 Coefficient information for auto sales regression. Here’s an interpretation of each coefficient: ■ A $1 billion increase in last quarter’s GNP increases quarterly car sales by 174. ■ An increase of 1 percent in last quarter’s unemployment rate decreases quarterly car sales by 93,832. ■ An increase of 1 percent in last quarter’s interest rate decreases quarterly car sales by 73,917. Chapter 54 Incorporating Qualitative Factors into Multiple Regression 457 To interpret the coefficients of the dummy variables, you must realize that they tell you the effect of seasonality relative to the value left out of the qualitative variables. Therefore: ■ In Quarter 1, car sales exceed Quarter 4 car sales by 156,833. ■ In Quarter 2, car sales exceed Quarter 4 car sales by 379,784. ■ In Quarter 3, car sales exceed Quarter 4 car sales by 203,036. You find that car sales are highest during the second quarter (April through June; tax refunds and summer are coming) and lowest during the third quarter (October through December; why buy a new car when winter salting will ruin it?). From the Summary output shown in Figure 54-3, you can learn the following: ■ The variation in the independent variables (macroeconomic factors and seasonality) explains 78 percent of the variation in the dependent variable (quarterly car sales). ■ The standard error of regression is 190,524 cars. You can expect around 68 percent of your forecasts to be accurate within 190,524 cars and about 95 percent of your ­forecasts to be accurate within 381,048 cars (2*190,524). ■ There are 31 observations used to fit the regression. The only quantity of interest in the ANOVA table in Figure 54-3 is the significance (0.00000068). This measure implies that there are only 6.8 chances in 10,000,000 that, taken together, all of the independent variables are useless in forecasting car sales. Thus, you can be quite sure that the independent variables are useful in predicting quarterly auto sales. Figure 54-5 shows, for each observation, the predicted sales and residual. For example, for the second quarter of 1979 (observation 1), predicted sales from equation 1 are 2,728.6 ­thousand and the residual is 181,400 cars (2910–2728.6). Note that no residual exceeds 381,000 in absolute value, so you have no outliers. Figure 54-5 Residuals for the auto sales data. 458 Microsoft Excel 2010: Data Analysis and Business Modeling How can I predict U.S. presidential elections? When asked which factors drive presidential elections, presidential advisor James Carville said, “It’s the economy, stupid.” Yale economist Roy Fair showed that Carville was correct in thinking that the state of the economy has a large influence on the results of presidential elections. Fair’s dependent variable (see the Data worksheet in the file Fairmodel.xlsx, shown in Figure 54-6) for each election (1880 through 2008) was the percentage of the twoparty vote (ignoring votes received by third party candidates) that went to the incumbent party. He tried to predict the incumbent party’s percentage of the two-party vote by using ­independent variables such as: ■ Party in power. In our data, I use 1 to denote when the Republican party was in power and 0 to denote when the Democratic party was in power. ■ Percentage growth in GNP during the first nine months of the election year. ■ Absolute value of the inflation rate during the first nine months of the election year. You use the absolute value because either a positive or a negative inflation rate is bad. ■ Number of quarters during the last four years in which economic growth was strong. Strong economic growth is defined as growth at an annual level of 3.2 percent or more. ■ Length of time an incumbent party has been in office. Fair used 0 to denote one term in office, 1 for two terms, 1.25 for three terms, 1.5 for four terms, and 1.75 for five terms or more. This definition implies that each term after the first term in office has less influence on the election results than the first term in office. ■ Elections during wartime. The elections in 1920 (World War I), 1944 (World War II), and 1948 (World War II was still underway in 1945) were defined as wartime elections. (Elections held during the Vietnam War were not considered to be wartime elections.) During wartime years, the variables related to quarters of good growth and inflation were deemed irrelevant and were set to 0. ■ The current president running for re-election. If this is the case, this variable is set to 1; otherwise, this variable is set to 0. In 1976, Gerald Ford was not considered a president running for re-election because he was not elected either as president or as vice-president. Note The data comes from Roy Fair’s excellent book Predicting Presidential Elections and Other Things (Stanford University Press, 2002). Chapter 54 Incorporating Qualitative Factors into Multiple Regression 459 Figure 54-6 Presidential election data. I’ve attempted to use the data from the elections from 1880 through 2004 to develop a ­multiple regression equation that can be used to forecast future presidential elections. I saved the 2008 election as a “validation point.” When fitting a regression to data, it’s always a good idea to hold back some of your data for use in validating your regression equation. Holding back data allows you to determine whether your regression equation can do a good job of forecasting data it hasn’t seen. Any forecasting tool that poorly forecasts data it hasn’t seen should not be used to predict the future. To run the regression, click Data Analysis in the Analysis group on the Data tab, and then ­select the Regression tool in the Data Analysis dialog box. I used B16:B48 as the Input Y Range and C16:I48 as the Input X Range. I also selected the Labels option (row 6 contains ­labels). I placed the output in the Results worksheet, which you can see in Figure 54-7. Figure 54-7 Regression output for predicting presidential elections. 460 Microsoft Excel 2010: Data Analysis and Business Modeling In Figure 54-7, you can see that War? and President Running? have p-values greater than 0.15. Therefore, you should rerun the regression without these independent variables. The results of this regression are shown in worksheet Regressionfinal. In this worksheet, all ­remaining independent variables have p-values less than 0.15 and should be included in the final prediction equation. From the coefficients section in Figure 54-8, you can determine that the best equation to predict elections is given by the following (equation 2): Predicted presidential election percentage=51.69+.53GROWTH-.80ABSINF+.58GOODQUARTERS -3.48DURATION+3.18REP Figure 54-8 Final presidential election equation. The coefficients of the independent variables can be interpreted as follows (after adjusting for all other independent variables used in equation 2): ■ A 1 percent increase in the annual GNP growth rate during an election year is worth 0.53 percent to the incumbent party. ■ A 1 percent deviation from the ideal (0 percent inflation) costs the incumbent party 0.80 percent of the vote. ■ Every good quarter of growth during an incumbent’s term increases his (maybe her someday soon) vote by 0.58 percent. ■ Relative to having one term in office, the second term in office decreases the ­incumbent’s vote by 3.48 percent, and each later term decreases the incumbent’s vote by 0.25*(3.48 percent)=0.87 percent. ■ A Republican has a 3.18 percent edge over a Democrat. Sixty-three percent of the variation in the percentage received by an incumbent in a ­presidential election is explained by our independent variables. The standard error of 4.01 percent indicates that about 95 percent of our forecasts will be accurate within 8.02 percent. Chapter 54 Incorporating Qualitative Factors into Multiple Regression 461 From the residuals, shown in Figure 54-9, you can see that the only election outliers are the 1892 and 1904 elections. In 1892 the incumbent candidate (Benjamin Harrison) performed much worse than expected, while in 1904 the incumbent candidate (Theodore Roosevelt) performed much better than expected. Figure 54-9 Residuals from the presidential election equation. Is there an Excel function I can use to easily make forecasts from a multiple regression equation? It’s tedious to make forecasts using an equation such as equation 2, but the Excel TREND function makes it easy to generate forecasts from a multiple regression. You don’t even have to run a regression with the Data Analysis command. To illustrate the use of the TREND function, I’ll describe how to generate forecasts for the 1880 through 2008 elections using data from only the 1880 through 2004 elections. Begin by selecting the cell range (in this example, H17:H49 in the Modified data worksheet) where you want your forecasts to go. With the pointer in the first cell of this range (cell H17), enter the formula TREND(B17:B48,C17:G48,C17:G49). Next, press Ctrl+Shift+Enter. You’ll now see (see Figure 54-10) the forecast for each election, generated in cells H17:H49. Note that the forecast for the 2008 election (using data only through 2004) was that Barack Obama would receive 50.9 percent of the vote. This is fairly close to his actual percentage (53.5%.) 462 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 54-10 Residuals from presidential election equation. The TREND function is an example of an array function. I’ll provide a more complete ­discussion of array functions in Chapter 83, “Array Formulas and Functions.” For now, here is some background about array functions: ■ Before entering an array function, you must always select the cell range in which you want the results of the array function to be located. ■ Instead of pressing Enter to perform the calculation, you must press Ctrl+Shift+Enter to complete the entry of an array function. ■ After entering an array function, you’ll see a curly bracket in the formula bar when you select a cell in which the array function’s results are located. This bracket indicates that the results in the cell were computed with an array function. ■ You can’t modify data in any part of a range created by an array function. Note Problems that you can work with to learn more about multiple regression are available at the end of Chapter 55. Chapter 55 Modeling Nonlinearities and Interactions Questions answered in this chapter: ■ What does it mean when we say that an independent variable has a nonlinear effect on a dependent variable? ■ What does it mean when we say that the effects of two independent variables on a ­dependent variable interact? ■ How can I test for the presence of nonlinearity and interaction in a regression? Answers to This Chapter’s Questions What does it mean when we say that an independent variable has a nonlinear effect on a dependent variable? An independent variable often influences a dependent variable through a nonlinear ­relationship. For example, if you try to predict product sales using an equation such as Sales=500–10*Price, price influences sales linearly. This equation indicates that a unit increase in price will (at any price level) reduce sales by 10 units. If the relationship between sales and price were governed by an equation such as Sales=500+4*Price–.40*Price2, price and sales would be related nonlinearly. As shown in Figure 55-1, larger increases in price result in larger decreases in demand (see the Nonlinearity worksheet in the file Interactions.xlsx). In short, if the change in the dependent variable caused by a unit change in the independent variable is not constant, there is a nonlinear relationship between the independent and dependent variables. Figure 55-1 Nonlinear relationship between demand and price. 463 464 Microsoft Excel 2010: Data Analysis and Business Modeling What does it mean when we say that the effects of two independent variables on a ­dependent variable interact? If the effect of one independent variable on a dependent variable depends on the value of another independent variable, you can say that the two independent variables exhibit ­interaction. For example, suppose you try to predict sales using price and the amount spent on advertising. If the effect of changing the level of advertising dollars is large when the price is small and small when the price is high, price and advertising exhibit interaction. If the effect of changing the level of advertising dollars is the same for any price level, sales and price do not exhibit any interaction. How can I test for the presence of nonlinearity and interaction in a regression? To see whether an independent variable has a nonlinear effect on a dependent variable, you simply add an independent variable to the regression that equals the square of the independent variable. If the squared term has a low p-value (less than 0.15), you have evidence of a nonlinear relationship. To check whether two independent variables exhibit interaction, you simply add a term to the regression that equals the product of the independent variables. If the term has a low p-value (less than 0.15), you have evidence of interaction. To illustrate, let’s try to determine how gender and experience influence salaries at a small manufacturing company. For each employee, you are given the following set of data. You can find the information in the Data worksheet in the file Interactions.xlsx, shown in Figure 55-2. ■ Annual salary (in thousands of dollars) ■ Years of experience working in the manufacturing business ■ Gender (1=female, 0=male) We’ll use this data to predict salary (the dependent variable) based on years of experience and gender. To test whether years of experience has a nonlinear effect on salary, I added the term Experience Squared by copying from D2 to D3:D98 the formula B2^2. To test whether experience and gender have a significant interaction, I added the term Experience*Gender by copying from E2 to E3:E98 the formula B2*C2. I ran a regression with an Input Y Range of A1:A98 and an Input X Range of B1:E98. After selecting the labels option in the Regression dialog box and clicking OK, I got the results shown in Figure 55-3. Chapter 55 Modeling Nonlinearities and Interactions 465 Figure 55-2 Data for predicting salary based on gender and experience. Figure 55-3 Regression results that test for nonlinearity and interaction. You can see that gender is insignificant (its p-value is greater than 0.15). All other ­independent variables are significant (meaning they have a p-value less than or equal to 0.15). You can delete the insignificant gender variable as an independent variable. To do this, I copied the data into a new worksheet called FinalRegression (right-click any worksheet tab, click Move Or Copy, and then select the Create A Copy check box.) After deleting the Gender column, you obtain the regression results included in the FinalRegression worksheet and shown in Figure 55-4. 466 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 55-4 Regression results after deleting insignificant gender variable. All independent variables are now significant (have a p-value less than or equal to 0.15). Therefore, you can predict salary (in thousands of dollars) by using the following equation (equation 1): Predicted salary=59.06+.78(EXP)-.033EXP2–2.07(EXP*GENDER) The negative EXP2 term indicates that each additional year of experience has less impact on salary, which means that experience has a nonlinear effect on salary. In fact, this model shows that after 13 years of experience, each additional year of experience actually reduces salary. Remember that gender equals 1 for a woman and 0 for a man. After substituting 1 for ­gender in equation 1, a woman’s salary can be predicted as follows: Predicted salary=59.06+78EXP-.033EXP2 –2.07(EXP*1)=59.06-.033EXP2–1.29EXP For a man (substituting gender=0), the following equation can be used: Predicted salary=59.06+.78EXP-.033EXP2 –2.07(EXP*0)=59.06+.78EXP-.033EXP2 Thus, the interaction between gender and experience shows that each additional year of ­experience benefits a woman an average of 0.78–(–1.29)=$2,070 less than a man. This ­indicates that women are not being treated fairly. Chapter 55 Modeling Nonlinearities and Interactions 467 Problems for Chapters 53 Through 55 Fizzy Drugs wants to optimize the yield from an important chemical process. The company thinks that the number of pounds produced each time the process is run depends on the size of the container used, the pressure, and the temperature. The scientists involved believe the effect of changing one variable might depend on the values of other variables. The size of the process container must be between 1.3 and 1.5 cubic meters, pressure must be between 4 and 4.5 mm, and temperature must be between 22 and 30 degrees Celsius. The scientists patiently set up experiments at the lower and upper levels of the three control variables and obtain the data shown in the file Fizzy.xlsx. 1. Determine the relationship between yield, size, temperature, and pressure. 2. Discuss the interactions between pressure, size, and temperature. 3. What settings for temperature, size, and pressure would you recommend? Here are additional multiple regression problems: 4. For 12 straight weeks, you have observed the sales (in number of cases) of canned ­tomatoes at Mr. D’s Supermarket. (See the file Grocery.xlsx.) Each week, you keep track of the following: ❑ Was a promotional notice for canned tomatoes placed in all shopping carts? ❑ Was a coupon for canned tomatoes given to each customer? ❑ Was a price reduction (none, 1, or 2 cents off) given? Use this data to determine how the above factors influence sales. Predict sales of canned tomatoes during a week in which you use a shopping cart notice, a coupon, and reduce price by 1 cent. 5. The file Countryregion.xlsx contains the following data for several underdeveloped countries: ❑ Infant mortality rate ❑ Adult literacy rate ❑ Percentage of students finishing primary school ❑ Per capita GNP Use this data to develop an equation that can be used to predict infant mortality. Are there any outliers in this set of data? Interpret the coefficients in your equation. Within what value should 95 percent of your predictions for infant mortality be accurate? 468 Microsoft Excel 2010: Data Analysis and Business Modeling 6. The file Baseball96.xlsx gives runs scored, singles, doubles, triples, home runs, and ­bases stolen for each major league baseball team during the 1996 season. Use this data to determine the effects of singles, doubles, and other activities on run production. 7. The file Cardata.xlsx provides the following information for 392 different car models: ❑ Cylinders ❑ Displacement ❑ Horsepower ❑ Weight ❑ Acceleration ❑ Miles per gallon (MPG) Determine an equation that can be used to predict MPG. Why do you think all the ­independent variables are not significant? 8. The file Priceads.xlsx contains weekly unit sales of a product as well as the product price and advertising expenditures. Explain how advertising and product price influence unit sales. 9. The file Teams.xlsx contains runs scored, hit-by-pitcher, plus walks, singles, doubles, triples, and home runs for major league baseball teams during the 2000–2006 seasons. ❑ Use this data to build a model that predicts how many runs a team will score based on the team’s hitting statistics. ❑ How accurate is this model for predicting how many runs a team will score during a season? ❑ Suppose a team had a positive residual exceeding three times the regression’s standard error. What might cause such a result? 10. A hitter’s on-base percentage (OPS) is calculated as hit-by-pitcher + walks + hits/(at bats + hit-by-pitcher + walks+ sacrifice flies). A hitter’s slugging percentage (SLG) is total bases (home runs gets credit for four bases, triples get three, doubles, two, and singles, 1) divided by at bats. The file Opsslug.xlsx contains hitting data for major league teams during the 2000–2006 seasons. Use this data to build a model that can be used to predict runs scored by a team from a team’s OBP and SLG. ❑ Would you recommend a team use this model or the model from Problem 9 to predict runs scored? ❑ How could this model be used to evaluate individual player’s hitting abilities? ❑ Why might you be skeptical if this model was used to evaluate the hitting ability of a truly great hitter like Albert Pujols of the St. Louis Cardinals? Chapter 55 Modeling Nonlinearities and Interactions 469 11. The file NFlinfo.xlsx contains the following data for NFL teams during the 2003–2006 seasons: ❑ Margin = Number of points by which a team outscores their opponent. ❑ NYP/A = Yards gained passing per pass attempt. ❑ YR/A = Yard gained per rushing attempt. ❑ DNYP/A = Yards gained passing by opponents per pass attempt. ❑ DYR/A = Yards gained rushing by opponents per attempt. ❑ TO = Turnovers by team. ❑ DTO = Turnovers by a team’s opponents. Does this data indicate that passing or rushing effectiveness has more impact on team success? Around how many points does a turnover cost a team? Many football fans believe you need a good rushing attack to set up the passing game. Does this data give any support to that view? 12. The file Qbinfo.xlsx lists the famous quarterback ratings for NFL quarterbacks during the 2009 season. The quarterback rating is based on the quarterback’s completion ­percentage, percentage of passes that result in a touchdown, yards per pass attempt, and percentage of passes that are intercepted. ❑ Develop a formula to predict a quarterback’s rating based on his season statistics. ❑ How accurate are your predictions? Chapter 56 Analysis of Variance: One-Way ANOVA Questions answered in this chapter: ■ The owner of my company, which publishes computer books, wants to know whether the position of our books in the computer book section of bookstores influences sales. More specifically, does it really matter whether the books are placed in the front, back, or middle of the computer book section? ■ If I am determining whether populations have significantly different means, why is the technique called analysis of variance? ■ How can I use the results of one-way ANOVA for forecasting? Data analysts often have data about several different groups of people or items and want to determine whether the data about the groups differs significantly. Here are some examples: ■ Is there a significant difference in the length of time that four doctors keep mothers in the hospital after they give birth? ■ Does the production yield for a new drug depend on whether the size of the container in which the drug is produced is large, small, or medium? ■ Does the drop in blood pressure attained after taking one of four drugs depend on the drug taken? When you’re trying to determine whether the means in several sets of data that depend on one factor are significantly different, one-way analysis of variance, or ANOVA, is the correct tool to use. In the examples given above, the factors are the doctors, the container size, and the drug, respectively. In analyzing the data, you can choose between two hypotheses: ■ Null hypothesis, which indicates that the means of all groups are identical. ■ Alternative hypothesis, which indicates that there is a statistically significant difference between the groups’ means. To test these hypotheses in Microsoft Excel, you can use the Anova: Single Factor option in the Data Analysis dialog box. If the p-value computed by Excel is small (usually less than or equal to 0.15), you can conclude that the alternative hypothesis is true (the means are ­significantly different). If the p-value is greater than 0.15, the null hypothesis is true (the ­populations have identical means). Let’s look at an example. 471 472 Microsoft Excel 2010: Data Analysis and Business Modeling Answers to This Chapter’s Questions The owner of my company, which publishes computer books, wants to know whether the position of our books in the computer book section of bookstores influences sales. More specifically, does it really matter whether the books are placed in the front, back, or middle of the computer book section? The publishing company wants to know whether its books sell better when a display is set up in the front, back, or middle of the computer book section. Weekly sales (in hundreds) were monitored at 12 different stores. At five stores, the books were placed in the front; at four stores, in the back; and at three stores, in the middle. Resulting sales are contained in the Signif worksheet in the file Onewayanova.xlsx, which is shown in Figure 56-1. Does the data indicate that the location of the books has a significant effect on sales? Figure 56-1 Book sales data. You can assume that the 12 stores have similar sales patterns and are approximately the same size. This assumption allows you to use one-way ANOVA because you believe that at most one factor (the position of the display in the computer book section) is affecting sales. (If the stores were different sizes, you would need to analyze the data with two-way ANOVA, which I’ll discuss in Chapter 57, “Randomized Blocks and Two-Way ANOVA.”) To analyze the data, on the Data tab, click Data Analysis, and then select Anova: Single Factor. Fill in the dialog box as shown in Figure 56-2. Figure 56-2 Anova: Single Factor dialog box. Chapter 56 Analysis of Variance: One-Way ANOVA 473 I used the following configurations: ■ The data for our input range, including labels, is in cells B3:D8. ■ Select the Labels In First Row option because the first row of the input range contains labels. ■ I selected the Columns option because the data is organized in columns. ■ I selected C12 as the upper-left cell of the output range. ■ The selected alpha value is not important. You can use the default value. After clicking OK, you obtain the results shown in Figure 56-3. Figure 56-3 One-way ANOVA results. In cells F16:F18, you see average sales depending on the location of the display. When the display is at the front of the computer book section, average sales are 900; when the display is at the back of the section, sales average 1,400; and when the display is in the middle, sales average 1,100. Because the p-value of 0.003 (in cell H23) is less than 0.15, you can conclude that these means are significantly different. If I am determining whether populations have significantly different means, why is the technique called analysis of variance? Suppose that the data in our book sales study is the data shown in the worksheet named Insig, shown in Figure 56-4 (and also in the file Onewayanova.xlsx). If you run a one-way ANOVA on this data, you obtain the results shown in Figure 56-5. Figure 56-4 Book store data for which the null hypothesis is accepted. 474 Microsoft Excel 2010: Data Analysis and Business Modeling Note that the mean sales for each part of the store are exactly as before, yet the p-value of .66 indicates that you should accept the null hypothesis and conclude that the position of the display in the computer book section doesn’t affect sales. The reason for this strange result is that in the second data set, you have much more variation in sales when the display is at each position in the computer book section. In the first data set, for example, the variation in sales when the display is at the front is between 700 and 1,100, whereas in the second data set, the variation in sales is between 200 and 2,000. The variation of sales within each store position is measured by the sum of the squares of data within a group. This measure is shown in cell D24 in the first data set and in cell F24 in the second. In the first data set, the sum of squares of data within groups is only 22, whereas in the second data set, the sum of squares within groups is 574! This large variation within the data points at each store position masks the variation between the groups (store positions) themselves and makes it impossible to conclude for the second data set that the difference between sales in different store positions is significant. Figure 56-5 Anova results accepting the null hypothesis. How can I use the results of a one-way ANOVA for forecasting? If there is a significant difference between group means, the best forecast for each group is simply the group’s mean. Therefore, in the first data set, you predict the following: ■ Sales when the display is at the front of the computer book section will be 900 books per week. ■ Sales when the display is at the back will be 1,400 books per week. ■ Sales when the display is in the middle will be 1,100 books per week. If there is no significant difference between the group means, your best forecast for each ­observation is simply the overall mean. Thus, in the second data set, you predict weekly sales of 1,117, independent of where the books are placed. Chapter 56 Analysis of Variance: One-Way ANOVA 475 You can also estimate the accuracy of your forecasts. The square root of the Within Groups MS (mean square) is the standard deviation of the forecasts from a one-way ANOVA. As shown in Figure 56-6, the standard deviation of forecasts for the first data set is 156 (see the Signif worksheet again). By the rule of thumb, this means that you would expect, for example: ■ During 68 percent of all the weeks in which books are placed at the front of the computer section, sales will be between 900–156=744 and 900+156=1,056 books. ■ During 95 percent of all weeks in which books are placed at the front of the computer book section, sales will be between 900–2(156)=588 books and 900+2(156)=1,212 books. Figure 56-6 Computation of forecast standard deviation. Problems You can find the data for the following problems in the file Chapter56data.xlsx. 1. For patients of four cardiologists, you are given the number of days the patients stayed in the hospital after open-heart surgery. ❑ Is there evidence that the doctors have different discharge policies? ❑ You are 95 percent sure that a patient of Doctor 1 will stay in the hospital between what range of days? 476 Microsoft Excel 2010: Data Analysis and Business Modeling 2. A drug can be produced by using a 400-degree, 300-degree, or 200-degree oven. You are given the pounds of the drug yielded when various batches are baked at different temperatures. ❑ Does temperature appear to influence the process yield? ❑ What is the range of pounds of the product that you are 95 percent sure will be produced with a 200-degree oven? ❑ If you believe that pressure within the container also influences process yield, does this analysis remain valid? Chapter 57 Randomized Blocks and Two-Way ANOVA Questions answered in this chapter: ■ I am trying to analyze the effectiveness of my sales force. The problem is that in ­addition to a sales representative’s effectiveness, the amount that a representative sells depends on the district to which he or she is assigned. How can I incorporate the ­district assignments of my representatives into my analysis? ■ Based on my knowledge of sales representatives and districts, how can I forecast sales? How accurate are my sales forecasts? ■ How can I determine whether varying the price and the amount of advertising affects the sales of a video game? How can I determine whether price and advertising interact significantly? ■ How can I interpret the effects of price and advertising on sales when there is the ­absence of significant interaction between price and advertising? In many sets of data, two factors can influence a dependent variable. Here are some examples. Factors Dependent variable Sales representative and district assignment Sales Product price and advertising expenditure Sales Temperature and pressure Production yield Surgeon and brand of stent used Health of patient after open-heart surgery When two factors might influence a dependent variable, randomized blocks or two-way analysis of variance (ANOVA) can be used to determine which, if any, of the factors have a significant influence on the dependent variable. With two-way ANOVA, you can also determine whether two factors exhibit a significant interaction. For example, suppose you are trying to predict sales by using product price and advertising budget. Price and advertising interact significantly if the effect of advertising depends on the product price. In a randomized block model, you observe each possible combination of factors exactly once. You can’t test for interactions in a randomized block design. In a two-way ANOVA model, you observe each combination of factors the same number of times (call it k). In this case, k must be greater than 1. In a two-way ANOVA model, you can easily test for interactions. 477 478 Microsoft Excel 2010: Data Analysis and Business Modeling Answers to This Chapter’s Questions I am trying to analyze the effectiveness of my sales force. The problem is that in ­addition to a sales representative’s effectiveness, the amount that a representative sells ­depends on the district to which he or she is assigned. How can I incorporate the district ­assignments of my representatives into my analysis? Suppose you want to determine how a sales representative and the sales district to which the representative is assigned influence product sales. To answer the question in this example, you can have each of four sales reps spend a month selling in each of five sales districts. The resulting sales are given in the Randomized Blocks worksheet in the file Twowayanova.xlsx and shown in Figure 57-1. For example, Rep 1 sold 20 units during the month she was ­assigned to District 4. Figure 57-1 Data for the randomized blocks example. This model is called a two-way ANOVA without replication because two factors (district and sales representative) can potentially influence sales, and you have only a single instance ­pairing each representative with each district. This model is also called a randomized block design because you’d like to randomize (chronologically) the assignment of representatives to districts. In other words, you’d like to ensure that the month during which Rep 1 is assigned to District 1 is equally likely to be the first, second, third, fourth, or fifth month. This randomization hopefully lessens the effect of time (a representative presumably becomes better over time) on your analysis; in a sense, you are “blocking” the effect of districts when you try to compare sales representatives. To analyze this data in Microsoft Excel, click Data Analysis on the Data tab, and then select the Anova: Two-Factor Without Replication option. Then fill in the dialog box as shown in Figure 57-2. I used the following information to set up this analysis: ■ The input range data is in cells C5:G10. ■ I selected Labels because the first row of the input range contains labels. ■ I entered B12 as the upper-left cell of the output range. ■ The alpha value is not important. You can use the default value. Chapter 57 Randomized Blocks and Two-Way ANOVA 479 Figure 57-2 Anova: Two-Factor Without Replication dialog box for setting up a randomized blocks model. The output you obtain is shown in Figure 57-3. (The results in cells G12:G24 were not created by the Excel Data Analysis feature. I entered formulas in those cells, as I’ll explain later in the chapter.) Figure 57-3 Randomized blocks output. To determine whether the row factor (districts) or column factor (sales representatives) has a significant effect on sales, just look at the p-value. If the p-value for a factor is low (less than .15), the factor has a significant effect on sales. The row p-value (.0000974) and column p-value (.024) are both less than .15, so both the district and the representative have a ­significant effect on sales. 480 Microsoft Excel 2010: Data Analysis and Business Modeling Based on my knowledge of sales representatives and districts, how can I forecast sales? How accurate are my sales forecasts? How should you predict product sales? You can predict sales during a month by using ­equation 1, shown here: Predicted sales=Overall average+(Rep effect)+(District effect) In this equation, Rep effect equals 0 if the sales rep factor is not significant. If the sales rep factor is significant, Rep effect equals the mean for the given rep minus the overall average. Likewise, District effect equals 0 if the district factor is not significant. If the district factor is significant, District effect equals the mean for the given district minus the overall average. I computed the overall average (17.6) in cell G12 by using the formula AVERAGE(D6:G10). The representative and district effects are computed by copying from cell G15 to G16:G24 the formula E15–$G$12. As an example, you can compute predicted sales by Rep 4 in District 2 as 17.6–2.85+3.6=18.35. This value is computed in cell D38 (see Figure 57-4) with the formula G12+G16+G24. If the district effect is significant and the sales representative effect is not, predicted sales for Rep 4 in District 2 would be 17.6–2.85=14.75. Figure 57-4 Forecast for sales in District 2 by sales Rep 4. As in one-way ANOVA, the standard deviation of the forecast errors is the square root of the mean square error shown in cell E31. I computed this standard deviation in cell E32 with the formula SQRT(E31). Thus, you can be 95 percent sure that if Rep 4 is assigned to District 2, monthly sales will be between 18.35–2(3.99)=10.37 and 18.35+2(3.99)=26.33. These limits are computed in cell D39 and D40 with the formulas D38–2*E32 and D38+2*E32, respectively. How can I determine whether varying the price and the amount of advertising affects the sales of a video game? How can I determine whether price and advertising interact significantly? When you have more than one observation for each combination of the row and column factors, you have a two-factor ANOVA with replication. To perform this sort of analysis, Excel requires that you have the same number of observations for each row-and-column combination. In addition to testing for the significance of the row and column factors, you can also test for significant interaction between them. For example, if you want to understand how price and advertising affect sales, an interaction between price and advertising would indicate that the Chapter 57 Randomized Blocks and Two-Way ANOVA 481 effect of an advertising change would depend on the price level (or equivalently, the effect of a price change would depend on the advertising level). A lack of interaction between price and advertising would mean that the effect of a price change would not depend on the level of advertising. As an example of two-factor ANOVA with replication, suppose you want to determine how price and advertising level affect the monthly sales of a video game. In the Two Way ANOVA No Interaction worksheet in the file Twowayanova.xlsx, you can find the data shown in Figure 57-5. During the three months in which advertising was low and price was medium, for e ­ xample, 21, 20, and 16 units were sold. Figure 57-5 Video game sales data; no interaction. Notice that for each price/advertising combination, there are exactly three observations. In cell D1, I computed the overall average (25.037) of all observations with the formula AVERAGE(D4:F12). In cells G4, G7, and G10, I computed the effect for each level of advertising. For example, the effect of having a low level of advertising equals the average for low advertising minus the overall average. In cell G4, I computed the low advertising effect of –5.59 with the formula AVERAGE(D4:F6)–$D$1. In a similar fashion, I computed the effect of each price level by copying from D13 to E13:F13 the formula AVERAGE(D4:D12)–$D$1. To analyze this data, click Data Analysis on the Data tab, and then select Anova: TwoFactor With Replication in the Data Analysis dialog box. Fill in the dialog box as shown in Figure 57-6. Figure 57-6 Anova: Two-Factor With Replication dialog box for running a two-factor ANOVA with replication. 482 Microsoft Excel 2010: Data Analysis and Business Modeling I used the following information to set up the analysis: ■ The input range data, including labels, is in C3:F12. In two-way ANOVA with replication, Excel requires a label for each level of the column effect in the first row of each column in the input range. Thus, I entered Low, Medium, and High in cells D3:F3 to indicate the possible price levels. Excel also requires a label for each level of the row effect in the first column of the input range. These labels must appear in the row that marks the ­beginning of the data for each level. Thus, I placed labels corresponding to low, ­medium, and high levels of advertising in cells C4, C7, and C10. ■ In the Rows Per Sample box, I entered 3 because we have three replications for each combination of price and advertising level. ■ The upper-left cell of our output range is B14. The only important portion of the output is the ANOVA table, which is shown in Figure 57-7. Figure 57-7 Two-way ANOVA with replication output; no interaction. As with randomized blocks, an effect (including interactions) is significant if it has a p-value that’s less than .15. Here, Sample (this is the row for advertising effect) and Price (shown in the row labeled Columns) are highly significant and also there is no significant interaction. (The interaction p-value is .79!) Therefore, you can conclude that price and advertising ­influence sales and that the effect of advertising on sales does not depend on the price level. Figure 57-8 graphically demonstrates the fact that price and advertising do not exhibit a ­significant interaction. (See the Graph No Interaction worksheet.) Figure 57-8 Price and advertising do not interact in this data set. Chapter 57 Randomized Blocks and Two-Way ANOVA 483 Notice that as advertising increases, sales increase at roughly the same rate, whether the price level is low, medium, or high. How can I interpret the effects of price and advertising on sales when there is an absence of significant interaction between price and advertising? In the absence of a significant interaction, you can forecast sales in a two-factor ANOVA with replication in the same way that you do in a two-factor ANOVA without replication. Here’s the equation to use (equation 2): Predicted sales=Overall average+[Row or advertising effect(if significant)] +[Column or price effect(if significant)] This analysis assumes that price and advertising are the only factors that affect sales. If sales are highly seasonal, seasonality would need to be incorporated into the analysis. (I’ll discuss seasonality in Chapter 59, “Winters’s Method,” and Chapter 61, “Forecasting in the Presence of Special Events.”) For example, when price is high and advertising is medium, predicted sales are given by 25.037+(–1.814)+(–8.704)=14.52. (See cell E54 in Figure 57-9, which shows the Two Way ANOVA No Interaction worksheet again.) In Figure 57-5, shown earlier, you can see that the overall average is equal to 25.037, the medium advertising effect equals –1.814, and the high price effect =–8.704. Figure 57-9 Forecasts for sales with high price and medium advertising. The standard deviation of the forecast errors equals the square root of our mean squared within error. 29.78 = 5.46 You can be 95 percent sure that the forecast is accurate within 10.92 units. In other words, you are 95 percent sure that sales during a month with high price and medium advertising will be between 3.60 and 25.43 units. 484 Microsoft Excel 2010: Data Analysis and Business Modeling In the Two Way ANOVA with Interaction worksheet, I changed the data from the ­previous ­example to the data shown in Figure 57-10. After running the analysis for a two-factor ANOVA with replication, I obtained the results shown in Figure 57-11. Figure 57-10 Sales data with interaction between price and advertising. Figure 57-11 Output for the two-factor ANOVA with interaction. In this data set, the p-value for interaction is .001. When you see a low p-value (less than .15) for interaction, you do not even check p-values for row and column factors. You simply ­forecast sales for any price and advertising combination to equal the mean of the three ­observations involving that price and advertising combination. For example, the best forecast for sales during a month with high advertising and medium price is: 34 + 40 + 32 106 = = 35.555 units 4 3 The standard deviation of forecast errors is again the square root of the mean square within ( 17.11 = 4.14) Thus, you can be 95 percent sure that the sales forecast is accurate within 8.26 units. Chapter 57 Randomized Blocks and Two-Way ANOVA 485 Figure 57-12 illustrates why this data exhibits a significant interaction between price and advertising. For a low and medium price, increased advertising increases sales, but if price is high, increased advertising has no effect on sales. This explains why you cannot use ­equation 2 to forecast sales when a significant interaction is present. After all, how can you talk about an advertising effect when the effect of advertising depends on the price? Figure 57-12 Price and advertising exhibit a significant interaction in this set of data. Problems The data for the following problems is in the file Ch57.xlsx. 1. You believe that pressure (high, medium, or low) and temperature (high, medium, or low) influence the yield of a production process. Given this theory, determine the answers to the following problems: ❑ Use the data in the Problem 1 worksheet to determine how temperature and/or pressure influence the yield of the process. ❑ With high pressure and low temperature, you’re 95 percent sure that process yield will be in what range? 2. You are trying to determine how the particular sales representative and the number of sales calls (one, three, or five) made to a doctor influence the amount (in thousands of dollars) that each doctor prescribes of your drug. Use the data in the Problem 2 worksheet to determine the answers to the following problems: ❑ How do the representative and number of sales calls influence sales volume? ❑ If Rep 3 makes five sales calls to a doctor, you’re 95 percent sure she will generate prescriptions within what range of dollars? 3. Answer the questions in Problem 2 by using the data in the Problem 3 worksheet. 4. The file Coupondata.xlsx contains information on sales of peanut butter for weeks when a coupon was given out (or not) and advertising was done (or not) in the Sunday paper. Describe how the coupon and advertising influence peanut butter sales. Chapter 58 Using Moving Averages to Understand Time Series Question answered in this chapter: ■ I’m trying to analyze the upward trend in quarterly revenues of Amazon.com since 1996. Fourth quarter sales in the U.S. are usually larger (because of Christmas) than sales during the first quarter of the following year. This pattern obscures the upward trend in sales. Is there any way that I can graphically show the upward trend in revenues? Answers to This Chapter’s Question Time series data simply displays the same quantity measured at different points in time. For example, the data in the file Amazon.xlsx, a subset of which is shown in Figure 58-1, displays the time series for quarterly revenues in millions of dollars for Amazon.com. The data covers the time interval from the fourth quarter of 1995 through the third quarter of 2009. To graph this time series, select the range C2:D59, which contains the quarter number (the first quarter is Quarter 1 and the last is Quarter 57) and Amazon quarterly revenues (in ­millions of dollars). Then choose Chart on the Insert tab, and choose the second option under the Scatter chart type. (Scatter with Smooth Lines and Markers.) The time series plot is shown in Figure 58-2. Figure 58-1 Quarterly revenues for Amazon sales. 487 488 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 58-2 Time series plot of quarterly toy revenues. There is an upward trend in revenues, but the fact that fourth quarter revenues dwarf ­revenues during the first three quarters of each year makes it hard to spot the trend. Because there are four quarters per year, it would be nice to graph average revenues during the last four quarters. This is called a four- period moving average. Using a four-quarter moving a ­ verage smooths out the seasonal influence because each average will contain one data point for each quarter. Such a graph is called a moving average graph because the plotted average “moves” over time. Moving average graphs also smooth out random variation, which helps you get a better idea of what is going on with your data. To create a moving average graph of quarterly revenues, you can modify the chart. Select the graph, and then click a data point until all the data points are displayed in blue. Right-click any point, click Add Trendline, and then select the Moving Average option. Set the period equal to 4. Microsoft Excel now creates the four-quarter moving average trend curve that’s shown in Figure 58-3. (See the file Amazonma.xlsx.) For each quarter, Excel plots the average of the current quarter and the last three quarters. Of course, for a four-quarter moving average, the moving average curve starts with the fourth data point. The moving average curve makes it clear that Amazon.com’s revenues had a steady upward trend. In fact the slope of the four-quarter moving average appears to be increasing. In all likelihood , the slope of this moving average graph will eventually level off, resulting in a graph that looks like an S curve. The Excel Trend Curve feature cannot fit S curves, but the Excel 2010 Solver can be used to fit S curves to data. Chapter 58 Using Moving Averages to Understand Time Series 489 Figure 58-3 Four-quarter moving average trend curve. Problem ■ The file Ch58data.xlsx contains quarterly revenues for GM, Ford, and GE. Construct a four-quarter moving average trend curve for each company’s revenues. Describe what you learn from each trend curve. Chapter 59 Winters’s Method You often need to predict future values of a time series, such as monthly costs or monthly product revenues. This is usually difficult because the characteristics of any time ­series are constantly changing. Smoothing or adaptive methods are usually best suited for ­forecasting future values of a time series. In this chapter, I describe the most p ­ owerful smoothing method: Winters’s method. To help you understand how Winters’s method works, I’ll use it to forecast monthly housing starts in the United States. Housing starts are simply the number of new homes whose construction begins during a month. I’ll begin by ­describing the three key characteristics of a time series. Time Series Characteristics The behavior of most time series can be explained by understanding three characteristics: base, trend, and seasonality. ■ The base of a series describes the series’ current level in the absence of any seasonality. For example, suppose the base level for U.S. housing starts is 160,000. In this case, you can believe that if the current month were an average month relative to other months of the year, 160,000 housing starts would occur. ■ The trend of a time series is the percentage increase per period in the base. Thus, a trend of 1.02 means that you estimate that housing starts are increasing by 2 percent each month. ■ The seasonality (seasonal index) for a period tells you how far above or below a t­ ypical month you can expect housing starts to be. For example, if the December seasonal index is .8, then December housing starts are 20 percent below a typical month. If the June seasonal index is 1.3, then June housing starts are 30 percent higher than a typical month. Parameter Definitions paAfter observing month t, you will have used all data observed through the end of month t to estimate the following quantities of interest: ■ Lt=Level of series ■ Tt=Trend of series ■ St=Seasonal index for current month 491 492 Microsoft Excel 2010: Data Analysis and Business Modeling The key to Winters’s method is the following three equations, which are used to update Lt, Tt, and St. In the following formulas, alp, bet, and gam are called smoothing parameters. You choose the values of these parameters to optimize forecasts. In the following formulas, c equals the number of periods in a seasonal cycle (c=12 months, for example) and xt equals the observed value of the time series at time t. ■ Formula 1: Lt=alp(xt /st–c)+(1–alp)(Lt–1*Tt–1) ■ Formula 2: Tt=bet(Lt /Lt–1)+(1–bet)Tt–1 ■ Formula 3: St=gam(xt /Lt)+(1–gam)st-c Formula 1 indicates that the new base estimate is a weighted average of the current ­observation (deseasonalized) and the last period’s base updated by the last trend estimate. Formula 2 indicates that the new trend estimate is a weighted average of the ratio of the ­current base to the last period’s base (this is a current estimate of trend) and the last p ­ eriod’s trend. Formula 3 indicates that you update your seasonal index estimate as a weighted ­average of the estimate of the seasonal index based on the current period and the previous estimate. Note that larger values of the smoothing parameters correspond to putting more weight on the current observation. You can define Ft,k as your forecast (F) after period t for the period t+k. This results in the ­formula Ft,k=Lt*(Tt)k st+k–c. (I refer to this as formula 4.) This formula first uses the current trend estimate to update the base k periods forward. Then the resulting base estimate for period t+k is adjusted by the appropriate seasonal index. Initializing Winters’s Method To start Winters’s method, you must have initial estimates for the series base, trend, and seasonal indexes. I used monthly housing starts for the years 1986 and 1987 to i­nitialize Winters’s method. Then I chose smoothing parameters to optimize one-month-ahead ­forecasts for the years 1988 through 1996. See Figure 59-1 and the file House2.xlsx. Here are the steps I followed. Chapter 59 Winters’s Method 493 Figure 59-1 Initialization of Winters’s method. Step 1 I estimated, for example, the January seasonal index as the average of January ­housing starts for 1986 and 1987 divided by the average monthly starts for 1986 and 1987. Therefore, copying from G14 to G15:G25 the formula =AVERAGE(B2,B14)/AVERAGE($B$2:$B$25) generates the estimates of seasonal indexes. For example, the January estimate is 0.75 and the June estimate is 1.17. Step 2 To estimate the average monthly trend, I took the twelfth root of the 1987 mean starts divided by the 1986 mean starts. I computed this in cell J3 (and copied it to cell D25) with the formula =(J1/J2)^(1/12). Step 3 Going into January 1987, I estimated the base of the series as the deseasonalized December 1987 value. This was computed in C25 with the formula =(B25/G25). Estimating the Smoothing Constants Now I’m ready to estimate smoothing constants. In column C, I will update the series base; in column D, the series trend; and in column G, the seasonal indexes. In column E, I compute the forecast for next month, and in column F, I compute the absolute percentage error for each month. Finally, I use the Solver to choose values for the smoothing constants that ­minimize the sum of the absolute percentage errors. Here’s the process. Step 1 In G11:I11, I enter trial values (between 0 and 1) for the smoothing constants. Step 2 In C26:C119, I compute the updated series level with formula 1 by copying from C26 to C27:C119 the formula =alp*(B26/G14)+(1–alp)*(C25*D25). 494 Microsoft Excel 2010: Data Analysis and Business Modeling Step 3 In D26:D119, I use formula 2 to update the series trend, copying from D26 to D27:D119 the formula =bet*(C26/C25)+(1–bet)*D25. Step 4 In G26:G119, I use formula 3 to update the seasonal indexes, copying from G26 to G27:G119 the formula =gam*(B26/C26)+(1–gam)*G14. Step 5 In E26:E119, I use formula 4 to compute the forecast for the current month by ­copying from E26 to E27:E119 the formula =(C25*D25)*G14. Step 6 In F26:F119, I compute the absolute percentage error for each month by copying from F26 to F27:F119 the formula =ABS(B26-E26)/B26. Step 7 I compute the average absolute percentage error for the years 1988 through 1996 in F21 with the formula =AVERAGE(F26:F119). Step 8 Now I use Solver to determine smoothing parameter values that minimize the ­average absolute percentage error. The Solver Parameters dialog box is shown in Figure 59-2. Figure 59-2 Solver Parameters dialog box for Winters’s model. I used smoothing parameters (G11:I11) to minimize the average absolute percentage error (cell F21). The Solver ensures that you find the best combination of smoothing constants. Smoothing constants must be between 0 and 1. Here, alp=.50, bet=.01, and gam=.27 ­minimizes the average absolute percentage error. You might find slightly different values for the smoothing constants, but you should obtain a mean absolute percentage error (MAPE) close to 7.3 percent. In this example, there are many combinations of the smoothing ­constants that give forecasts having approximately the same MAPE. Our one-month-ahead forecasts are off by an average of 7.3 percent. Chapter 59 Winters’s Method 495 Remarks ■ Instead of choosing smoothing parameters to optimize one-period forecast errors, you could, for example, choose to optimize the average absolute percentage error incurred in forecasting total housing starts for the next six months. ■ If at the end of month t you want to forecast sales for the next four quarters, you would simply add f t,1+f t,2+f t,3+f t,4. If you want, you could choose smoothing parameters to minimize the absolute percentage error incurred in estimating sales for the next year. Problems All the data for the following problems is in the file Quarterly.xlsx. 1. Use Winters’s method to forecast one-quarter-ahead revenues for Apple. 2. Use Winters’s method to forecast one-quarter-ahead revenues for Amazon.com. 3. Use Winters’s method to forecast one-quarter-ahead revenues for Home Depot. 4. Use Winters’s method to forecast total revenues for the next two quarters for Home Depot. Chapter 60 Ratio-to-Moving-Average Forecast Method Questions answered in this chapter: ■ What is the trend of a time series? ■ How do I define seasonal indexes for a time series? ■ Is there an easy way to incorporate trend and seasonality into forecasting future ­product sales? Often you need a simple, accurate method to predict future quarterly revenues of a ­corporation or future monthly sales of a product. The ratio-to-moving-average method ­provides an accurate, easy-to-use forecasting method for these situations. In the file Ratioma.xlsx, you are given sales of a product during 20 quarters (shown later in Figure 60-1 in rows 5 through 24), and you want to predict sales during the next four ­quarters (quarters 21-24). This time series has both trend and seasonality. Answers to This Chapter’s Questions What is the trend of a time series? A trend of 10 units per quarter means, for example, that sales are increasing by 10 units per quarter, while a trend of -5 units per quarter means that sales tend to decrease 5 units per quarter. How do I define seasonal indexes for a time series? We know that Walmart sees a large increase in its sales during the fourth quarter (because of the holiday season.) If you do not recognize this, you would have trouble coming up with good forecasts of quarterly Walmart revenues. The concept of seasonal indexes helps you better understand a company’s sales pattern. The quarterly seasonal indexes for Walmart revenues are as follows: ■ Quarter 1 (January through March): .90 ■ Quarter 2 (April through June): .98 ■ Quarter 3 (July through September): .96 ■ Quarter 4 (October through December): 1.16 497 498 Microsoft Excel 2010: Data Analysis and Business Modeling These indexes imply, for example, that sales during a fourth quarter are typically 16 percent higher than sales during an average quarter. Seasonal indexes must average out to 1. To see whether you understand seasonal indexes, try and answer the following q ­ uestion: Suppose that during Quarter 4 of 2013 Walmart has sales of $200 billion, and during Quarter 1 of 2014 Walmart has sales of $180 billion. Are things getting better or worse for Walmart? The key idea here is to deseasonalize sales and express each quarter’s sales in terms of an average quarter. For example, the Quarter 4 2013 sales are equivalent to selling 200/1.16 = $172.4 billion in an average quarter, and the Quarter 1 2014 sales are equivalent to s­ elling 180/.9 = $200 billion in an average quarter. Thus, even though Walmart’s actual sales ­decreased 10 percent, sales appear to be increasing by (200/172.4) – 1 = 16 percent per quarter. This simple example shows how important it is to understand your company’s or product’s seasonal indexes. Is there an easy way to incorporate trend and seasonality into forecasting future product sales? Now let’s turn to the simple ratio-to-moving-average forecasting method. This technique enables you to easily estimate a time series’ trend and seasonal indexes and makes it easy to generate forecasts of future values of the time series. The work I did for this question is shown in Figure 60-1 and the file Ratioma.xlsx. Figure 60-1 Data for the ratio-to-moving-average example. You begin by trying to estimate the deseasonalized level of the series during each period (using centered moving averages). Then you can fit a trend line to your deseasonalized ­estimates (in column G). Next you determine the seasonal index for each quarter. Finally, you estimate the future level of the series by extrapolating the trend line and then predict future sales by reseasonalizing the trend line estimate. Chapter 60 Ratio-to-Moving-Average Forecast Method 499 ■ Calculating moving averages To begin, compute a four-quarter moving a ­ verage (four quarters eliminates seasonality) for each quarter by averaging the prior quarter, the current quarter, and the next two quarters. To do this, copy from F6 to F7:F22 the formula AVERAGE(E5:E8). For example, for Quarter 2, the moving average is .25*(24+44+61+79) = 52. ■ Calculating centered moving averages The moving average for Quarter 2 is ­centered at Quarter 2.5, while the moving average for Quarter 3 is centered at Quarter 3.5. Averaging these two moving averages gives a centered moving average, which ­estimates the level of the process at the end of Quarter 3. Copying from cell G7 the formula AVERAGE(F6:F7) gives you an estimate of the level of the series during each series—without seasonality! ■ Fitting a trend line to the centered moving averages You use the centered moving averages to fit a trend line that can be used to estimate the future level of the series. In F1, I use the formula SLOPE(G7:G22,B7:B22) to find the slope of the trend line, and in cell F2 I use the formula INTERCEPT(G7:G22,B7:B22) to find the intercept of the trend line. You can now estimate the level of the series during Quarter t to be 6.94t+ 30.17. Copying from G25 to G26:G28 the formula Intercept + Slope*B23 ­computes the e ­ stimated level of the series from Quarter 21 onward. ■ Computing the seasonal indexes Recall that a seasonal index of, say, 2 for a quarter means sales in that quarter are twice sales during an average quarter, and a seasonal index of .5 for a quarter means that sales during that quarter are half of an average quarter. To determine the seasonal indexes, begin by calculating for each quarter for which you have sales actual sales/centered moving average. To do this, copy from cell H7 to H8:H22 the formula =E7/G7. You’ll see, for example, that during each first ­quarter, sales were 77, 71, 90, and 89 percent of average, so you can estimate the ­seasonal index for Quarter 1 as the average of these four numbers (82 percent). To ­calculate the initial seasonal index estimates, copy from cell K5 to K6:K8 the formula AVERAGEIF($D$7:$D$22,J3,$H$7:$H$22). This formula averages the four estimates you have for Quarter 1 seasonality. Unfortunately, the seasonal indexes do not average exactly to 1. To ensure that the final seasonal indexes average to 1, copy from L3 to L4:L6 the formula K3/AVERAGE($K$3:$K$6). ■ Forecasting sales during Quarters 21–24 To create the sales forecast for each future quarter, you simply multiply the trend line estimate for the quarter’s level (from column G) by the appropriate seasonal index. Copying from cell G25 to G26:G28 the formula VLOOKUP(D25,season,3)*G25 computes the final forecast for Quarters 21–24. 500 Microsoft Excel 2010: Data Analysis and Business Modeling If you think the trend of the series has changed recently, you can estimate the s­ eries’ trend based on more recent data. For example, you could use the centered ­moving averages for Quarters 13–18 to get a more recent trend estimate with the formula SLOPE(G17:G22,B17:B22). This yields an estimated trend of 8.09 units per quarter. If you want to forecast Quarter 22 sales, for example, you would take the last centered moving average you have (from Quarter 18) of 160.13 and add 4(8.09) to estimate the level of the series in Quarter 22. Then multiplying by the Quarter 2 seasonal index of .933 yields a final forecast for Quarter 22 sales of (160.13+4(8.09))*(.933) = 179.6 units. Problem 1. The file Walmartdata.xlsx contains quarterly revenues of Walmart during the years 1994–2009. Use the ratio-to-moving-average method to forecast revenues for Quarters 3 and 4 in 2009 and Quarters 1 and 2 of 2010. Use Quarters 53–60 to create a trend estimate that you use in your forecasts. Chapter 61 Forecasting in the Presence of Special Events Questions answered in this chapter: ■ How can I determine whether specific factors influence customer traffic? ■ How can I evaluate forecast accuracy? ■ How can I check whether my forecast errors are random? For a student project, a class and I attempted to forecast the number of customers visiting the Eastland Plaza Branch of the Indiana University (IU) Credit Union each day. Interviews with the branch manager made it clear that the following factors affected the number of customers: ■ Month of the year ■ Day of the week ■ Whether the day was a faculty or staff payday ■ Whether the day before or the day after was a holiday Answers to This Chapter’s Questions How can I determine whether specific factors influence customer traffic? The data collected is contained in the Original worksheet in the file Creditunion.xlsx, shown in Figure 61-1. If you try to run a regression on this data by using dummy variables (as ­described in Chapter 54, “Incorporating Qualitative Factors into Multiple Regression”), the dependent variable would be the number of customers arriving each day (the data in ­column E). You would need 19 independent variables: ■ Eleven to account for the month (12 months minus 1) ■ Four to account for the day of the week (5 business days minus 1) ■ Two to account for the types of paydays that occur each month ■ Two to account for whether a particular day follows or precedes a holiday Microsoft Excel 2010 allows only 15 independent variables, so it appears that you’re in trouble. 501 502 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 61-1 Data used to predict credit union customer traffic. When a regression forecasting model requires more than 15 independent variables, you can use the Excel Solver to estimate the coefficients of the independent variables. You can also use Excel to compute the R-squared values between forecasts and actual customer traffic and the standard deviation for the forecast errors. To analyze this data, I created a forecasting equation by using a lookup table to locate the day of the week, the month, and other factors. Then I used Solver to choose the coefficients for each level of each factor that yields the minimum sum of squared errors. (Each day’s error equals actual customers minus ­forecasted customers.) Here are the particulars. I began by creating indicator variables (in columns G through J) for whether the day is a staff payday (SP), faculty payday (FAC), before a holiday (BH), or after a holiday (AH). (See Figure 61-1.) For example, in cells G4, H4, and J4, I entered 1 to indicate that January 2 was a staff payday, faculty payday, and after a holiday. Cell I4 contains 0 to indicate that January 2 was not before a holiday. The forecast is defined by a constant (which helps to center the forecasts so that they will be more accurate) and effects for each day of the week, each month, a staff payday, a faculty payday, a day occurring before a holiday, and a day occurring after a holiday. I inserted trial values for all these parameters (the Solver changing cells) in the cell range O4:O26, shown in Figure 61-2. Solver will then choose values that make the model best fit the data. For each day, the forecast of customer count will be generated by the following equation: Predicted customer count=Constant+(Month effect)+(Day of week effect) +(Staff payday effect, if any)+(Faculty payday effect, if any)+ (Before holiday effect, if any)+(After holiday effect, if any) Chapter 61 Forecasting in the Presence of Special Events 503 Using this model, you can compute a forecast for each day’s customer count by copying from K4 to K5:K257 the following formula: $O$26+VLOOKUP(B4,$N$14:$O$25,2)+VLOOKUP(D4,$N$4:$O$8,2) +G4*$O$9+H4*$O$10+I4*$O$11+J4*$O$12 Cell O26 picks up the constant term. VLOOKUP(B4,$N$14:$O$25,2) picks up the month ­coefficient for the current month, and VLOOKUP(D4,$N$4:$O$8,2) picks up the day of the week coefficient for the current week. G4*$O$9+H4*$O$10+I4*$O$11+J4*$O$12 picks up the effects (if any) when the current day is coded as SP, FAC, BH, or AH. By copying from L4 to L5:L257 the formula (E4-K4)^2, I compute the squared error for each day. Then, in cell L2, I compute the sum of squared errors with the formula SUM(L4:L257). Figure 61-2 Changing cells and customer forecasts. In cell R4, I average the day of the week changing cells with the formula AVERAGE(O4:O8), and in cell R5, I average the month changing cells with the formula AVERAGE(O14:O25). Later, I’ll constrain the average month and day of the week effects to equal 0, which ensures that a month or day of the week with a positive effect has a higher than average customer count, and a month or day of the week with a negative effect has a lower than average customer count. You can use the Solver settings shown in Figure 61-3 to choose the forecast parameters to minimize the sum of squared errors. 504 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 61-3 Solver Parameters dialog box for determining forecast parameters. The Solver model changes the coefficients for the month, day of the week, BH, AH, SP, FAC, and the constant to minimize the sum of square errors. I also constrained the average day of the week and month effect to equal 0. Using the Solver, the results shown in Figure 61-2 are obtained. For example, Friday is the busiest day of the week and June is the busiest month. A staff payday raises the forecast (all else being equal—in the Latin, ceteris paribus) by 397 customers. How can I evaluate forecast accuracy? To evaluate the accuracy of the forecast, you compute the R-squared value b ­ etween the ­forecasts and the actual customer count in cell J1. The formula you use is RSQ(E4:E257,K4:K257). This formula computes the percentage of the actual variation in ­customer count that is explained by the forecasting model. Here, the independent variables explain 77 percent of the daily variation in customer count. You compute the error for each day in column M by copying from M4 to M5:M257 the formula E4–K4. A close approximation to the standard error of the forecast is given by the standard deviation of the errors. This value is computed in cell M1 by using the formula STDEVS(M4:M257). Thus, approximately 68 percent of the forecasts should be accurate ­within 163 customers, 95 percent accurate within 326 customers, and so on. Let’s try and spot any outliers. Recall that an observation is an outlier if the absolute value of a forecast error exceeds two times the standard error of the regression. Select the range M4:M257, and then click Conditional Formatting on the Home tab. Next, select New Rule, and in the New Formatting Rule dialog box, choose Use A Formula To Determine Which Cells Chapter 61 Forecasting in the Presence of Special Events 505 To Format. Fill in the rule description in the dialog box as shown in Figure 61-4. (For more information about conditional formatting, see Chapter 24, “Conditional Formatting.”) Figure 61-4 Using conditional formatting to spot forecast outliers. After choosing a format with a red font, the conditional formatting settings will display in red any error that exceeds 2*(standard deviation of errors) in absolute error. Looking at the outliers, you can see that the model often underforecasts the customer count for the first three days of the month. Also, during the second week in March (spring break), the model overforecasts, and the day before spring break, it greatly underforecasts. To remedy this problem, in the 1st Three Days worksheet, I added changing cells for each of the first three days of the month and for spring break and the day before spring break. I added trial values for these new effects in cells O26:O30. By copying from K4 to K5:K257 the following formula: $O$25+VLOOKUP(B4,$N$13:$O$24,2)+VLOOKUP(D4,$N$4:$O$8,2)+G4*$O$9+H4*$O$10+I4*$O$11+J4*$O$12 +IF(C4=1,$O$26,IF(C4=2,$O$27,IF(C4=3,$O$28,0))) I include the effects of the first three days of the month. (The term IF(C4=1,$O$26, IF(C4=2,$O$27,IF(C4=3,$O$28,0))) picks up the effect of the first three days of the month.) I manually entered the spring break coefficients in cells K52:K57. For example, in cell K52 I added +O29 to the formula, and in cells K53:K57, I added +O30. After including the new changing cells in the Solver dialog box, I get the results shown in Figure 61-5. Notice that the first three days of the month greatly increase customer count (probably because of government support and Social Security checks), and that spring break reduces customer count. Figure 61-5 also shows the improvement in the forecasting ­accuracy. The R squared value (RSQ) has improved to 87 percent and the standard error is reduced to 122 customers. 506 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 61-5 Forecast parameters and forecasts including spring break and the first three days of the month. By looking at the forecast errors for the week 12/24 through 12/31 (see Figure 61-6), you can see that the model has greatly overforecasted the customer counts for the days in this week. It also underforecasted customer counts for the week before Christmas. Further examination of the forecast errors (often called residuals) also shows the following: ■ Thanksgiving is different from a normal holiday in that the credit union is far less busy than expected the day after Thanksgiving. ■ The day before Good Friday is really busy because people leave town for Easter. ■ Tax day (April 16) is also busier than expected. ■ The week before Indiana University starts fall classes (last week in August) was not busy, probably because many staff and faculty take a “summer fling vacation” before the hectic onrush of the fall semester. Figure 61-6 Errors for Christmas week. Chapter 61 Forecasting in the Presence of Special Events 507 In the Christmas week worksheet, I added changing cells to incorporate the effects of these factors. After adding the new parameters as changing cells, I ran Solver again. The results are shown in Figure 61-7. The RSQ is up to 92 percent, and the standard error is down to 98.61 customers! Note that the post-Christmas week effect reduced daily customer count by 359, the day before Thanksgiving added 607 customers, the day after Thanksgiving reduced ­customer count by 161, and so on. Figure 61-7 Final forecast parameters. Notice also how the forecasting model is improved by using outliers. If your outliers have something in common (like being the first three days of the month), include the common factor as an independent variable and your forecasting error will drop. How can I check whether my forecast errors are random? A good forecasting method should create forecast errors or residuals that are random. By random errors, I mean that your errors exhibit no discernible pattern. If forecast errors are random, the sign of your errors should change (from plus to minus or minus to plus) approximately half the time. Therefore, a commonly used test to evaluate the randomness of forecast errors is to look at the number of sign changes in the errors. If you have n observations, nonrandomness of the errors is indicated if you find either fewer than n–1 – 2 n or more than n–1 + 2 n 508 Microsoft Excel 2010: Data Analysis and Business Modeling changes in sign. In the Christmas week worksheet, as shown in Figure 61-7, I determined the number of sign changes in the residuals by copying from cell P5 to P6:P257 the formula IF(M5*M4<0,1,0). A sign change in the residuals occurs if and only if the product of two ­consecutive residuals is negative. Therefore, this formula yields 1 whenever a change in the sign of the residuals occurs. There were 125 changes in sign. In cell P1, I computed 254 – 1 – 2 254 = 110.6 changes in sign as the cutoff for nonrandom residuals. Therefore, we have random residuals. A similar analysis was performed to predict daily customer counts for dinner at a major restaurant chain. The special factors corresponded to holidays. The study found that Super Sunday (the day of the NFL’s Super Bowl) was the least busy day and Valentine’s Day and Mother’s Day were the busiest. Also, Saturday was the busiest day of the week for dinner and Friday was the busiest day of the week for lunch. Problems 1. How can you use the techniques outlined in this chapter to predict the daily sales of pens at Staples? 2. If you had several years of data, how would you incorporate a trend in the analysis? Chapter 62 An Introduction to Random Variables Questions answered in this chapter: ■ What is a random variable? ■ What is a discrete random variable? ■ What are the mean, variance, and standard deviation of a random variable? ■ What is a continuous random variable? ■ What is a probability density function? ■ What are independent random variables? In today’s world, the only thing that’s certain is that we face a great deal of uncertainty. In the next nine chapters, I’ll give you some powerful techniques that you can use to ­incorporate uncertainty in business models. The key building block in modeling uncertainty is ­understanding how to use random variables. Answers to This Chapter’s Questions What is a random variable? Any situation whose outcome is uncertain is called an experiment. The value of a random variable is based on the (uncertain) outcome of an experiment. For example, tossing a pair of dice is an experiment, and a random variable might be defined as the sum of the values shown on each die. In this case, the random variable could assume any of the values 2, 3, and so on up to 12. As another example, consider the experiment of selling a new video game console, for which a random variable might be defined as the market share for this new product. What is a discrete random variable? A random variable is discrete if it can assume a finite number of possible values. Here are some examples of discrete random variables: ■ Number of potential competitors for your product ■ Number of aces drawn in a five-card poker hand ■ Number of car accidents you have (hopefully zero!) in a year 509 510 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Number of dots showing on a die ■ Number of free throws out of 12 that Phoenix Sun’s star Steve Nash makes during a basketball game What are the mean, variance, and standard deviation of a random variable? In Chapter 42, “Summarizing Data by Using Descriptive Statistics,” I discussed the mean, variance, and standard deviation for a data set. In essence, the mean of a random variable (often denoted by µ) is the average value of the random variable you would expect if you performed an experiment many times. The mean of a random variable is often referred to as the random variable’s expected value. The variance of a random variable (often denoted by s2) is the average value of the squared deviation from the mean of a random variable that you would expect if you performed an experiment many times. The standard deviation of a random variable (often denoted by σ) is simply the square root of its variance. As with data sets, the mean of a random variable is a summary measure for a typical value of the random variable, whereas the variance and standard deviation measure the spread of the random variable about its mean. As an example of how to compute the mean, variance, and standard deviation of a random variable, suppose you believe that the return on the stock market during the next year is ­governed by the following probabilities: Probability Market return .40 +20 percent .30 0 percent .30 -20 percent Hand calculations show the following: µ=.40*(.20)+.30*(.00)+.30*(–.20)=.02 or 2 percent s2=.4*(.20–.02)2+.30*(.0–.02)2+.30*(–.20–.02)2=.0276 Then σ=.166 or 16.6 percent. In the file Meanvariance.xlsx (shown in Figure 62-1), I verified these computations. Chapter 62 An Introduction to Random Variables 511 Figure 62-1 Computing the mean, standard deviation, and variance of a random variable. I computed the mean of the market return in cell C9 with the formula SUMPRODUCT(B4:B6,C4:C6). This formula multiplies each value of the random variable by its probability and sums up the products. To compute the variance of the market return, I determined the squared deviation of each value of the random variable from its mean by copying from D4 to D5:D6 the formula (B4–$C$9)^2. Then, in cell C10, I computed the variance of the market return as the average squared deviation from the mean with the formula SUMPRODUCT(C4:C6,D4:D6). Finally, I computed the standard deviation of the market return in cell C11 with the formula SQRT(C10). What is a continuous random variable? A continuous random variable is a random variable that can assume a very large number or, to all intents and purposes, an infinite number of values. Here are some examples of ­continuous random variables: ■ Price of Microsoft stock one year from now ■ Market share for a new product ■ Market size for a new product ■ Cost of developing a new product ■ Newborn baby’s weight ■ Person’s IQ ■ Dirk Nowitzki’s three-point shooting percentage during next season What is a probability density function? A discrete random variable can be specified by a list of values and the probability of occurrence for each value of the random variable. Because a continuous random variable can assume an infinite number of values, you can’t list the probability of occurrence for each value of a continuous random variable. A continuous random variable is completely described by its probability density function. For example, the probability density function for a randomly chosen person’s IQ is shown in Figure 62-2. 512 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 62-2 Probability density function for IQs. A probability density function (pdf) has the following properties: ■ The value of the pdf is always greater than or equal to 0. ■ The area under the pdf equals 1. ■ The height of the density function for a value x of a random variable is proportional to the likelihood that the random variable assumes a value near x. For example, the height of the density for an IQ of 83 is roughly half the height of the density for an IQ of 100. This tells you that IQs near 83 are approximately half as likely as IQs around 100. Also, because the density peaks at 100, IQs around 100 are most likely. ■ The probability that a continuous random variable assumes a range of values equals the corresponding area under the density function. For example, the fraction of people having IQs from 80 through 100 is simply the area under the density from 80 through 100. ■ We note that a discrete random variable which assumes many values is often modeled as a continuous random variable. (See Chapter 65, “The Normal Random Variable.”) For example, while the number of half gallons of milk sold in a single day by a small grocery store is discrete, it proves more convenient to model this discrete random variable as a continuous random variable. What are independent random variables? A set of random variables are independent if knowledge of the value of any of their subsets tells you nothing about the values of the other random variables. For example, the number of games won by the Indiana University football team during a year is independent of the percentage return on Microsoft during the same year. Knowing that Indiana did very well would not change your view of how Microsoft stock did during the year. Chapter 62 An Introduction to Random Variables 513 On the other hand, the returns on Microsoft stock and Intel stock are not independent. If you are told that Microsoft stock had a high return in one year, in all likelihood, computer sales were high, which tells you that Intel probably had a good year as well. Problems 1. Identify the following random variables as discrete or continuous: ❑ Number of games the Seattle Seahawks win next season ❑ Number that comes up when spinning a roulette wheel ❑ Unit sales of Tablet PCs next year ❑ Length of time that a light bulb lasts before it burns out 2. Compute the mean, variance, and standard deviation of the number of dots showing when a die is tossed. 3. Determine whether the following random variables are independent: ❑ Daily temperature and sales at an ice cream store ❑ Suit and number of a card drawn from a deck of playing cards ❑ Inflation and return on the stock market ❑ Price charged for and the number of units sold of a car 4. The current price of a company’s stock is $20. The company is a takeover target. If the takeover is successful, the company’s stock price will increase to $30. If the takeover is unsuccessful, the stock price will drop to $12. Determine the range of values for the probability of a successful takeover that would make it worthwhile to purchase the stock today. Assume your goal is to maximize your expected profit. Hint: Use the Goal Seek command, which is discussed in detail in Chapter 18, “The Goal Seek Command.” 5. When a roulette wheel is spun, the possible outcomes are 0, 00, 1, 2, …, 36. If you bet on a number coming up you win $35 if your number comes up and you lose $1 ­otherwise. What is the mean and standard deviation of your winnings on a single play of the game? Chapter 63 The Binomial, Hypergeometric, and Negative Binomial Random Variables Questions answered in this chapter: ■ What is a binomial random variable? ■ How do I use the BINOM.DIST function to compute binomial probabilities? ■ If equal numbers of people prefer Coke to Pepsi and Pepsi to Coke and I ask 100 ­people whether they prefer Coke to Pepsi, what is the probability that exactly 60 people prefer Coke to Pepsi and the probability that between 40 and 60 people prefer Coke to Pepsi? ■ Of all the elevator rails my company produces, 3 percent are considered defective. We are about to ship a batch of 10,000 elevator rails to a customer. To determine whether the batch is acceptable, the customer will randomly choose a sample of 100 rails and check whether each sampled rail is defective. If two or fewer sampled rails are defective, the customer will accept the batch. How can I determine the probability that the batch will be accepted? ■ Airlines do not like flights with empty seats. Suppose that, on average, 95 percent of all ticket purchasers show up for a flight. If the airline sells 105 tickets for a 100-seat flight, what is the probability that the flight will be overbooked? ■ The local Village Deli knows that 1,000 customers come for lunch each day. On average 20 percent order the specialty vegetarian sandwich. These sandwiches are premade. How many should the deli make if they want to have a 5 percent chance of running out of vegetarian sandwiches? ■ What is the hypergeometric random variable? ■ What is the negative binomial random variable? Answers to This Chapter’s Questions What is a binomial random variable? A binomial random variable is a discrete random variable used to calculate probabilities in a situation in which all three of the following apply: ■ n independent trials occur. 515 516 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Each trial results in one of two outcomes: success or failure. ■ In each trial, the probability of success (p) remains constant. In such a situation, the binomial random variable can be used to calculate probabilities ­related to the number of successes in a given number of trials. We let x be the random ­variable denoting the number of successes occurring in n independent trials when the ­probability of success on each trial is p. Here are some examples in which the binomial ­random variable is relevant. ■ Coke or Pepsi Assume that equal numbers of people prefer Coke to Pepsi and Pepsi to Coke. You ask 100 people whether they prefer Coke to Pepsi. You’re interested in the probability that exactly 60 people prefer Coke to Pepsi and the probability that from 40 through 60 people prefer Coke to Pepsi. In this situation, you have a binomial random variable defined by the following: ❑ Trial: survey individuals ❑ Success: prefer Coke ❑ p equals 0.50 ❑ n equals 100 Let x equal the number of people sampled who prefer Coke. You want to determine the probability that x=60 and also the probability that 40 ≤ x ≤ 60. ■ Elevator rails Of all the elevator rails you produce, 3 percent are considered defective. You are about to ship a batch of 10,000 elevator rails to a customer. To determine whether the batch is acceptable, the customer will randomly choose a sample of 100 rails and check whether each sampled rail is defective. If two or fewer sampled rails are defective, the customer will accept the batch. You want to determine the probability that the batch will be accepted. You have a binomial random variable defined by the following: ❑ Trial: look at a sampled rail ❑ Success: rail is defective ❑ p equals 0.03 ❑ n equals 100 Let x equal the number of defective rails in the sample. You want to find the probability that x ≤ 2. ■ Airline overbooking Airlines don’t like flights with empty seats. Suppose that, on average, 95 percent of all ticket purchasers show up for a flight. If the airline sells 105 tickets for a 100-seat flight, what is the probability that the flight will be overbooked? Chapter 63 The Binomial, Hypergeometric, and Negative Binomial Random Variables 517 You have a binomial random variable defined by the following: ❑ Trial: individual ticket holders ❑ Success: ticket holder shows up ❑ p equals 0.95 ❑ n equals 105 Let x equal the number of ticket holders who show up. Then you want to find the ­probability that x ≥ 101. How do I use the BINOM.DIST function to compute binomial probabilities? Microsoft Excel 2010 includes the BINOM.DIST function, which you can use to compute binomial probabilities. If you want to compute the probability of x or fewer successes for a binomial random variable having n trials with probability of success p, simply enter BINOM. DIST(x,n, p,1). If you want to compute the probability of exactly x successes for a binomial random variable having n trials with probability of success of p, enter BINOM.DIST(x,n,p,0). Entering 1 as the last argument of BINOM.DIST yields a “cumulative” probability; entering 0 yields the “probability mass function” for any particular value. (Note that a last argument of True can be used instead of a 1, and a last argument of False can be used instead of a 0.) Previous versions of Excel will not recognize the BINOM.DIST function. In previous versions of Excel you can use the BINOMDIST function, which has exactly the same syntax as the BINOM. DIST function. Let’s use the BINOM.DIST function to calculate some probabilities of interest. You’ll find the data and analysis in the file Binomialexamples.xlsx, which is shown in Figure 63-1. Figure 63-1 Using the binomial random variable. 518 Microsoft Excel 2010: Data Analysis and Business Modeling If equal numbers of people prefer Coke to Pepsi and Pepsi to Coke and I ask 100 people whether they prefer Coke to Pepsi, what is the probability that exactly 60 people prefer Coke to Pepsi and the probability that between 40 and 60 people prefer Coke to Pepsi? You have n=100 and p=0.5. You seek the probability that x=60 and the probability that 40 ≤ x ≤ 60, where x equals the number of people who prefer Coke to Pepsi. First, you find the probability that x=60 by entering the formula BINOM.DIST(60,100,0.5,0). Excel returns the value 0.011. To use the BINOM.DIST function to compute the probability that 40 ≤ x ≤ 60, you can note that the probability that 40 ≤ x ≤ 60 equals the probability that x ≤ 60 minus the probability that x ≤ 39. Thus, you can obtain the probability that from 40 through 60 people prefer Coke by entering the formula BINOM.DIST(60,100,0.5,1)–BINOM.DIST(39,100,0.5,1). Excel returns the value 0.9648. So, if Coke and Pepsi are equally preferred, it is very unlikely that in a sample of 100 people, Coke or Pepsi would be more than 10 percent ahead. If a sample of 100 people shows Coke or Pepsi to be more than 10 percent ahead, you should probably doubt that Coke and Pepsi are equally preferred. Of all the elevator rails my company produces, 3 percent are considered defective. We are about to ship a batch of 10,000 elevator rails to a customer. To determine whether the batch is acceptable, the customer will randomly choose a sample of 100 rails and check whether each sampled rail is defective. If two or fewer sampled rails are defective, the customer will accept the batch. How can I determine the probability that the batch will be accepted? If you let x equal the number of defective rails in a batch, you have a binomial random ­variable with n=100 and p=0.03. You seek the probability that x ≤ 2. Simply enter in cell C8 the formula BINOM.DIST(2,100,0.03,1). Excel returns the value 0.42 Thus, the batch will be accepted 42 percent of the time. Really, your chance of success is not exactly 3 percent on each trial. For example, if the first 10 rails are defective, the chance the next rail is defective has dropped to 290/9,990; if the first 10 rails are not defective, the chance the next rail is defective is 300/9,990. Therefore, the probability of success on the eleventh trial is not independent of the probability of success on one of the first 10 trials. Despite this fact, the binomial random variable can be used as an approximation when a sample is drawn and the sample size is less than 10 percent of the total population. Here, the population equals 10,000, and the sample size is 100. Exact ­probabilities involving sampling from a finite population can be calculated with the hypergeometric random variable, which I’ll discuss later in this chapter. Airlines do not like flights with empty seats. Suppose that, on average, 95 percent of all ticket purchasers show up for a flight. If the airline sells 105 tickets for a 100-seat flight, what is the probability that the flight will be overbooked? Chapter 63 The Binomial, Hypergeometric, and Negative Binomial Random Variables 519 Let x equal the number of ticket holders who show up for the flight. You have n=105 and p=0.95. You seek the probability that x ≥ 101. Note that the probability that x ≤ 101 equals 1 minus the probability that x ≤ 100. So, to compute the probability that the flight is overbooked, you enter in cell C10 the formula 1–BINOM.DIST(100,105,0.95,1). Excel yields 0.392, which means there is a 39.2 percent chance that the flight will be overbooked. The local Village Deli knows that 1,000 customers come for lunch each day. On average 20 percent order the specialty vegetarian sandwich. These sandwiches are premade. How many should the deli make if they want to have a 5 percent chance of running out of ­vegetarian sandwiches? In Excel 2010 the function BINOM.INV, with the syntax BINOM.INV(trials, ­probability of ­success, alpha), determines the smallest number x for which the probability of less than or equal to x successes is at least alpha. In earlier versions of Excel, the function CRITBINOM(trials, probability of success, alpha) yielded the same results as BINOM.INV. In this example, trials equals 1,000, probability of success equals 0.2, and alpha equals .95. As shown in Figure 63-2, if the deli orders 221 sandwiches, the probability that demand will be less than or equal to 221 is at least 0.95. Also, the probability that 220 or fewer sandwiches will be demanded is less than 0.95. Figure 63-2 Example of BINOM.INV function. What is the hypergeometric random variable? The hypergeometric random variable governs a situation such as the following: ■ An urn contains N balls. ■ Each ball is one of two types (called success or failure). ■ There are s successes in the urn. ■ A sample of size n is drawn from the urn. 520 Microsoft Excel 2010: Data Analysis and Business Modeling Let’s look at an example in the file Hypergeom.dist.xlsx, which is shown in Figure 63-3. The Excel 2010 formula HYPERGEOM.DIST(x,n,s,N,0) gives the probability of x successes if n balls are drawn from an urn containing N balls, of which s are marked as “success.” The Excel 2010 formula HYPERGEOM.DIST(x,n,s,N,1) gives the probability of less than or equal to x successes if n balls are drawn from an urn containing N balls, of which s are marked as “success.” (As with the BINOM.DIST function, True can be used to replace 1 and False to replace 0.) For example, suppose that 40 of the Fortune 500 companies have a woman CEO. The 500 CEOs are analogous to the balls in the urn (N=500) and the 40 women are representative of the s successes in the urn. Then, copying from D8 to D9:D18 the formula HYPERGEOM. DIST(C8,Sample_size,Population_women,Population_size,0) gives the probability that a sample of 10 Fortune 500 companies will have 0, 1, 2,…, 10 women CEOs. Here Sample_size equals 10, Population_women equals 40, and Population_size equals 500. Finding a woman CEO is a success. In the sample of 10, for example, there’s a probability of 0.431 that no women CEOs will be in the sample. By the way, you could have ­ approximated this probability with the formula BINOMDIST(0,10,0.08,0), yielding 0.434, which is very close to the true probability of 0.431. In cell F10 I computed the probability that at most 2 of the 10 people in the sample would be women with the formula HYPGEOM.DIST(2,Sample_Size,Population_women,Population_size,TRUE). Thus there is a 96.2 percent chance that at most two people in the sample will be women. Of course, I could have obtained this answer by adding together the shaded cells (D8:D10). Figure 63-3 Using the hypergeometric random variable. What is the negative binomial random variable? The negative binomial random variable applies to the same situation as the binomial random variable, but the negative binomial random variable gives the probability of f failures occurring before the sth success. Thus =NEGBINOM.DIST(f,s,p,0) gives the probability that exactly f failures will occur before the sth success when the probability of success is p for each trial, and =NEGBINOM.DIST(f,s,p,1) gives the probability that at most f failures will occur before the sth success when the probability of success is p for each trial. For example, Chapter 63 The Binomial, Hypergeometric, and Negative Binomial Random Variables 521 consider a baseball team that wins 40 percent of their games (see the file Negbinom.dist.xlsx and Figure 63-4). Copying from E9 to E34 the formula =NEGBINOM.DIST(D9,2,.4,False) gives the probability of 0, 1, 2,…, 25 losses occurring before the second win. Note here that success equals a game won. For example, there is a 19.2 percent chance the team will lose exactly one game before winning two games. In cell G10 I used the formula ­ ccur =NEGBINOM.DIST(3,2,0.4,TRUE) to compute the chance that at most three losses will o before our team wins two games (0.663). Of course, I could have obtained this answer by simply adding up the shaded cells (E9:E12). Figure 63-4 Using the negative binomial random variable. Problems 1. Suppose that, on average, 4 percent of all CD drives received by a computer company are defective. The company has adopted the following policy: Sample 50 CD drives in each shipment, and accept the shipment if none are defective. Using this information, determine the following: ❑ What fraction of shipments will be accepted? ❑ If the policy changes so that a shipment is accepted if only one CD drive in the sample is defective, what fraction of shipments will be accepted? ❑ What is the probability that a sample size of 50 will contain at least 10 defective CD drives? 522 Microsoft Excel 2010: Data Analysis and Business Modeling 2. Using the airline overbooking data: ❑ Determine how the probability of overbooking varies as the number of tickets sold varies from 100 through 115. Hint: Use a one-way data table. ❑ Show how the probability of overbooking varies as the number of tickets sold varies from 100 through 115, and the probability that a ticket holder shows up varies from 80 percent through 95 percent. Hint: Use a two-way data table. 3. Suppose that during each year, a given mutual fund has a 50 percent chance of b ­ eating the Standard & Poor’s 500 Stock Index (S&P Index). In a group of 100 mutual funds, what is the probability that at least 10 funds will beat the S&P Index during at least 8 out of 10 years? 4. Professional basketball player Steve Nash is a 90-percent foul shooter. ❑ If he shoots 100 free throws, what is the probability that he will miss more than 15 shots? ❑ How good a foul shooter would Steve Nash be if he had only a 5 percent chance of making fewer than 90 free throws out of 100 attempts? Hint: Use Goal Seek. 5. When tested for extra sensory perception (ESP), participants are asked to identify the shape of a card from a 25-card deck. The deck consists of five cards of each of five shapes. If a person identifies 12 cards correctly, what would you conclude? 6. Suppose that in a group of 100 people, 20 have the flu and 80 do not. If you randomly select 30 people, what is the chance that at least 10 people have the flu? 7. A student is selling magazines for a school fundraiser. There is a 20 percent chance that a given house will buy a magazine. He needs to sell five magazines. Determine the probability that he will need to visit 5, 6, 7,…, 100 houses to sell five magazines. 8. Use the BINOM.DIST function to verify that the BINOM.INV function yields the correct answer to our Village Deli example. 9. In the seventeenth century, French mathematicians Pierre de Fermat and Blaise Pascal were inspired to formulate the modern probability theory after trying to solve the ”Problem of the Points.” Here is a simple example: Pascal and Fermat take turns tossing coins. Fermat wins a point if a head is tossed, and Pascal wins a point if a tail is tossed. If Pascal is ahead 8-7 and the first player with 10 points wins, what is the chance that Pascal will win? Chapter 64 The Poisson and Exponential Random Variable Questions answered in this chapter: ■ What is the Poisson random variable? ■ How do I compute probabilities for the Poisson random variable? ■ If the number of customers arriving at a bank is governed by a Poisson random ­variable, what random variable governs the time between arrivals? Answers to This Chapter’s Questions What is the Poisson random variable? The Poisson random variable is a discrete random variable that is useful for describing ­probabilities for situations in which events (such as customer arrivals at a bank or orders placed for a product) have a small probability of occurring during a short time interval. More specifically, during a short time interval, denoted as t, either zero or one event will occur, and the probability of one event occurring during a short interval of length t is (for some λ) given by lt. Here, λ is the mean number of occurrences per time unit. Situations in which the Poisson random variable can be applied include the following: ■ Number of units of a product demanded during a month. ■ Number of deaths per year by horse kick in the Prussian army. ■ Number of car accidents you have during a year. ■ Number of copies of The Seat of the Soul ordered today at Amazon.com. ■ Number of workers’ compensation claims filed at a company this month. ■ Number of defects in 100 yards of string. (Here, 1 yard of string plays the role of time.) 523 524 Microsoft Excel 2010: Data Analysis and Business Modeling How do I compute probabilities for the Poisson random variable? You can use the Microsoft Excel 2010 POISSON.DIST function to compute probabilities ­involving the Poisson random variable. In earlier versions of Excel, the POISSON function yielded POISSON probabilities. Just remember that in a length of time t, the mean of a Poisson random variable is t. The syntax of the POISSON function is as follows: POISSON.DIST(x,Lambda,True or 1) calculates the probability that a Poisson random variable with a mean equal to Lambda is less than or equal to x. POISSON.DIST(x,Lambda,False or 0) calculates the probability that a Poisson random variable with a mean equal to Lambda is equal to x. Here are some examples of how to compute probabilities for Poisson random variables. You can find these examples in the file Poisson.xlsx, shown in Figure 64-1. Figure 64-1 Using the Poisson random variable. Suppose that my consulting business receives an average of 30 phone calls per hour. During a two-hour period, I want to determine the following: ■ The probability that exactly 60 calls will be received in the next two hours ■ The probability that the number of calls received in the next two hours will be fewer than or equal to 60 ■ The probability that from 50 through 100 calls will be received in the next two hours During a two-hour period, the mean number of calls is 60. In cell C4, I find the ­probability (0.05) that exactly 60 calls will be received in the next two hours by using the formula POISSON.DIST(60,C2,False). In cell C5, I find the probability (0.534) that at most 60 calls will be received in two hours with the formula POISSON.DIST(60,C2,True). In cell C6, I find the probability (0.916) that from 50 through 100 calls will be received in two hours with the ­formula POISSON.DIST(100,C2,True)–POISSON.DIST(49,C2,True). Note You can always use 1 instead of True as an argument in any Excel function. Chapter 64 The Poisson and Exponential Random Variable 525 If the number of customers arriving at a bank is governed by a Poisson random v ­ ariable, what random variable governs the time between arrivals? The time between arrivals can be any value, which means that the time between arrivals is a continuous random variable. If an average of arrivals occur per time unit, the time between arrivals follows an exponential random variable having the probability density function (pdf) of f(t)=le-lt,t³0. This random variable has a mean, or average, value equal to 1/λ. For λ=30, a graph of the exponential pdf is shown in Figure 64-2. You can find this chart and the data for this example in the Density worksheet in the file Exponentialdist.xlsx. Figure 64-2 Exponential probability density function. Recall from Chapter 62, “An Introduction to Random Variables,” that for a continuous random variable, the height of the pdf for a number x reflects the likelihood that the random variable assumes a value near x. You can see in Figure 64-2 that extremely short times between bank arrivals (for example, less than 0.05 hours) are very likely, but that for longer times, the pdf drops off sharply. Even though the average time between arrivals is 1/30=0.033 hours, there’s a reasonable chance that the time between arrivals will be as much as 0.20 hours. The Excel 2010 formula EXPON.DIST(x,1/mean,True or 1) will give the probability that an exponential random variable with a given mean will assume a value less than or equal to x. Thus, the second argument to the EXPON.DIST function is the rate per time unit at which events occur. For example, to compute the probability that the time between arrivals is at least 5, 10, or 15 minutes, I c­opied from cell D5 to D7 the formula 1–EXPON.DIST(C5,$D$2,True or 1). In earlier versions of Excel, the EXPONDIST function yields the same results as EXPON.DIST. Note that I first converted minutes to hours (5 minutes equals 1/12 hour, and so on). Also, the mean time between arrivals is 0.033 hours, so I entered into the formula 1/Mean=1/.033=30. In short, I entered the arrival rate per time unit, as you can see in Figure 64-3. 526 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 64-3 Computations of exponential probabilities. Problems 1. Beer drinkers order an average of 40 pitchers of beer per hour at Nick’s Pub in Bloomington, Indiana. ❑ What is the probability that at least 100 pitchers are ordered in a two-hour period? ❑ What is the chance that the time between ordered pitchers will be 30 seconds or less? 2. Suppose that teenage drivers have an average of 0.3 accidents per year. ❑ What is the probability that a teenager will have no more than one accident ­during a year? ❑ What is the probability that the time between accidents will be six months or less? 3. I am next in line at a fast food restaurant in which customers wait in a single line, and the time to serve a customer follows an exponential distribution with a mean of 3 ­minutes. What is the chance that I will have to wait at least 5 minutes to be served? 4. Since 1900 a fraction (.00124) of all major league baseball games have resulted in ­no-hitters. A team plays 162 games in a season. What is the chance that a team pitches two or more no-hitters during a season? Chapter 65 The Normal Random Variable Questions answered in this chapter: ■ What are the properties of the normal random variable? ■ How do I use Excel to find probabilities for the normal random variable? ■ Can I use Excel to find percentiles for normal random variables? ■ Why is the normal random variable appropriate in many real-world situations? Answers to This Chapter’s Questions What are the properties of the normal random variable? In Chapter 62, “An Introduction to Random Variables,” you learned that continuous random variables can be used to model quantities such as the following: ■ Price of Microsoft stock one year from now ■ Market share for a new product ■ Market size for a new product ■ Cost of developing a new product ■ Newborn baby’s weight ■ A person’s IQ Remember that if a discrete random variable (such as sales of Big Macs during 2006) can ­assume many possible values, you can approximate the value by using a continuous ­random variable as well. As I described in Chapter 62, any continuous random variable X has a ­probability density function (pdf). The pdf for a continuous random variable is a non-­ negative function with the following properties (a and b are arbitrary numbers). ■ The area under the pdf is 1. ■ The probability that X<a equals the probability that X≤a. This probability is represented by the area under the pdf to the left of a. ■ The probability that X>b equals the probability that X≥b. This probability is shown in the area under the pdf to the right of b. ■ The probability that a<X<b equals the probability that a≤X≤b. This probability is the area under the pdf between a and b. 527 528 Microsoft Excel 2010: Data Analysis and Business Modeling Thus, the area under a continuous random variable’s pdf represents probability. Also, the larger the value of the density function at X, the more likely the random variable will take on a value near X. For example, if the density function of a random variable at 20 is twice the density function of the random variable at 5, then the random variable is twice as likely to take on a value near 20 than a value near 5. For a continuous random variable, the probability that X equals a will always equal 0. For ­example, some people are from 5.99999 feet through 6.00001 feet tall, but no person can be exactly 6 feet tall. This explains why you can replace the less than sign (<) with the less than or equal to sign (≤) in the probability statements. Figure 65-1 displays the pdf for X=IQ of a randomly chosen person. The area under this pdf is 1. If you want to find the probability that a person’s IQ is less than or equal to 90, you simply find the area to the left of 90. If you want to find the probability that a person’s IQ is from 95 through 120, you find the area under the pdf from 95 through 120. If you want to find the probability that a person’s IQ is more than 130, you find the area under the density function to the right of 130. (See the IQ Density worksheet in the file Normalexamples.xlsx.) Figure 65-1 IQ pdf. Actually, the density plotted in Figure 65-1 is an example of the normal random variable. The normal random variable is specified by its mean and standard deviation. IQs follow a normal random variable with µ=100 and σ=15. This is the pdf displayed in Figure 65-1. The normal random variable has the following properties: ■ The most likely value of a normal random variable is µ (as indicated by the pdf peaking at 100 in Figure 65-1). ■ As the value x of the random variable moves away from µ, the probability that the ­random variable is near x sharply decreases. ■ The normal random variable is symmetric about its mean. For example, IQs near 80 are as likely as IQs near 120. Chapter 65 The Normal Random Variable ■ 529 A normal random variable has 68 percent of its probability within σ of its mean, 95 percent within 2σ of its mean, and 99.7 percent within 3σ of its mean. These measures should remind you of the rule of thumb I described in Chapter 42, “Summarizing Data by Using Descriptive Statistics.” In fact, the rule of thumb is based on the assumption that data is “sampled” from a normal distribution, which explains why the rule of thumb does not work as well when the data fails to exhibit a symmetric histogram. For a larger σ, a normal random variable is more spread out about its mean. This p ­ attern is illustrated in Figures 65-2 and 65-3. (See the Sigma of 5 and 15 worksheet in the file Normalexamples.xlsx.) Figure 65-2 Normal random variable pdf with a mean equal to 60 and a standard deviation equal to 5. Figure 65-3 Normal random variable pdf with a mean equal to 60 and a standard deviation equal to 15. How do I use Excel to find probabilities for the normal random variable? Consider a normal random variable X with a mean µ and standard deviation σ. Suppose for any number x, you want to find the probability that X≤x, which is called the normal ­cumulative function. To use Microsoft Excel 2010 to find the probability that X≤x, enter the formula NORM.DIST(x,µ,σ,1). Of course, the fourth argument of 1 could be replaced by True. 530 Microsoft Excel 2010: Data Analysis and Business Modeling The argument 1 tells Excel to compute the normal cumulative. If the last argument of the function is 0, Excel returns the actual value of the normal random variable pdf. Excel 2010 statistical functions (like NORM.DIST) have been modified or redesigned completely to provide better accuracy than their counterparts (like NORMDIST) in previous versions of Excel. You can use the NORM.DIST function to answer many questions concerning normal ­probabilities. You can find examples in the Normal worksheet in the file Normalexamples.xlsx, which is shown in Figure 65-4, and in the following three scenarios. Figure 65-4 Calculating normal probability. ■ What fraction of people have an IQ of less than 90? Let X equal the IQ of a ­randomly chosen person. Then you seek the probability that X<90, which is equal to the probability that X≤90. Therefore, you can enter into cell C3 of the Normal ­worksheet the formula NORM.DIST(90,100,15,1), and Excel returns 0.252. Thus, 25.2 percent of all people have an IQ less than 90. ■ What fraction of all people have IQs from 95 through 120? When finding the probability that a≤X≤b, you use the form (area under the normal density function to the left of b)–(area under normal density function to the left of a). Thus, you can find the probability that a≤X≤b by entering the formula NORM.DIST(b,µ,s,1)– NORM.DIST(a,µ,s,1). This fact is illustrated in Figure 65-5, where clearly, the shaded area is (area to left of b)–(area to left of a). You can answer the question about IQs from 95 through 120 by entering into cell C4 of the worksheet Normal the formula NORMDIST(120,100,15,1)–NORMDIST(95,100,15,1). Excel returns the probability 0.539, so 53.9 percent of all people have an IQ from 95 through 120. Probability a<=X<=b Figure 65-5 Calculating the probability that a random variable is between a and b. ■ What fraction of all people have IQs of at least 130? To find the probability that X≥b, note in Figure 65-6 that the probability that X≥b equals 1–probability X<b. You can compute the probability that X≥b by entering the formula 1–NORM.DIST(b,µ,σ,1). Chapter 65 The Normal Random Variable 531 You seek the probability that X≥130. This equals 1–probability X<130. You enter in cell C5 of the worksheet Normal the formula 1–NORM.DIST(130,100,15,1). Excel returns 0.023, so you know that 2.3 percent of people have an IQ of at least 130. Probability X>=b Figure 65-6 Calculating that the probability random variable is greater than or equal to b. Can I use Excel to find percentiles for normal random variables? Consider a given normal random variable X with mean and standard deviation. In many ­situations, you want to answer questions such as the following: ■ A drug manufacturer believes that next year’s demand for its popular antidepressant will be normally distributed, with mean equal to 60 million days of therapy (DOT) and sigma equal to 5 million DOT. How many units of the drug should be produced this year if the company wants to have only a 1 percent chance of running out of the drug? ■ Family income in Bloomington, Indiana, is normally distributed, with mean equal to $30,000 and sigma equal to $8,000. The poorest 10 percent of all families in Bloomington are eligible for federal aid. What should the aid cutoff be? In the first example, you want to determine the ninety-ninth percentile of demand for the antidepressant. That is, you seek the number x such that there is only a 1 percent chance that demand will exceed x and a 99 percent chance that demand will be less than x. In the second example, you want the tenth percentile of family income in Bloomington. That is, you seek the number x such that there is only a 10 percent chance that family income will be less than x and a 90 percent chance that family income will exceed x. Suppose you want to find the pth percentile (expressed as a decimal) of a normal random variable X with a mean and a standard deviation. In Excel 2010, simply enter the formula NORM.INV(p,µ,σ) into Excel. This formula returns a number x such that the probability that X≤x equals the specified percentile. You now can solve our examples. You’ll find these ­exercises on the Normal worksheet in the file Normalexamples.xlsx. For the drug manufacturing example, let X equal annual demand for the drug. You want a value x such that the probability that X≥x equals 0.01 or the probability that X<x equals 0.99. Again, you seek the ninety-ninth percentile of demand, which you find (in millions) by entering in cell C7 the formula NORM.INV(0.99,60,5). Excel returns 71.63, so the company must produce 71,630,000 DOT. This assumes, of course, that the company begins the year with no supply of the drug on hand. If, for example, they had a beginning inventory of 10 million DOT, they would need to produce 61,630,000 DOT during the current year. 532 Microsoft Excel 2010: Data Analysis and Business Modeling To determine the cutoff for federal aid, if X equals the income of a Bloomington f­ amily, you seek a value of x such that the probability that X≤x equals 0.10, or the tenth ­percentile of Bloomington family income. You find this value with the formula NORM. INV(0.10,30000,8000). Excel returns $19,747.59, so aid should be given to all families with ­incomes smaller than $19,749.59. Why is the normal random variable appropriate in many real-world situations? A well-known mathematical result called the Central Limit Theorem indicates that if you add together many (usually at least 30 is sufficient) independent random variables, their sum is normally distributed. This result holds true even if the individual random variables are not normally distributed. Many quantities (such as measurement errors) are created by adding together many independent random variables, which explains why the normal random ­variable occurs often in the real world. Here are some other situations in which you can use the Central Limit Theorem. ■ The total demand for pizzas during a month at a supermarket is normally distributed, even if the daily demand for pizzas is not. ■ The amount of money you win if you play craps 1,000 times is normally distributed, even though the amount of money you win on each individual play is not. Another important mathematical result shows how to find the mean, variance, and standard deviations of sums of independent random variables. If you are adding together independent random variables X1, X2,…, Xn where mean Xi=µi, and standard deviation Xi=σi then the ­following are true: 1. Mean (X1+X2+…Xn)=µ1+µ2+…µn 2. Variance (X1+X2+…Xn)= 21 + 2 2 + ... 2n 3. Standard deviation (X1+X2+…Xn)= 2 1 + 2 2 + ... 2n Note that 1 is true even when the random variables are not independent. By combining 1 through 3 with the Central Limit Theorem, you can solve many complex probability problems, such as the demand for pizza. Our pizza solution is in the Central Limit worksheet in the file Normalexamples.xlsx, which is shown in Figure 65-7. Figure 65-7 Using the Central Limit Theorem. Chapter 65 The Normal Random Variable 533 Even though the daily demand for frozen pizzas is not normally distributed, you know from the Central Limit Theorem that the 30-day demand for frozen pizzas is normally distributed. Given this, 1 through 3 above imply the following: ■ From 1, the mean of a 30-day demand equals 30(45)=1,350. ■ From 2, the variance of a 30-day demand equals 30(12)2=4,320. ■ From 3, the standard deviation of a 30-day demand equals 4320 = 65.73 Thus, the 30-day demand for pizzas can be modeled following a normal random variable with a mean of 1,350 and a standard deviation of 65.73. In cell D11, I compute the probability that at least 1,400 pizzas are sold as the probability that the normal approximation is at least 1,399.5 (note that a demand of 1,399.6, for example, would round up to 1,400) with the formula 1–NORM.DIST(1399.5,D7,D9,TRUE). I find the probability that demand in a 30-day period for at least 1,400 pizzas is 22.6 percent. The number of pizzas that you must stock to have only a 1 percent chance of running out of pizzas is just the ninety-ninth percentile of the demand distribution. You determine the ­ninety-ninth percentile of the demand distribution (1,503) in cell D12 with the formula NORM.INV(0.99,D7,D9). Therefore, at the beginning of a month, you should bring your stock of pizzas up to 1,503 if you want to have only a 1 percent chance of running out of pizzas. Problems 1. Suppose you can set the mean number of ounces of soda that is put into a can. The actual number of ounces has a standard deviation of 0.05 ounces. ❑ If you set the mean at 12.03 ounces, and a soda can is acceptable if it contains at least 12 ounces, what fraction of cans is acceptable? ❑ What fraction of cans have less than 12.1 ounces? ❑ What should you set the mean to if you want at most 1 percent of your cans to contain at most 12 ounces? Hint: Use the Goal Seek command. 2. Annual demand for a drug is normally distributed with a mean of 40,000 units and a standard deviation of 10,000 units. ❑ What is the probability that annual demand is from 35,000 through 49,000 units? ❑ If you want to have only a 5 percent chance of running out of the drug, at what level should you set annual production? 534 Microsoft Excel 2010: Data Analysis and Business Modeling 3. The probability of winning a game of craps is 0.493. If I play 10,000 games of craps and bet the same amount on each game, what is the probability that I’m ahead? Begin by determining the mean and standard deviation of the profit on one game of craps. Then use the Central Limit Theorem. 4. Weekly sales of Volvo’s Cross Country station wagons are normally distributed with a mean of 1,000 and standard deviation of 250. ❑ What is the probability that during a week, from 400 through 1,100 station ­wagons are sold? ❑ There is a 1 percent chance that fewer than what number of station wagons is sold during a week? Chapter 66 Weibull and Beta Distributions: Modeling Machine Life and Duration of a Project Questions answered in this chapter: ■ How can I estimate the probability that a machine will work without failing for at least 20 hours? ■ How can I estimate the probability that hanging drywall in a building will take more than 200 hours? The Weibull random variable is a continuous random variable that is often used to model the lifetime of a machine. If you have data about how long similar machines have lasted in the past, you can estimate the two parameters (alpha and beta) that define a Weibull random variable. You can then use the WEIBULL.DIST function in Microsoft Excel 2010 to determine probabilities of interest, such as an estimate of how long a machine will run without failing. The Beta random variable is a continuous random variable that’s often used to model the duration of an activity. Given estimates of the minimum duration, maximum duration, mean duration, and the standard deviation of the duration, you can use the BETA.DIST function in Excel 2010 to determine probabilities of interest. Answers to This Chapter’s Questions How can I estimate the probability that a machine will work without failing for at least 20 hours? Suppose you have observed the lifetime of seven similar machines. The data collected about the machines is contained in the file Weibullest.xlsx, shown in Figure 66-1. Figure 66-1 Machine lifetime data. 535 536 Microsoft Excel 2010: Data Analysis and Business Modeling Reliability engineers have found that the Weibull random variable is usually appropriate for modeling machine lifetimes. The Weibull random variable is specified by two parameters: alpha and beta. Based on the data, you can determine (using the AVERAGE and STDEV.S functions in cells B13 and B14) that, on average, a machine lasts 18.68 hours, with a standard deviation of 7.40 hours. By copying these values to cells G6 and G11 and running the Solver with the settings shown in Figure 66-2, you can find estimates of alpha and beta that ensure that the Weibull random variable will have a mean and standard deviation matching the data. In this case, alpha equals 2.725 and beta equals 21.003, as you can see in Figure 66-3. Any value you enter for alpha and beta in cells E2 and E3 for a Weibull random variable yields a mean (computed in cell E6) and standard deviation (computed in cell E11). The Solver model varies alpha and beta until the mean and standard deviation of the Weibull distribution equal the mean and standard deviation of machine lifetime computed from your data. I recommend using the Multistart option for the GRG Nonlinear engine. The Multistart engine works best with upper and lower bounds on the changing cells. A lower bound of 0.010 on alpha and beta will always work. I tried an upper bound of 1,000 for alpha and beta. If the Solver makes alpha or beta bump up against your upper bound, you should relax the bound. Figure 66-2 Solver settings for determining parameters for a Weibull random variable. Chapter 66 Weibull and Beta Distributions: Modeling Machine Life and Duration of a Project 537 Figure 66-3 Estimates of alpha and beta for a Weibull random variable. Here’s the syntax of the WEIBULL.DIST function: WEIBULL.DIST(x,alpha,beta,Cumulative) When Cumulative equals True, this formula results in the probability that a Weibull ­random variable with parameters alpha and beta is less than or equal to x. Changing True to False yields the height of the Weibull probability density function (pdf). Remember from Chapter 62, “An Introduction to Random Variables,” that the height of a pdf for any value x of a continuous random variable indicates the likelihood that the random variable assumes a value near x. Thus, if the Weibull density for 20 hours were twice the Weibull density for 10 hours, you would know that a machine is twice as likely to work for 20 hours before failing than to work for 10 hours before failing. Before answering some questions involving probabilities of interest, I’ll note that in prior versions of Excel, the WEIBULLDIST function yields the same ­results as WEIBULL.DIST. ■ What is the probability that a machine will last at least 20 hours? This ­ robability (41.7 percent) is computed in cell G16 with the formula p 1–WEIBULL.DIST(20,alpha,beta,1). Essentially, this formula computes the area under the Weibull pdf to the right of 20 hours by subtracting from 1 the area to the left of 20 hours. ■ What is the probability that a machine will last from 15 through 30 hours? This probability (66.9 percent) is computed in cell G18 with the formula WEIBULL.DISTL(30,alpha,beta,TRUE)–WEIBULL.DIST(15,alpha,beta,TRUE). This formula finds the area under the Weibull pdf from 15 through 30 hours by computing the area to the left of 30 hours minus the area to the left of 15 hours. After you subtract the probability of a machine working without failure for less than 15 hours from the ­probability of a machine working without failure for less than or equal to 30 hours, you are left with the probability that a machine will work without failure from 15 through 30 hours. 538 Microsoft Excel 2010: Data Analysis and Business Modeling How can I estimate the probability that hanging drywall in a building will take more than 200 hours? Since the development of the Polaris missile in the 1950s, project managers have modeled activity durations with the Beta random variable. To specify a Beta random variable, you need to specify a minimum value, a maximum value, and two parameters (alpha and beta). The data in the file Beta.xlsx (see Figure 66-4) can be used to estimate the parameters of a Beta distribution. Figure 66-4 Determining probabilities with the Beta random variable. Suppose that you believe that the time needed to hang drywall in a building is sure to be between 0 and 600 hours. These are your minimum and maximum values, entered in cells C7 and C8. The cell range F8:F22 contains the lengths of time needed to hang drywall in 15 buildings of a similar size. In cell F5, I used the AVERAGE function to compute the mean time (78.49 hours) needed to hang drywall in these 15 buildings. In cell F6, I used the STDEV function to determine the standard deviation (47.97 hours) of the time needed to hang drywall in these buildings. Any choice of values of alpha and beta determine the shape of the Beta distribution’s pdf and the mean and standard deviation for the corresponding Beta random variable. If you can choose alpha and beta values to match the mean and standard deviation of the drywall installation times computed from this data, it seems reasonable that these alpha and beta values will yield probabilities consistent with the observed data. After you enter the mean and standard deviation for the drywall installation data in cells C9 and C10, the worksheet computes values for alpha (2.20) in cell C5 and beta (14.66) in cell C6 that ­ensure that the mean and standard deviation of the Beta random variable match the mean and standard deviation of the data. Chapter 66 Weibull and Beta Distributions: Modeling Machine Life and Duration of a Project 539 The function BETA.DIST(x,alpha,beta, True or 1,lower,upper) determines the probability that a Beta random variable ranging from lower through upper, with parameters alpha and beta, assumes a value less than or equal to x. The last two parameters are optional, and if they are omitted, Excel assumes lower equals 0 and upper equals 1. The function BETA.DIST(x,alpha,beta,False or 0,lower,upper) returns the pdf for a random variable ­following a Beta distribution. You can now use the BETA.DIST function to determine probabilities of interest. To compute the probability that hanging drywall will take at least 200 hours, you can use the formula in cell C15, 1–BETA.DIST(200,alpha,beta,True or 1,lower,upper). The result is 2.1 ­percent. This formula simply computes the probability that hanging drywall will take at least 200 hours as 1–probability dry walling takes less than or equal to 200 hours. The probability that hanging drywall will take at most 80 hours (58.3 percent) can be computed with the formula in cell C16, BETA.DIST(80,alpha,beta,True,lower,upper). And to compute the probability that the task will take from 30 through 150 hours (77.1 percent), in cell C17 I used the formula BETA.DIST(150,alpha,beta,True,lower,upper)–BETA. DIST(30,alpha,beta,True, lower,upper). This formula computes the probability that dry walling takes from 30 through 150 hours as the probability that dry walling takes less than or equal to 150 hours minus the probability that dry walling takes less than or equal to 30 hours. The difference between these probabilities counts only instances when dry walling takes from 30 through 150 hours. Problems The data for this chapter’s problems is contained in the file Ch66data.xlsx. 1. In the Problem 1 worksheet, you are given data about the duration of a machine’s lifetime. ❑ What is the probability that the machine will last at least 10 hours? ❑ What is the probability that the machine will last from 1 through 5 hours? ❑ What is the probability that the machine will fail within 6 hours? 2. You need to clean your house today. In the Problem 2 worksheet, you are given data about how long it has taken to clean your house in the past. If you start cleaning at noon, what are the chances that you’ll be finished in time to leave at 7:00 P.M. for a movie? Chapter 67 Making Probability Statements from Forecasts Questions answered in this chapter: ■ On what basis do we evaluate forecasts? ■ If a drug company forecasts that it will sell 60 million units of a drug next year, what is the chance it will sell more than 65 million units of that drug next year? Each day we are constantly inundated by forecasts. Here are some examples: ■ The government predicts the GNP will grow by 4 percent during the next year. ■ The Eli Lilly marketing department predicts that during the next year demand for a given drug will be 400,000,000 DOT (days of therapy). ■ A Wall Street guru predicts the Dow will go up 20 percent during the next 12 months. ■ The bookmakers forecast that the Indiana Pacers will beat the Houston Rockets by six in the opening game of the 2015 NBA season. Although the forecasts we receive may be the best available, they are almost sure to be incorrect. For example, the bookmaker’s prediction that the Pacers will win by six points is incorrect unless the Pacers win by exactly six points. In short, any single value (or point ­forecast) implies a distribution for the quantity being forecasted. How can you take a point forecast and find a random variable that correctly models the uncertainty inherent in the point forecast? The key to putting a distribution around a point forecast is to have some ­historical data about the accuracy of past forecasts of the quantity of interest. For example, with regard to the forecast for the Dow Industrial Average, you might have for the last 10 years the forecast made in January of each year for the percentage change in the Dow and the actual change in the Dow for each of the 10 years. 541 542 Microsoft Excel 2010: Data Analysis and Business Modeling Answers to This Chapter’s Questions On what basis do we evaluate forecasts? You can begin by seeing whether past forecasts exhibit any bias. For each past f­ orecast, you determine the actual value/forecasted value. Then you average these ratios. If your forecasts are unbiased, this average should be around 1. Any significant deviation from 1 indicates a significant bias. For example, if the average of actual/forecasted is 2, a ­ ctual results tend to be around twice the forecast. To correct for a bias, you should ­automatically double your ­forecast. If the average of actual/forecasted is .5, actual results tend to be around half the actual forecast, so to eliminate bias you should a ­ utomatically halve your forecast. After you eliminate forecast bias, you look at the standard deviation of the percentage errors of the unbiased forecast and use the f­ ollowing normal random variable to model the quantity ­being forecasted: ■ Mean = the unbiased forecast ■ Standard deviation = (unbiased forecast)*(standard deviation of the percentage errors associated with the unbiased forecasts). The standard deviation of the percentage errors measures the accuracy of the past forecasts. Clearly, a smaller standard deviation of percentage forecast errors is preferred to a larger standard deviation. The file Drugfore.xlsx (see Figure 67-1) illustrates the ideas of forecast bias and forecast ­accuracy. The file contains actual and forecasted sales (in millions of DOT) for the years 2005–2012. I’ll first show that these forecasts are biased and then correct for the bias. Figure 67-1 Correcting for forecast bias and measuring forecast accuracy. Chapter 67 Making Probability Statements from Forecasts 543 To begin, in cells F5:F12 I check for bias by computing for each year actual sales/forecasted sales. To do this, I copy from F5 to F6:F12 the formula D5/E5. Next, in cell F2, I compute the bias of the original forecasts by averaging each year’s actual/ forecasted value with the formula AVERAGE(F5:F12). I find that actual sales tend to come in 8 percent under forecast. To correct past biased forecasts, I multiply them by .92 by copying from G5 to G6:G12 the formula $F$2*E5. In H5:H12 I compute each year’s percentage error for the unbiased forecast by copying from H5 to H6:H12 the formula (D5-G5)/G5. As you can see, for example, 2005 actual sales were 16 percent less than the unbiased forecast, while in 2011 actual sales were 19 percent larger than the unbiased forecast. Now I evaluate the accuracy of the forecast errors in cell I2 by computing the standard ­deviation of the percentage errors with the formula STDEV.S(H5:H12). I find the standard ­deviation of past unbiased forecasts has been around 11.4 percent of the unbiased forecast. If a drug company forecasts it will sell 60 million units of a drug in 2013 what is the chance it will sell more than 65 million units of the drug in 2013? Forecast errors often follow a normal random variable. Therefore, after correcting for bias, you can assume forecast errors follow a normal random variable with ■ Mean = the unbiased forecast. ■ Standard deviation = (unbiased forecast)*(standard deviation of the percentage errors associated with the unbiased forecasts). In our example, this means that you should model drug sales in 2013 as a normal random variable with mean = 60(.918) = 55.08 million and standard deviation = (.11375)*55.08 = 6.27 million. You can now use the Excel NORM.DIST function to compute in cell E18 (see Figure 65-2) the chance of selling at least 65 million units in 2013 with the formula 1-NORM.DIST(65,F15,F16,TRUE). There is a 5.7 percent chance of selling more than 65 million units of the drug. Figure 67-2 Chance of selling more than 65 million units of drug. 544 Microsoft Excel 2010: Data Analysis and Business Modeling Problems 1. In Game 7 of the Boston Celtics-Los Angeles Lakers 2010 NBA finals, the Lakers were favored by seven points. Looking at past NBA games, you will find that bookmakers’ forecasts are unbiased. Also, the standard deviation of bookmaker forecasts in past NBA games is 12 points. Before the game, what would you have estimated as the ­probability that the Lakers would win the game? 2. A leading cell phone company forecasts that it will sell 3 million units next year of its bestselling phone. In the past, actual sales have been unbiased with forecast errors having a standard deviation equal to 10 percent of forecasted sales. What are the chances that less than 2.5 million phones will be sold next year? 3. The file USC.xlsx contains the USC football team’s margins of victory for the years 2005–2009 and the bookmaker’s forecast (before the game) for the USC margin of victory. Does this data indicate that the bookmaker’s forecasts are unbiased? If USC is favored by 10 points, estimate the chance that USC wins the game. Chapter 68 Using the Lognormal Random Variable to Model Stock Prices Questions answered in this chapter: ■ What is the lognormal random variable? ■ Is there a reason stock prices might follow a lognormal random variable? ■ How can I model the future price of any stock as a lognormal random variable? ■ How can I compute the probability that Microsoft’s stock price will exceed $38 a year from now? Many people are interested in modeling the future price of a stock, a commodity such as oil or wheat, or a future exchange rate. For the last 40 years, the lognormal random variable has been the random variable most often used to model stock prices. In this chapter you will learn about why the lognormal random variable is a reasonable model for stock prices, and how to determine the appropriate lognormal parameters for any stock. I’ll close the chapter by showing how the Excel LOGNORM.DIST and LOGNORM.INV functions can be used to ­calculate probabilities that involve the future price of a stock. Answers to This Chapter’s Questions What is a lognormal random variable? A random variable Y follows a lognormal random variable if ln Y follows a normal random variable. When using the Excel LOGNORM.DIST and LOGNORM.INV functions, a lognormal random variable Y is characterized by two parameters: a mean Mu equal to the expected value of ln Y, and a standard deviation Sigma equal to the standard deviation of ln Y. Is there a reason stock prices might follow a lognormal random variable? Let Y equal the price of a stock n days from now, P equal the stock’s price today, and Xt equal the percentage change in the stock’s price during day t. Then Y = P*X1*X2*…Xn . Because the logarithm of a product is the sum of the logarithms, it’s true that ln Y = ln P + ln X1 + ln X2 +… ln Xn. Suppose the changes in prices on different days are independent random variables. Recall from Chapter 65, “The Normal Random Variable,” that the Central Limit Theorem implies that the sum of many independent random variables will be a normal random variable, even if the individual random variables are not normally distributed. This explains why ln Y is likely to be a normal random variable, and this implies that Y is a lognormal random variable. 545 546 Microsoft Excel 2010: Data Analysis and Business Modeling How can I model the future price of any stock as a lognormal random variable? At the close of trading on August 26, 2010, the price of Microsoft stock was $24.10. Suppose you are interested in modeling the price of Microsoft stock in six months as a lognormal random variable. How can you estimate Mu and Sigma? Luckily, information is easily a ­ vailable on the Internet to help you model the future price of a stock. The website Ivolatility.com provides an estimate of a stock’s annual volatility (call it Sigma_). The annual volatility is a surrogate for a stock’s riskiness or variability. At the close of trading on August 26, 2010, Microsoft’s implied volatility (see Figure 68-1) was 27.18 percent. To represent Sigma_ as a decimal, you write Sigma_ = .2718. (The method used to compute implied volatility is ­discussed in Chapter 74, “Pricing Stock Options.”) Figure 68-1 Implied volatility for Microsoft stock. From the Investment section of finance.yahoo.com, you can find the consensus opinion of analysts for the price of Microsoft in a year, shown in Figure 68-2. Figure 68-2 Analyst’s forecasts for Microsoft stock price in one year. Let S equal today’s stock price, and S1 equal the estimated mean price in one year. Then Mu_, a surrogate for the annual mean return on the stock, can be estimated by Mu_= ln (S1/S0). You know that S equals $24.10 and S1 equals $33.06. Therefore (as computed in cell F7 of the file Lognormal.xlsx; see Figure 68-3), Mu_ = ln (33.06/24.10) = .322. Chapter 68 Using the Lognormal Random Variable to Model Stock Prices 547 Figure 68-3 Using the Lognormal to model the price of Microsoft stock in six months. If you want to model the price of Microsoft stock t years in the future, you need to know Mut = Mean of ln of Microsoft stock price in t years and Sigmat = Standard deviation of ln of Microsoft stock price in t years. It turns out that Mut= ln S +t(Mu_-.5Sigma_^2) and Sigma = Sigma_* t . For six months t =.5 years. In cell E9, I computed Mu.5 as ln(24.10)+..5*(.322144-.5*(.2718)2) = 3.324815. In cell E10 I computed Sigma.5 = (.2718)* .5 = .192192. Therefore, you can model the price of Microsoft in six months as a lognormal random ­variable with Mu = 3.324815 and Sigma = .192192. How can I compute the probability that Microsoft’s stock price will exceed $38 a year from now? The Excel 2010 function LOGNORM.DIST(x, Mean, Sigma, True or 1) computes the probability that a lognormal random variable with parameters Mean and Sigma is less than or equal to x. Changing True or 1 to False or 0, returns the height of the lognormal pdf at x. In previous versions of Excel, the function LOGNORMDIST returns the same results as LOGNORM.DIST. In cell F13, I determine the chance that the price of a share of Microsoft will exceed $38. This is calculated by 1 – Probability that share is <$38, so I use the f­ ormula 1-LOGNORM.DIST(38,F9,F10,True). There is only a 5.2 percent chance that a share of Microsoft will sell for more than $38 in six months. In cell F14 I determine the chance that a share of Microsoft will sell for less than or equal to $20 in six months with the formula LOGNORM.DIST(20,F9,F10,True). There is a 4.3 percent chance that a share of Microsoft will sell for $20 or less in six months. 548 Microsoft Excel 2010: Data Analysis and Business Modeling Suppose you want to determine the median price of Microsoft stock in six months. This is a price $x such that there is a 50 percent chance that the Microsoft stock price in six months will be less than or equal to $x. In cell F15 I find the median price in six months with the ­formula LOGNORM.INV(0.5,F9,F10). The median price in six months is $27.79. Remarks ■ In Chapter 74, I discuss the famous Black-Scholes option-pricing formula. The BlackScholes formula assumes that the price of a stock does follow a lognormal random variable. ■ In recent years it has become apparent that for many stocks, future stock prices take on extremely high or low values more often than the lognormal random variable predicts. This has caused analysts to search for other random variables with “fat tails” that can be used to model future stock prices. For more details on this topic, see Nicholas Taleb’s best-selling book The Black Swan. Also, in Chapter 71, “Simulating Stock Prices and Asset Allocation Modeling,” I discuss an alternative method for modeling stock prices that does not assume that future stock prices follow a lognormal random variable. Problems Suppose a stock sells for $30 today. The annual volatility of the stock is 35 percent, and ­analysts predict the expected price of the stock in a year will be $35. Use this information to answer Questions 1–3. 1. What is the probability that in two years the stock will sell for more than $45? 2. What is the probability that in two years the stock will sell for less than $25? 3. You are 95 percent sure that the price of the stock in two years will be between what two values? Hint: Use .025 and .975 as the first arguments in the LOGNORM.INV function. Chapter 69 Introduction to Monte Carlo Simulation Questions answered in this chapter: ■ Who uses Monte Carlo simulation? ■ What happens when I type =RAND() in a cell? ■ How can I simulate values of a discrete random variable? ■ How can I simulate values of a normal random variable? ■ How can a greeting card company determine how many cards to produce? Data analysts would like to accurately estimate the probabilities of uncertain events. For ­example, what is the probability that a new product’s cash flows will have a positive net ­present value (NPV)? What is the risk factor of an investment portfolio? Monte Carlo ­simulation enables you to model situations that present uncertainty and then play them out on a computer thousands of times. Note The term Monte Carlo simulation comes from the computer simulations performed ­during the 1930s and 1940s to estimate the probability that the chain reaction needed for an atom bomb to detonate would work successfully. The physicists involved in this work were big fans of gambling, so they gave the simulations the code name Monte Carlo. In the next five chapters, I provide some examples of how you can use Microsoft Excel 2010 to perform Monte Carlo simulations. Answers to This Chapter’s Questions Who uses Monte Carlo simulation? Many companies use Monte Carlo simulation as an important part of their decision-making process. Here are some examples. ■ General Motors, Proctor and Gamble, Pfizer, Bristol-Myers Squibb, and Eli Lilly use ­simulation to estimate both the average return and the risk factor of new products. At GM, this information was used by former CEO Rick Waggoner to determine which products came to market. 549 550 Microsoft Excel 2010: Data Analysis and Business Modeling ■ GM uses simulation for activities such as forecasting net income for the corporation, predicting structural and purchasing costs, and determining its susceptibility to different kinds of risk (such as interest rate changes and exchange rate fluctuations). ■ Lilly uses simulation to determine the optimal plant capacity for each drug. ■ Proctor and Gamble uses simulation to model and optimally hedge foreign exchange risk. ■ Sears uses simulation to determine how many units of each product line should be ordered from suppliers—for example, the number of pairs of Dockers trousers that should be ordered this year. ■ Oil and drug companies use simulation to value “real options,” such as the value of an option to expand, contract, or postpone a project. ■ Financial planners use Monte Carlo simulation to determine optimal investment ­strategies for their clients’ retirement. What happens when I type =RAND() in a cell? When you type the formula =RAND() in a cell, you get a number that is equally likely to ­assume any value between 0 and 1. Thus, around 25 percent of the time, you should get a number less than or equal to 0.25; around 10 percent of the time you should get a number that is at least 0.90, and so on. To demonstrate how the RAND function works, take a look at the file Randdemo.xlsx, shown in Figure 69-1. Figure 69-1 Demonstrating the RAND function. Chapter 69 Introduction to Monte Carlo Simulation 551 Note When you open the Sheet1 worksheet in the file Randdemo.xlsx, you will not see the same random numbers shown in Figure 69-1. The RAND function always recalculates the numbers it generates when a worksheet is opened or when new information is entered in the worksheet. The Frozen worksheet has its values fixed to correspond to the figure above. I copied from cell C3 to C4:C402 the formula =RAND(). I named the range C3:C402 Data. Then, in column F, I tracked the average of the 400 random numbers (cell F2) and used the COUNTIF function to determine the fractions that are between 0 and 0.25, 0.25 and 0.50, 0.50 and 0.75, and 0.75 and 1. When you press the F9 key, the random numbers are recalculated. Notice that the average of the 400 numbers is always approximately 0.5, and that around 25 percent of the results are in intervals of 0.25. These results are consistent with the definition of a random number. Also note that the values generated by RAND in different cells are independent. For example, if the random number generated in cell C3 is a large number (for example, 0.99), that tells you nothing about the values of the other random numbers generated. How can I simulate values of a discrete random variable? Suppose the demand for a calendar is governed by the following discrete random variable: Demand Probability 10,000 0.10 20,000 0.35 40,000 0.3 69,000 0.25 How can you have Excel play out, or simulate, this demand for calendars many times? The trick is to associate each possible value of the RAND function with a possible demand for ­calendars. The following assignment ensures that a demand of 10,000 will occur 10 percent of the time, and so on. Demand Random number assigned 10,000 Less than 0.10 20,000 Greater than or equal to 0.10, and less than 0.45 40,000 Greater than or equal to 0.45, and less than 0.75 69,000 Greater than or equal to 0.75 To demonstrate the simulation of demand, look at the Sim worksheet in the file Discretesim.xlsx (or its Frozen version shown in Figure 69-2). 552 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 69-2 Simulating a discrete random variable. The key to this simulation is to use a random number to initiate a lookup from the table range F2:G5 (named lookup). Random numbers greater than or equal to 0 and less than 0.10 will yield a demand of 10,000; random numbers greater than or equal to 0.10 and less than 0.45 will yield a demand of 20,000; random numbers greater than or equal to 0.45 and less than 0.75 will yield a demand of 40,000; and random numbers greater than or equal to 0.75 will yield a demand of 69,000. I generated 400 random numbers by copying from C3 to C4:C402 the formula RAND(). I then generated 400 trials, or iterations, of calendar demand by copying from B3 to B4:B402 the formula VLOOKUP(C3,lookup,2). This formula ensures that any random number less than 0.10 generates a demand of 10,000, any random number between 0.10 and 0.45 generates a demand of 20,000, and so on. In the cell range F8:F11, I used the COUNTIF function to determine the fraction of the 400 iterations yielding each demand. When I press F9 to recalculate the random numbers, the simulated probabilities are close to the assumed demand probabilities. How can I simulate values of a normal random variable? If you type in any cell the formula NORM.INV(rand(),mu,sigma), you will generate a s­ imulated value of a normal random variable having a mean mu and standard deviation s­ igma. I’ve ­illustrated this procedure in the Sim worksheet in the file Normalsim.xlsx (see Figure 69-3 for the Frozen version). Chapter 69 Introduction to Monte Carlo Simulation 553 Figure 69-3 Simulating a normal random variable. Let’s suppose you want to simulate 400 trials for a normal random variable with a mean of 40,000 and a standard deviation of 10,000. (I typed these values in cells E1 and E2, and named these cells mean and sigma, respectively.) Copying the formula =RAND() from C4 to C5:C403 generates 400 different random numbers. Copying from B4 to B5:B403 the formula NORM.INV(C4,mean,sigma) generates 400 different trial values from a normal random variable with a mean of 40,000 and a standard deviation of 10,000. When I press the F9 key to recalculate the random numbers, the mean remains close to 40,000 and the standard ­deviation close to 10,000. Essentially, for a random number p, the formula NORM.INV(p,mean,sigma) generates the pth percentile of a normal random variable with a mean mu and a standard deviation s­ igma. For example, the random number 0.87 in cell C4 (see Figure 69-3) generates in cell B4 ­approximately the eighty-seventh percentile of a normal random variable with a mean of 40,000 and a standard deviation of 10,000. 554 Microsoft Excel 2010: Data Analysis and Business Modeling How can a greeting card company determine how many cards to produce? In this section, I’ll demonstrate how Monte Carlo simulation can be used as a decision-­ making tool. Suppose that the demand for a Valentine’s Day card is governed by the ­following discrete random variable: Demand Probability 10,000 0.10 20,000 0.35 40,000 0.3 69,000 0.25 The greeting card sells for $4.00, and the variable cost of producing each card is $1.50. Leftover cards must be disposed of at a cost of $0.20 per card. How many cards should be printed? Basically, you simulate each possible production quantity (10,000, 20,000, 40,000, or 69,000) many times (for example, one thousand iterations). Then you determine which order quantity yields the maximum average profit over the one thousand iterations. You can find the data for this section in the Sim worksheet in the file Valentine.xlsx (the Frozen version is shown in Figure 69-4). I assigned the range names in cells B1:B11 to cells C1:C11. I assigned the cell range G3:H6 the name lookup. The sales price and cost parameters are entered in cells C4:C6. Figure 69-4 Valentine’s Day card simulation. I then enter a trial production quantity (40,000 in this example) in cell C1. Next I create a random number in cell C2 with the formula =RAND(). As previously described, I simulate demand for the card in cell C3 with the formula VLOOKUP(rand,lookup,2). (In the VLOOKUP formula, rand is the cell name assigned to cell C3, not the RAND function.) The number of units sold is the smaller of the production quantity and demand. In cell C8, I compute revenue with the formula MIN(produced,demand)*unit_price. In cell C9, I compute total production cost with the formula produced*unit_prod_cost. Chapter 69 Introduction to Monte Carlo Simulation 555 If more cards are produced than are in demand, the number of units left over equals ­production minus demand; otherwise no units are left over. I compute the disposal cost in cell C10 with the formula unit_disp_cost*IF(produced>demand,produced–demand,0). Finally, in cell C11, I compute profit as revenue– total_var_cost-total_disposing_cost. It would be nice to have an efficient way to press F9 many times (for example, one thousand) for each production quantity and tally the expected profit for each quantity. This situation is one in which a two-way data table comes to the rescue. (See Chapter 17, “Sensitivity Analysis with Data Tables,” for details about data tables.) The data table I used in this example is shown in Figure 69-5. Figure 69-5 Two-way data table for greeting card simulation. In the cell range A16:A1015, I entered the numbers 1 to 1,000 (corresponding to the 1,000 trials). One easy way to create these values is to start by entering 1 in cell A16. Select the cell, and then on the Home tab in the Editing group, click Fill (the Icon with the down arrow), and select Series to display the Series dialog box. In the Series dialog box, shown in Figure 69-6, enter a step value of 1 and a stop value of 1,000. In the Series In area, select the Columns ­option, and then click OK. The numbers 1 through 1,000 will be entered in column A starting in cell A16. 556 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 69-6 Using the Series dialog box to fill in the trial numbers 1 through 1,000. Next I enter the possible production quantities (10,000, 20,000, 40,000, 69,000) in cells B15:E15. I want to calculate profit for each trial number (1 through 1,000) and each ­production quantity. I refer to the formula for profit (calculated in cell C11) in the upper-left cell of the data table (A15) by entering =C11. You can now trick Excel into simulating one thousand iterations of demand for each ­production quantity. Select the table range (A15:E1014), and then in the Data Tools group on the Data tab, click What If Analysis, and then select Data Table. To set up a two-way data table, choose the production quantity (cell C1) as the row input cell and select any blank cell (I chose cell I14) as the column input cell. After you click OK, Excel simulates one thousand demand values for each order quantity. To understand why this works, consider the values placed by the data table in the cell range C16:C1015. For each of these cells, Excel uses a value of 20,000 in cell C1. In C16, the column input cell value of 1 is placed in a blank cell, and the random number in cell C2 recalculates. The corresponding profit is then recorded in cell C16. Then the column input cell value of 2 is placed in a blank cell, and the random number in C2 again recalculates. The corresponding profit is entered in cell C17. By copying from cell B13 to C13:E13 the formula AVERAGE(B16:B1015), you can compute ­average simulated profit for each production quantity. By copying from cell B14 to C14:E14 the formula STDEV(B16:B1015), you can compute the standard deviation of the simulated profits for each order quantity. Each time you press F9, one thousand iterations of demand are simulated for each order quantity. Producing 40,000 cards always yields the largest ­expected profit, so producing 40,000 cards appears to be the proper decision. Chapter 69 Introduction to Monte Carlo Simulation 557 The Impact of Risk on Our Decision If you produce 20,000 instead of 40,000 cards, the expected profit drops approximately 22 percent, but risk (as measured by the standard deviation of profit) drops almost 73 percent. Therefore, if you are extremely averse to risk, producing 20,000 cards might be the right decision. Incidentally, producing 10,000 cards always has a standard deviation of 0 cards ­because if you produce 10,000 cards, you will always sell all of them without any leftovers. Note In this workbook I set the Calculation option to Automatic Except For Tables. (Use the Calculation command in the Calculation group on the Formulas tab.) This setting ensures that the data table does not recalculate unless you press F9, which is a good idea because a large data table will slow down your work if it recalculates every time you type something in your worksheet. Note that in this example, whenever you press F9, the mean profit changes. This happens because each time you press F9, a different sequence of one thousand random numbers is used to generate demands for each order quantity. Confidence Interval for Mean Profit A natural question to ask in this situation is, Into what interval will I be 95 percent sure that the true mean profit will fall? This interval is called the 95 percent confidence interval for mean profit. A 95 percent confidence interval for the mean of any simulation output is c­omputed by the following formula: _ Mean Profit + 1.96 * profitst.dev. number iterations In cell J11, I computed the lower limit for the 95 percent confidence interval on mean profit when 40,000 calendars are produced with the formula D13–1.96*D14/SQRT(1000). In cell J12, I computed the upper limit for the 95 percent confidence interval with the formula D13+1.96*D14/SQRT(1000). These calculations are shown in Figure 69-7. Figure 69-7 Ninety-five percent confidence interval for mean profit when 40,000 calendars are ordered. You can be 95 percent sure that your mean profit when 40,000 calendars are ordered is ­between $55,076 and $61,008. 558 Microsoft Excel 2010: Data Analysis and Business Modeling Problems 1. An auto dealer believes that demand for 2015 model cars will be normally distributed with a mean of 200 and a standard deviation of 30. His cost of receiving an Envoy is $25,000, and he sells an Envoy for $40,000. Half of all the Envoys not sold at full price can be sold for $30,000. He is considering ordering 200, 220, 240, 269, 280, or 300 Envoys. How many should he order? 2. A small supermarket is trying to determine how many copies of People magazine it should order each week. The owner believes the demand for People is governed by the following discrete random variable: Demand Probability 15 0.10 20 0.20 25 0.30 30 0.25 35 0.15 The supermarket pays $1.00 for each copy of People and sells it for $1.95. Each unsold copy can be returned for $0.50. How many copies of People should the store order? Chapter 70 Calculating an Optimal Bid Questions answered in this chapter: ■ How do I simulate a binomial random variable? ■ How can I determine whether a continuous random variable should be modeled as a normal random variable? ■ How can I use simulation to determine the optimal bid for a construction project? When bidding against competitors on a project, the two major sources of uncertainty are the number of competitors and the bids submitted by each competitor. If your bids are high, you’ll make a lot of money on each project, but you’ll get very few projects. If your bids are low, you’ll work on lots of projects but make very little money on each one. The optimal bid is somewhere in the middle. Monte Carlo simulation is a useful tool for determining the bid that maximizes expected profit. Answers to This Chapter’s Questions How do I simulate a binomial random variable? The formula BINOM.INV(n,p,rand()) simulates the number of successes in n independent trials, each of which has a probability of success equal to p. As explained in Chapter 69, “Introduction to Monte Carlo Simulation,” the RAND function generates a number equally likely to assume any value between 0 and 1. As shown in the file Binomialsim.xlsx (see Figure 70-1), when you press F9, the formula BINOM.INV(100,0.9,D3) entered in cell C3 simulates the number of free throws that Steve Nash (a 90-percent foul shooter in the NBA) makes in 100 attempts. The formula BINOM.INV(100,0.5,D4) in cell C4 simulates the number of heads tossed in 100 tosses of a fair coin. In cell C5, the formula BINOM.INV(3,0.4,D5) ­simulates the number of competitors entering the market during a year in which there are three possible entrants and each competitor is assumed to have a 40 percent chance of ­entering the market. Of course, in D3:D5, I entered the formula RAND(). 559 560 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 70-1 Simulating a binomial random variable. How can I determine whether a continuous random variable should be modeled as a ­normal random variable? Let’s suppose that you think the most likely bid by a competitor is $50,000. Recall that the normal probability density function (pdf) is symmetric about its mean. Therefore, to determine whether a normal random variable can be used to model a competitor’s bid, you need to test for symmetry about the bid’s mean. If the competitor’s bid exhibits symmetry about the mean of $50,000, bids of $40,000 and $60,000, $45,000 and $55,000, and so on should be approximately equally likely. If the symmetry assumption seems reasonable, you can then model each competitor’s bid as a normal random variable with a mean of $50,000. How can you estimate the standard deviation of each competitor’s bid? Recall from the rule of thumb discussed in Chapter 42, “Summarizing Data by Using Descriptive Statistics,” that data sets with symmetric histograms have roughly 95 percent of their data within two ­standard deviations of the mean. Similarly, a normal random variable has a 95 percent ­probability of being within two standard deviations of its mean. Suppose that you are 95 percent sure that a competitor’s bid will be between $30,000 and $70,000. This implies that 2*(standard deviation of competitor’s bid) equals $20,000, or the standard deviation of a ­competitor’s bid equals $10,000. If the symmetry assumption is reasonable, you can now simulate a competitor’s bid with the formula NORM.INV(rand(),50000,10000). (See Chapter 69 for details about how to model normal random variables using the NORM.INV function.) How can I use simulation to determine the optimal bid for a construction project? Let’s assume that you’re bidding on a construction project that will cost you $25,000 to complete. It costs $1,000 to prepare your bid. You have six potential competitors, and you estimate that there is a 50-percent chance that each competitor will bid on the project. If a competitor places a bid, its bid is assumed to follow a normal random variable with a mean equal to $50,000 and a standard deviation equal to $10,000. Also suppose you are only ­preparing bids that are exact multiples of $5,000. What should you bid to maximize expected Chapter 70 Calculating an Optimal Bid 561 profit? Remember, the low bid wins! You’ll find the work for this question in the file ­ Bidsim.xlsx, shown in Figures 70-2 and 70-3. Figure 70-2 Bidding simulation model. Figure 70-3 Bidding simulation data table. Your strategy should be as follows: ■ Generate the number of bidders. ■ For each potential bidder who actually bids, use the normal random variable to model the bid. If a potential bidder does not bid, you assign a large bid (for example, $100,000) to ensure that they do not win the bidding. ■ Determine whether you are the low bidder. 562 Microsoft Excel 2010: Data Analysis and Business Modeling ■ If you are the low bidder, you earn a profit equal to your bid, less project cost, less $1,000 (the cost of making the bid). If you are not the low bidder, you lose the $1,000 cost of the bid. ■ Use a two-way data table to simulate each possible bid (for example, $30,000, $35,000, … $60,000) one thousand times, and then choose the bid with the largest ­expected profit. To begin, I assigned the names in the cell range D1:D4 to the range E1:E4. I determine in cell E3 the number of bidders with the formula BINOM.INV(6,0.5,F3). Cell F3 contains the RAND() formula. Next I determine which of the potential bidders actually bid by copying from E9 to E10:E14 the formula IF(D9<=Number_bidders,”yes”,”no”). I then generate a bid for each bidder (nonbidders are assigned a bid of $100,000) by c­ opying from cell F9 to F10:F14 the formula IF(E9=”yes”,NORM.INV(G9,50000,10000),100000). Each cell in the cell range G9:G14 contains the RAND function. In cell D17, I determine ­whether I am the low bidder and win the project with the formula IF(mybid<=MIN(F9:F14),”yes”,”no”). In cell D19, I compute profit with the formula IF(D17=”yes”,mybid–costproject–cost_­bid,–cost_bid), recognizing that I receive only the amount of the bid and pay project costs if I win the bid. Now I can use a two-way data table (shown in Figure 70-3) to simulate one thousand bids between $30,000 and $60,000. I copy the profit to cell D22 by entering the formula =D19. Then I select the table range D22:K1022. On the Data tab, in the Data Tools group, I click What-If Analysis and then click Data Table to specify the input values for the data table. The column input cell is any blank cell in the worksheet, and the row input cell is E4 (the location of the bid). Clicking OK in the Data Table dialog box simulates the profit from each bid one thousand times. Copying from E21 to F21:K21 the formula AVERAGE(E23:E1022) calculates the mean profit for each bid. Each time I press F9, I see that the mean profit for one thousand trials is maximized by bidding $40,000. Problems 1. How would the optimal bid change if you had 12 competitors? 2. Suppose you are bidding for an oil well that you believe will yield $40 million (­including the cost of developing and mining the oil) in profits. Three competitors are bidding against you, and each competitor’s bid is assumed to follow a normal random variable with a mean of $30 million and a standard deviation of $4 million. What should you bid (within $1 million)? Chapter 70 Calculating an Optimal Bid 563 3. A commonly used continuous random variable is the uniform random variable. A uniform random variable—written as U(a,b)—is equally likely to assume any value between two given numbers a and b. Explain why the formula a+(b–a)*RAND() can be used to simulate U(a,b). 4. Investor Peter Fischer is bidding to take over a biotech company. The company is ­equally likely to be worth any amount between $0 and $200 per share. Only the ­company itself knows its true value. Peter is such a good investor that the market will immediately estimate the firm’s value at 50 percent more than its true value. What should Peter bid per share for this company? 5. Seattle Mariner baseball player Ichiro Suzuki is asking for salary arbitration on his ­contract. Salary arbitration in Major League Baseball works as follows: The player ­submits a salary that he thinks he should be paid, as does the team. The arbitrator (without seeing the salaries submitted by the player or the team) estimates a fair salary. The player is then paid the submitted salary that is closer to the arbitrator’s estimate. For example, suppose Ichiro submits a $12 million offer, and the Seattle Mariners submit a $7 million offer. If the arbitrator says a fair salary is $10 million, Ichiro will be paid $12 million, whereas if the arbitrator says a fair salary is $9 million, Ichiro will be paid $7 million. Assume that the arbitrator’s estimate is equally likely to be anywhere ­between $8 and $11 million, and the team’s offer is equally likely to be anywhere between $6 million and $9 million. Within $1 million, what salary should Ichiro submit? Chapter 71 Simulating Stock Prices and Asset Allocation Modeling Questions answered in this chapter: ■ I recently bought 100 shares of GE stock. What is the probability that during the next year this investment will return more than 10 percent? ■ I’m trying to determine how to allocate my investment portfolio between stocks, T-Bills, and bonds. What asset allocation over a five-year planning horizon will yield an ­expected return of at least 10 percent and minimize risk? The last few years have shown that future returns on investments are highly uncertain. In Chapter 68, I showed how to use the lognormal random variable to model stock prices. Many financial experts have been critical of using the lognormal random variable to model stock prices because the lognormal underestimates the probability of extreme events (often called “black swans”). In this chapter, I’ll explain a relatively simple approach to assessing ­uncertainty in future investment returns. This approach is based on the idea of bootstrapping. Essentially, bootstrapping simulates future investment returns by assuming that the future will be similar to the past. For example, if you want to simulate the stock price of GE in one year, you can assume that each month’s percentage change in price is equally likely to be one of, for example, the percentage changes for the previous 60 months. This method allows you to easily generate thousands of scenarios for the future value of your investments. In ­addition to scenarios that assume that future variability and average returns will be similar to the ­recent past, you can easily adjust bootstrapping to reflect a view that future returns on investments will be less or more favorable than in the recent past. After you’ve generated future scenarios for investment returns, it’s a simple matter to use the Microsoft Excel Solver to work out the asset allocation problem—that is, how should you allocate your investments to attain the level of expected return you want but with minimum risk? The following two examples demonstrate the simplicity and power of the bootstrapping approach. 565 566 Microsoft Excel 2010: Data Analysis and Business Modeling Answers to This Chapter’s Questions I recently bought 100 shares of GE stock. What is the probability that during the next year this investment will return more than 10 percent? Let’s suppose that GE stock is currently selling for $28.50 per share. Data for the monthly ­returns on GE (as well as for Microsoft and Intel) for the months between August 1997 and July 2002 is included in the file Gesim.xlsx, shown in Figure 71-1. For example, in the month ending on August 2, 2002 (basically, this is July 2002), GE lost 12.1 percent. These returns ­include dividends (if any) paid by each company. Figure 71-1 GE, Microsoft, and Intel stock data. The price of GE stock in one year is uncertain, so how can you get an idea about the range of variation in the price of GE stock one year from now? The bootstrapping approach simply estimates a return on GE during each of the next 12 months by assuming that the return d ­ uring each month is equally likely to be any of the returns for the 60 months listed. In other words, the return on GE next month is equally likely to be any of the numbers in the cell range F5:F64. To implement this idea, you use the formula RANDBETWEEN(1,60) to choose a “scenario” for each of the next 12 months. For example, if this function returns 7 for next month, you use the return for GE in cell F11 (4.1 percent), which is the seventh cell in the range, as next month’s return. The results are shown in Figure 71-2. (You’ll see different ­values because the RANDBETWEEN function automatically recalculates random values when you open the worksheet.) Chapter 71 Simulating Stock Prices and Asset Allocation Modeling 567 To begin, you enter GE’s current price per share ($28.50) in cell J6. Then you ­generate a scenario for each of the next 12 months by copying from K6 to K7:K17 the formula RANDBETWEEN(1,60). Next you use a lookup table to obtain the GE return based on your scenario. To do this, you simply copy from L6 to L7:L17 the formula VLOOKUP(K6,lookup,5). As the formula indicates, the range B5:F64 is named Lookup, with the returns for GE in the fifth column of the lookup range. In the scenarios shown in Figure 71-2, you can see, for example, that the return for GE twelve months into the future is equal to the 7/1/2001 data point, that is, a -10.9 percent return. (Compare cell L17 in Figure 71-2 with cell F18 in Figure 71-1.) Figure 71-2 Simulating GE stock price in one year. Copying from M6 to M7:M17 the formula (1+L6)*J6 determines each month’s ending GE price. The formula takes the form (1+ month’s return)*(GE’s beginning price). Finally, copying from J7 to J8:J17 the formula =M6 computes the beginning price for each month as equal to the previous month’s ending price. You can now use a data table to generate one thousand scenarios for GE’s price in one year and the one-year percentage return on your investment. The data table is shown in Figure 71-3. In cell J19, you copy the ending price with the formula =M17. In cell K19, you enter the formula (M17–$J$6)/$J$6 to compute the one-year return as (Ending GE price– Beginning GE price)/Beginning GE price. 568 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 71-3 Data table for GE simulation. Next, select the table range (J19:K1019), click What-If Analysis in the Data Tools group on the Data tab, and then select Data Table. You set up a one-way data table by selecting a blank cell as the column input cell. After you click OK in the Data Table dialog box, Excel generates one thousand scenarios for GE’s stock price in one year. (The calculation option for this workbook has been set to Automatic Except For Tables on the Formulas tab in the Excel Options dialog box. You need to press F9 if you want to see the simulated prices change.) In cells M20:M24, I used the COUNTIF function (see Chapter 20, “The COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK Functions”) to summarize the range of returns that can occur in one year. For example, in cell M20, I computed the probability of losing money in one year with the formula COUNTIF(returns,”<0”)/1000. (I named the range containing the one thousand simulated returns as Returns.) The simulation indicates that, based on the data for 1997–2002, there is roughly a 40-percent chance that our GE investment will lose money during the next year. You can also see the following results: ■ There is a 45-percent probability that returns will be more than 10 percent. ■ There is a 15-percent probability that returns will be between 0 and 10 percent. ■ There is a 12-percent chance that the investment will lose between 0 and 10 percent. ■ There is a 28-percent chance that the investment will lose more than 10 percent. ■ The average return for the next year will be approximately 10.7 percent. Many pundits believe that future stock returns will not be as good as in the recent past. Suppose you feel that in the next year, GE will perform on average 5 percent worse per year than it performed during the 1997–2002 period for which you have data. You can easily incorporate this assumption into a simulation by changing the final price formula for GE in cell M17 to (1+L17)*J17–0.05*J6. This simply reduces the ending GE price by 5 percent of its initial price, which reduces your returns for the next year by 5 percent. You can see these results in the file Gesimless5.xlsx, shown in Figure 71-4. Chapter 71 Simulating Stock Prices and Asset Allocation Modeling 569 Figure 71-4 Pessimistic view of the future. Note that the estimate is now a 50-percent chance that the price of GE stock will decrease during the next year. The average is not exactly 5 percent lower than the previous simulation because each time you run one thousand iterations, the simulated values change. I’m trying to determine how to allocate my investment portfolio between stocks, T-Bills, and bonds. What asset allocation over a five-year planning horizon will yield an annual expected return of at least 8 percent and minimize risk? A key decision made by individuals, mutual fund managers, and other investors is how to­ ­allocate assets between different asset classes given the future uncertainty about returns for these asset classes. A reasonable approach to asset allocation is to use bootstrapping to ­generate one thousand simulated values for the future values of each asset class, and then use the Excel Solver to determine an asset allocation that yields an expected return yet minimizes risk. As an example, suppose you are given annual returns on stocks, T-Bills, and bonds during the period 1973–2009. You are investing for a five-year planning horizon, and based on the historical data, you want to know which asset allocation yields a minimum risk (as measured by standard deviation) of annual returns and yields an annual expected return of at least 10 percent. You can see this data in the file Assetallsim.xlsx, shown in Figure 71-5. (Not all the data is shown.) Figure 71-5 Historical returns on stocks, T-Bills, and bonds. 570 Microsoft Excel 2010: Data Analysis and Business Modeling To begin, you use bootstrapping to generate one thousand simulated values for stocks, T-Bills, and bonds in five years. Assume that each asset class has a current price of $1. (See Figure 71-6.) For each asset class, you enter an initial unit price of $1 in the cell range H10:J10. Next, by copying from K10 to K11:K14 the formula RANDBETWEEN(1973,2009), you generate a ­scenario for each of the next five years. For example, for the data shown, next year will be similar to 1985; the following year will be similar to 1986, and so on. Copying from L10 to L10:N14 the formula H10*(1+VLOOKUP($K10,lookup,L$8)) generates each year’s ending value for each asset class. For stocks, for example, this formula computes the following: (Ending year t stock value)=(Beginning year t stock value)*(1+Year t stock return) Figure 71-6 Simulating five-year returns on stocks, T-Bills, and bonds. Copying from H11 to H11:J14 the formula =L10 computes the value for each asset class at the beginning of each successive year. You can now use a one-way data table to generate one thousand scenarios of the value of stocks, T-Bills, and bonds in five years. Begin by copying the Year 5 ending value for each asset class to cells I16:K16. Next select the table range (H16:K1015), click What If Analysis on the Data tab, and then click Data Table. Use any blank cell as the column input cell to set up a one-way data table. After clicking OK in the Data Table dialog box, you obtain one thousand simulated values for the value of stocks, T-Bills, and bonds over five years. It is important to note that this approach models the fact that stocks, T-Bills, and bonds do not move independently. In each of the five years, the stock, T-Bill, and bond returns are always chosen from the same row of data. This enables the bootstrapping approach to reflect the interdependence of returns on these asset classes that has been exhibited during the recent past. (See Problem 7 at the end of this chapter for concrete evidence that bootstrapping appropriately models the interdependence between the returns on our three asset classes.) Chapter 71 Simulating Stock Prices and Asset Allocation Modeling 571 With this setup, we’re ready to find the optimal asset allocation, which I calculated in the file Assetallocationopt.xlsx, shown in Figure 71-7. To start, I copy the one thousand simulated five-year asset values and paste them into a blank worksheet (I used the cell range C4:E1003). In cells C2:E2, I enter trial fractions of our assets allocated to stocks, T-Bills, and bonds, ­respectively. In cell F2, I add these asset allocation fractions with the formula SUM(C2:E2). Later, I’ll add the constraint F2=1 to the Solver model, which ensures that I invest 100 percent of our money in one of the three asset classes. Figure 71-7 Optimal asset allocation model. Next I want to determine the final portfolio value for each scenario. To make this c­ alculation, I can use a formula such as (Final portfolio value)=(Final value of stocks)+ (Final value of T-bills)+(Final value of bonds). Copying from cell F4 to F5:F1003 the formula SUMPRODUCT(C4:E4,$C$2:$E$2) determines the final asset position for each scenario. The next step is to determine the annual return over the five-year simulated period for each scenario that Excel generated. Note that (1+ Annual return)5 equals (Final portfolio value)/ (Initial portfolio value). Because the initial portfolio value is just $1, this tells you that Annual return equals (Final portfolio value)1/5 –1. By copying from cell G4 to G5:G1003 the formula (F4/1)^(1/5)–1, I compute the annual return for each scenario during the five-year simulated period. After naming the range G4:G1003 (which contains the simulated annual returns) as Returns, I compute the average annual return in cell I3 with the formula AVERAGE(returns) and the standard deviation of the annual returns in cell I4 with the formula STDEV.S(returns). Now I’m ready to use Solver to determine the set of allocation weights that yields an ­expected annual return of at least 8 percent yet minimizes the standard deviation of the ­annual returns. The Solver Parameters dialog box set up to perform this calculation is shown in Figure 71-8. 572 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 71-8 Solver Parameters dialog box set up for our asset allocation model. ■ I try to minimize the standard deviation of the annual portfolio return (cell I4). ■ The changing cells are the asset allocation weights (cells C2:E2). ■ I must allocate 100 percent of the money I have to the three asset classes (F2=1). ■ The expected annual return must be at least 8 percent (I3>=0.08). ■ I assume that no short sales are allowed, which is modeled by forcing the fraction of the money in each asset class to be nonnegative. To implement this, I selected the Make Unconstrained Variables Non-Negative check box. ■ The minimum risk asset allocation is 24.3 percent stocks, 75.7 percent T-Bills, and no bonds. This portfolio yields an expected annual return of 8 percent and an annual ­standard deviation of 2.3 percent. Suppose you believe that the next 5 years will, on average, produce returns for stocks that are 5 percent worse than they’ve been for the last 30 years. It is easy to incorporate these expectations into the simulation. (See Problem 4 at the end of the chapter.) Chapter 71 Simulating Stock Prices and Asset Allocation Modeling 573 Problems Problems 1-3 utilize data in the file Gesim.xlsx. 1. Assume that the current price of Microsoft stock is $28 per share. What is the ­probability that in two years the price of Microsoft stock will be at least $35? 2. Solve Problem 1 again, but this time with the assumption that during the next two years, Microsoft will on average perform 6 percent better per year than it performed during the 1997–2002 period for which you have data. 3. Assume that the current price of Intel is $20 per share. What is the probability that ­during the next three years, you will earn at least a 30-percent return (for the threeyear period) on a purchase of Intel stock? Problems 4 through 7 utilize data in the file Assetallsim.xlsx. 4. Suppose you believe that over the next five years, stocks will produce returns that are 5 percent worse per year, on average, than the 1973–2009 data. Find an asset allocation between stocks, T-Bills, and bonds that yields an expected annual return of at least 6 percent yet minimizes risk. 5. Suppose you believe that it is two times more likely that investment returns for each of the next five years will be more like the period 1992–2001 than the period 1972–1991. For example, the chance that next year will be like 1993 has twice the probability that next year will be like 1980. This belief causes your bootstrapping analysis to give more weight to the recent past. How would you factor this belief into your portfolio ­optimization model? 6. Many mutual funds and investors hedge the risk that stocks will go down by p ­ urchasing put options. (See Chapter 74, “Pricing Stock Options,” for more discussion of put ­options.) How could an asset allocation model be used to determine an optimal ­hedging strategy that uses puts? 7. Determine the correlations (based on the 1973–2009 data) between annual returns on stocks, T-Bills, and bonds. Then determine the correlation (based on the one thousand scenarios created by bootstrapping) between the final values for stocks, T-Bills, and assets. Does it appear that the bootstrapping approach picks up the interdependence between the returns on stocks, T-Bills, and bonds? Chapter 72 Fun and Games: Simulating Gambling and Sporting Event Probabilities Questions answered in this chapter: ■ What is the probability of winning at craps? ■ In five-card draw poker, what is the probability of getting three of a kind? ■ Going into the NCAA basketball Final Four, what is the probability of each team ­winning the tournament? Gambling and following sporting events are popular pastimes. I think gambling and sports are exciting because you never know what’s going to happen. Monte Carlo simulation is a powerful tool that you can use to approximate gambling and sporting event probabilities. Essentially, you estimate probability by playing out a gambling or sporting event situation multiple times. If, for example, you have Microsoft Excel play out the game of craps 10,000 times and you win 4,900 times, you would estimate the probability of winning at craps to equal 4900/10,000, or 49 percent. If you play out the 2003 NCAA men’s Final Four 1,000 times and Syracuse wins 300 of the iterations, you would estimate Syracuse’s probability of winning the championship as 300/1,000, or 30 percent. Answers to This Chapter’s Questions What is the probability of winning at craps? In the game of craps, a player rolls two dice. If the combination is 2, 3, or 12, the player loses. If the combination is 7 or 11, the player wins. If the combination is a different n ­ umber, the player continues rolling the dice until he or she either matches the number thrown on the first roll (called the point) or rolls 7. If the player rolls the point before rolling 7, the player wins. If the player rolls 7 before rolling the point, the player loses. By complex calculations, you can show that the probability of a player winning at craps is 0.493. You can use Excel to simulate the game of craps many times (I chose two thousand) to approximate this probability. In this example, it is crucial to keep in mind that you don’t know how many rolls the game will take. I will show that the chance of a game requiring more than 50 rolls of the dice is 575 576 Microsoft Excel 2010: Data Analysis and Business Modeling highly unlikely, so we’ll play out 50 rolls of the dice. After each roll, the game status is tracked as follows: ■ 0 equals the game is lost. ■ 1 equals the game is won. ■ 2 equals the game continues. The output cell keeps track of the status of the game after the fiftieth roll by recording 1 to indicate a win and 0 to indicate a loss. You can review the work I did in the file Craps.xlsx, shown in Figure 72-1. Figure 72-1 Simulating a game of craps. In cell B2, I used the RANDBETWEEN function to generate the number on the first die on the first roll by using the formula RANDBETWEEN(1,6). The RANDBETWEEN function ensures that each of its arguments is equally likely, so each die has an equal (1/6) chance of yielding 1, 2, 3, 4, 5, or 6. Copying this formula to the range B2:AY3 generates 50 rolls of the dice. (In Figure 72-1, I hid rolls 8 through 48.) In the cell range B4:AY4, I compute the total dice combination for each of the 50 rolls by copying from B4 to C4:AY4 the formula SUM(B2:B3). In cell B5, I determine the game ­status after the first roll with the formula IF(OR(B4=2,B4=3,B4=12),0,IF(OR(B4=7,B4=11),1,2)). Remember that a roll of 2, 3, or 12 results in a loss (entering 0 in the cell); a roll of 7 or 11 ­results in a win (1); and any other roll results in the game continuing (2). Chapter 72 Fun and Games: Simulating Gambling and Sporting Event Probabilities 577 In cell C5, I compute the status of the game after the second roll with the formula IF(OR(B5=0,B5=1),B5,IF(C4=$B4,1,IF(C4=7,0,2))). If the game ends on the first roll, I maintain the status of the game. If a roll makes our point, I record a win with 1. If a roll is a 7, I record a loss. Otherwise, the game continues. I added a dollar sign in the reference to column B ($B4) in this formula to ensure that each roll tries to match the point thrown on the first roll. Copying this formula from C5 to D5:AY5 records the game status after rolls 2 through 50. The game result is in cell AY5, which is copied to C6 so that you can easily see it. I then use a one-way data table to play out the game of craps two thousand times. In cell E9 I enter the formula =C6, which tracks the final outcome of the game (0 if a loss or 1 if a win). Next, I select the table range (D9:E2009), click What-If Analysis in the Data Tools group on the Data tab, and then click Data Table. I choose a one-way table with any blank cell as the column input cell. After I press F9, Excel simulates the game of craps two thousand times. In cell E8, I can compute the fraction of the simulations that result in wins with the formula AVERAGE(E10:E2009). For the two thousand iterations, I won 49.25 percent of the time. If I had run more trials (for example, 10,000 iterations), I would have come closer to the true probability of winning at craps (49.3%). For information about using a one-way data table, see Chapter 17, “Sensitivity Analysis with Data Tables.” In five-card draw poker, what is the probability of getting three of a kind? An ordinary deck of cards contains four cards of each type—four aces, four deuces, and so on, up to four kings. To estimate the probability of getting a particular poker hand, you can assign the value 1 to an ace, 2 to a deuce, and on up through the deck so that a jack is ­assigned the value 11, a queen is assigned 12, and a king is assigned 13. In five-card draw poker, you are dealt five cards. Many probabilities are of interest, but let’s use simulation to estimate the probability of getting three of a kind, which requires that you have three of one type of card and no pairs. (If you have a pair and three of a kind, the hand is a full house.) To simulate the five cards drawn, you proceed as follows. (See the file Poker.xlsx, shown in Figure 72-2.) ■ Associate a random number with each card in the deck. ■ The five cards chosen will be the five cards associated with the five smallest random numbers, which gives each card an equal chance of being chosen. ■ Count how many of each card (ace through king) are drawn. 578 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 72-2 Estimating the probability that you’ll draw three of a kind in a poker game. To begin, I list in cells D3:D54 all the cards in the deck: four 1s, four 2s, and so on up to four 13s. Then I copy from cell E3 to E4:E54 the RAND function to associate a ­random ­number with each card in the deck. Copying from C3 to C4:C54 the formula RANK.EQ(E3,$E$3:$E$54,1) gives the rank (ordered from smallest to largest) of each ­random number. For example, in Figure 72-2, you can see that the first 3 in the deck (row 11) is associated with the fourteenth smallest random number. (You will see different results in the worksheet because the random numbers are automatically recalculated when you open the worksheet.) The syntax of the RANK.EQ function is RANK.EQ(number,array,1 or 0). If the last argument of the RANK.EQ function is 1, the function returns the rank of the number in the array with the smallest number receiving a rank of 1, the second smallest number a rank of 2, and so on. If the last argument of the RANK.EQ function is 0, the function returns the rank of the number in the array with the largest number receiving a rank of 1, the second largest number ­receiving a rank of 2, and so on. In ranking random numbers, no ties can occur (because the random numbers would have to match 16 digits). Chapter 72 Fun and Games: Simulating Gambling and Sporting Event Probabilities 579 Suppose, for example, that you are ranking the numbers 1, 3, 3, and 4 and that the last ­argument of the RANK.EQ function was 1. Excel would return the following ranks: Number Rank (smallest number has rank of 1) 1 1 3 2 3 2 4 4 Because 3 is the second smallest number, 3 would be assigned a rank of 2. The other 3 would also be assigned a rank of 2. Because 4 is the fourth smallest number, it would be assigned a rank of 4. Understanding the treatment of ties by the RANK.EQ function will help you ­complete Problem 1 at the end of the chapter. By copying from cell B3 to B4:B7 the formula VLOOKUP(A3,lookup,2,FALSE), you can draw five cards from the deck. This formula draws the five cards corresponding to the five smallest random numbers. (The lookup table range C3:D54 has been named Lookup.) I used FALSE in the VLOOKUP function because the ranks need not be in ascending order. Having assigned the range name Drawn to the drawn cards (the range B3:B7), copying from J3 to J4:J15 the formula COUNTIF(drawn,I3) counts how many of each card are in the hand drawn. In cell J17, I determine whether the hand includes three of a kind with the formula IF (AND(MAX(J3:J15)=3,COUNTIF(J3:J15,2)=0),1,0). This formula returns a 1 if and only if the hand has three of one kind and no pairs. I now use a one-way data table to simulate four thousand poker hands. In cell J19, I recopy the results of cell J17 with the formula J17. Next I select the table range (I19:J4019). After clicking What-If Analysis in the Data Tools group on the Data tab and then clicking Data Table, I set up a one-way data table by selecting any blank cell as the column input cell. After I click OK, Excel simulates four thousand poker hands. In cell G21, I record the estimated probability of three of a kind with the formula AVERAGE(J20:J4019). I estimate the chance of three of a kind at 1.9 percent. (Using basic probability theory, you can show that the true probability of drawing three of a kind is 2.1 percent.) Going into the 2003 NCAA men’s basketball Final Four, what was the probability of each team winning the tournament? You can rate college basketball teams using the methodology described in Chapter 34, “Using Solver to Rate Sports Teams,” but it is difficult to get the scores of all past games. The highly respected Sagarin ratings (available at www.usatoday.com/sports/sagarin.htm) always gives up-to-date ratings for all college basketball teams. On the eve of the 2003 men’s Final Four, the Sagarin ratings of the four teams were Syracuse (led by Carmelo Anthony), 91.03; Kansas, 92.76; Marquette (led by Dwayne Wade), 89.01; and Texas, 90.66. Given this information, you can play out the Final Four several thousand times to estimate the chance that each team will win. 580 Microsoft Excel 2010: Data Analysis and Business Modeling The mean prediction for the number of points by which the home team wins is favorite ­rating–underdog rating. In the Final Four, there is no home team, but if there was one, you would add five points to the home team’s rating. (In professional basketball, the home edge is four points, and in college and professional football, the home edge is three points.) Then you can use the NORM.INV function to simulate the outcome of each game. (See Chapter 65, “The Normal Random Variable,” for a discussion of using the NORMINV function to simulate a normal random variable.) I calculated the likely outcome of the 2003 Final Four in the file Final4sim.xlsx, shown in Figure 72-3. The semifinals pitted Kansas against Marquette and Syracuse against Texas. Figure 72-3 Simulating the outcome of the NCAA 2003 Final Four. To begin, I enter each team’s name and rating in the cell range C4:D5 and C8:D9. In cell F4, I use the RAND function to enter a random number for the Marquette–Kansas game, and in cell F8 I enter a random number for the Syracuse–Texas game. The simulated outcome is ­always relative to the top team listed. In cell E4, I determine the outcome of the Kansas–Marquette game (from the standpoint of Kansas) with the formula NORM.INV(F4,D4–D5,10). Note that Kansas is favored by D4–D5 points. In cell E8, I determine the outcome of the Texas–Syracuse game (from the standpoint of Syracuse) with the formula NORM.INV(F8,D8–D9,10). (The standard deviation for the ­winning margin of college basketball games is 10 points.) In cells G5 and G6, I ensure that the winner of each semifinal game moves on to the finals. A semifinal outcome of greater than 0 causes the top listed team to win; otherwise, the b ­ ottom listed team wins. Thus, in cell G5, I enter the winner of the first game by using the formula Chapter 72 Fun and Games: Simulating Gambling and Sporting Event Probabilities 581 IF(E4>0,”KU”, “MARQ”). In cell G6, I enter the winner of the second game by using the ­formula IF(E8>0,”SYR”,”TEX”). In cell H5, I enter a random number that is used to simulate the outcome of the ­championship game. Copying from I5 to I6 the formula VLOOKUP(G5,$C$4:$D$9,2,FALSE) obtains the rating for each team in the championship game. Next, in cell J5, I compute the outcome of the championship game (from the reference point of the top listed team in cell G5) with the formula NORM.INV(H5,I5–I6,10). Finally, in cell K5, I determine the actual ­champion with the formula IF(J5>0,G5,G6). Now I can use a one-way data table in the usual fashion to play out the Final Four two ­thousand times. The simulated winners are in the cell range M12:M2011. Copying from K12 to K13:K15 the formula COUNTIF($M$12:$M$2011,J12)/2000 computes the predicted probability for each team winning: 38 percent for Kansas, 24 percent for Syracuse, 24 percent for Texas, and 14 percent for Marquette. These probabilities can be translated to odds using the following formula: Odds against team winning = prob team loses prob team wins For example, the odds against Kansas are 1.63 to 1: (1 – 0.38)/0.38 = 1.63 This means that if you placed $1 on Kansas to win and a bookmaker paid us $1.63 for a Kansas championship, the bet is fair. Of course, the bookie will lower these odds slightly to ensure that he makes money. (See Problem 6 at the end of this chapter for a related exercise.) This methodology can easily be extended to simulate the entire NCAA tournament. Just use IF statements to ensure that each winner advances, and use VLOOKUP functions to find each team’s rating. See the file Ncaa2003.xlsx for a simulation of the 2003 tournament. The analysis gave Syracuse (the eventual winner) a 4-percent chance to win at the start of tournament. In this worksheet, I used comments to explain my work, which you can see in Figure 72-4. Here is some background about using comments: ■ To insert a comment in a cell, first select the cell. On the Review tab, in the Comments group, click New Comment, and then type your comment text. You will see a small red mark in the upper-right corner of any cell containing a comment. ■ To edit a comment, right-click the cell containing the comment, and click Edit Comment. ■ To make a comment always visible, right-click the cell, and click Show/Hide Comments. Clicking Hide Comment when the comment is displayed hides the comment unless the pointer is in the cell containing the comment. 582 Microsoft Excel 2010: Data Analysis and Business Modeling ■ If you want to print your comments, click the Page Setup dialog box launcher (the small arrow in the bottom-right corner of the group) on the Page Layout tab to display the Page Setup dialog box. In the Comments box on the Sheet tab, you can indicate ­whether you want comments printed as displayed on the sheet or at the end of the sheet. Figure 72-4 Comments in a worksheet. Problems 1. Suppose 30 people are in a room. What is the probability that at least two of them have the same birthday? 2. What is the probability of getting dealt one pair in five-card draw poker? 3. What is the probability of getting dealt two pairs in five-card draw poker? 4. In the game of keno, 80 balls (numbered 1 through 80) are mixed up, and then 20 balls are randomly drawn. Before the 20 balls are drawn, a player chooses 10 different numbers. If at least 5 of the numbers are drawn, the player wins. What is the probability of winning? 5. Going into the 2003 NBA finals, the rating system described in Chapter 34 rated the San Antonio Spurs three points higher than the New Jersey Nets. Teams play until one team wins four games. The first two games were at San Antonio, the next three at New Jersey, and the final two games were scheduled for San Antonio. What is the probability that San Antonio will win the series? 6. What odds should the bookmaker give on Kansas winning the Final Four if the bookmaker wants to earn an average of 10 cents per dollar bet? 7. What is the probability of getting dealt a flush in five-card draw poker? 8. If you break a 1-inch stick in two places that are randomly chosen, you have three smaller sticks. What are the chances that the three sticks form a triangle? 9. Suppose each hitter on a baseball team has a 50-percent chance of hitting a home run and a 50-percent chance of striking out. On average, how many runs will this team score in an inning? Chapter 73 Using Resampling to Analyze Data Question answered in this chapter: ■ I produced nine batches of a product by using a high temperature and seven batches by using a low temperature. What is the probability that the product yield is better at the high temperature? Data analysts often need to address questions such as these: ■ What is the probability that a new teaching technique improves student learning? ■ What is the probability that aspirin reduces the incidence of heart attacks? ■ What is the probability that Machine 1 is the most productive of our three machines? You can use a simple yet powerful technique known as resampling to make inferences from data. To make statistical inferences by using resampling, you regenerate data many times by sampling with replacement from your data. Sampling with replacement from data means that the same data point can be chosen more than once. You then make inferences based on the results of this repeated sampling. A key tool in implementing resampling is the RANDBETWEEN function. Entering the function RANDBETWEEN(a,b) yields with equal probability any integer between a and b (inclusive). For example, RANDBETWEEN(1,9) is equally likely to yield one of the numbers 1 through 9, inclusive. Answer to This Chapter’s Question I produced nine batches of a product by using a high temperature and seven batches by using a low temperature. What is the probability that the product yield is better at the high temperature? The file Resampleyield.xlsx, shown in Figure 73-1, contains the product yield from nine ­batches of a product manufactured at a high temperature and seven batches manufactured at a low temperature. The mean yield at a high temperature is 39.74, and the mean yield at a low temperature is 32.27. This difference does not prove, however, that mean yield at a high temperature is better than mean yield at a low temperature. You want to know, based on your sample data, the probability that yield at a high temperature is better than at a low temperature. To answer this question, you can randomly generate nine integers between 1 and 9, which creates a resampling of the high-temperature yields. For example, if you generate the random number 4, the resampled data for high-temperature yields will include a yield of 41.40, and so on. Next you randomly generate seven integers between 1 and 7, which creates a resampling of 583 584 Microsoft Excel 2010: Data Analysis and Business Modeling the low-temperature yields. You can then check the resampled data to see whether the hightemperature mean is larger than the low-temperature mean, and then use a data table to repeat this process several hundred times. (I repeated the process 400 times in this example.) In the resampled data, the fraction of the time that the high-temperature mean is larger than the low-temperature mean estimates the probability that the high-temperature process is superior to the low-temperature process. Figure 73-1 Product yields at high and low temperature. To begin, you generate a resampling of the high-temperature data by copying from cell C16 to C17:C24 the formula RANDBETWEEN(1,9), as shown in Figure 73-2. A given observation can be chosen more than once or not chosen at all. Copying from cell D16 to D17:D24 the formula VLOOKUP(C16,lookup,2)—the range C4:E13 has been named Lookup—­generates the yields corresponding to the random resampling of the data. Next you generate a resampling from the low-temperature yields. Copying from E16 to E17:E22 the formula RANDBETWEEN(1,7) generates a resampling of seven observations from the original ­low-temperature data. Copying from F16 to F17:F22 the formula VLOOKUP(E16,lookup,3) generates the seven actual resampled low-temperature yields. Figure 73-2 Implementation of resampling. In cell D26, I compute the mean of the resampled high-temperature yields with the ­formula AVERAGE(D16:D24). Similarly, in cell F26 I compute the mean of the resampled Chapter 73 Using Resampling to Analyze Data 585 low-­temperature yields with the formula AVERAGE(F16:F22). In cell D29, I determine whether the resampled mean for high temperature is larger than the resampled mean for low ­temperature with the formula IF(D26>F26,1,0). To replay the resampling 400 times, you can use a one-way data table. I put iteration ­numbers 1 through 400 in the cell range C32:431. (See Chapter 69, “Introduction to Monte Carlo Simulation,” for an explanation of how to use the Fill Series command to easily create a list of iteration values.) By typing =D29 in cell D31, I create the formula that records whether high-temperature mean is larger than low-temperature mean in the output cell for the data table. After selecting the table range (C31:D431) and then selecting Data Table from the What-If Analysis menu in the Data Tools group on the Data tab, choose any blank cell in the worksheet as the column input cell. You have now tricked Microsoft Excel into playing out the resampling 400 times. Each iteration with a value of 1 indicates a resampling in which high temperature has the larger mean. Each iteration with a value of 0 indicates a resampling for which low temperature has a larger mean. In cell F31, I determine the fraction of time that high-temperature yield has a larger mean by using the formula AVERAGE(D32:D431). In Figure 73-2, the resampling indicates a 92-percent chance that high temperature has a larger mean than low temperature. Of course, pressing F9 will generate a different set of 400 r­ esamplings and give you a slightly different estimate of the probability that high-­ temperature yield is superior to low-temperature yield. Problems 1. You are testing a new flu drug. Out of 24 flu victims who were given the drug, 20 felt better and 4 felt worse. Out of 9 flu victims who were given a placebo, 6 felt better and 3 felt worse. What is the probability that the drug is more effective than the placebo? 2. A talk on the dangers of high cholesterol was given to eight workers. Each worker’s cholesterol was tested both before and after the talk, with the results given below. What is the probability that the talk caused the workers to undertake lifestyle changes that reduced their cholesterol? Cholesterol before Cholesterol after 220 210 195 198 250 210 200 199 220 224 260 212 175 179 198 184 586 Microsoft Excel 2010: Data Analysis and Business Modeling 3. The beta of a stock is simply the slope of the best-fitting line used to predict the monthly return on the stock from the monthly return given in the Standard & Poor’s (S&P) 500 index. A beta that is larger than 1 indicates that a stock is more cyclical than the market, whereas a beta of less than 1 indicates that a stock is less cyclical than the market. The file Betaresampling.xlsx contains more than 12 years of monthly returns on Microsoft (MSFT), Pfizer (PFE), other stocks, and the S&P index. Use this data to determine the probability that Microsoft has a lower beta than Pfizer. You will need to use the Excel SLOPE function to estimate the beta for each iteration of resampling. 4. The file Lawdata.xlsx gives the LSAT scores and law school GPA for 15 law school ­students. Based on this data you are 95 percent sure the correlation between LSAT score and GPA is between which two values? Chapter 74 Pricing Stock Options Questions answered in this chapter: ■ What are call and put options? ■ What is the difference between an American and a European option? ■ As a function of the stock price on the exercise date, what do the payoffs look like for European calls and puts? ■ What parameters determine the value of an option? ■ How can I estimate the volatility of a stock based on historical data? ■ How can I use Excel to implement the Black-Scholes formula? ■ How do changes in key parameters change the value of a call or put option? ■ How can I use the Black-Scholes formula to estimate a stock’s volatility? ■ I don’t want somebody changing my neat option-pricing formulas. How can I protect the formulas in my worksheet so that nobody can change them? ■ How can I use option pricing to help my company make better investment decisions? During the early 1970s, economists Fischer Black, Myron Scholes, and Robert Merton derived the Black-Scholes option-pricing formula, which enables you to derive a value for a European call or put option. Scholes and Merton were awarded the 1997 Nobel Prize in Economics for their efforts. (Black died before 1997, and Nobel prizes are not awarded posthumously.) The work of these economists revolutionized corporate finance. In this chapter, I’ll introduce you to their important work. Note For an excellent technical discussion of options, see David G. Luenberger’s book Investment Science (Oxford University Press, 1997). Answers to This Chapter’s Questions What are call and put options? A call option gives the owner of the option the right to buy a share of stock for a price called the exercise price. A put option gives the owner of the option the right to sell a share of stock for the exercise price. 587 588 Microsoft Excel 2010: Data Analysis and Business Modeling What is the difference between an American and a European option? An American option can be exercised on or before a date known as the exercise date (often referred to as the expiration date). A European option can be exercised only on the exercise date. As a function of the stock price on the exercise date, what do the payoffs look like for European calls and puts? Let’s look at cash flows from a six-month European call option on shares of IBM with an ­exercise price of $110. Let P equal the price of IBM stock in six months. The payoff from a call option on these shares is $0 if P≤110 and P–110 if P>110. With a value of P below $110, you would not exercise the option. If P is greater than $110, you would exercise the option to buy stock for $110 and immediately sell the stock for P, thereby earning a profit of P–110. Figure 74-1 shows the payoff from this call option. In short, a call option pays $1 for every dollar by which the stock price exceeds the exercise price. The payoff for this call option can be written as Max(0,P–110). Notice that the call option graph in Figure 74-1 (see the Call worksheet in the file Optionfigures.xlsx) has a slope 0 for a value of P smaller than the exercise price. Its slope is 1 for a value of P greater than the exercise price. Figure 74-1 Cash flows from a call option. You can show that if a stock pays no dividends, it is never optimal to exercise an American call option early. Therefore, for stock that does not pay a dividend, an American and a European call option both have the same value. Now let’s look at cash flows from a six-month European put option on shares of IBM with an exercise price of $110. Let P equal the price of IBM in six months. The payoff from the put option is $0 if P≥110 and P–110 if P<110. For a value of P below $110, you would buy a share of stock for P and immediately sell the stock for $110. This yields a profit of 110–P. If P is larger than $110, it would not be profitable to buy the stock for P and sell it for $110, so you would not exercise the option to sell the stock for $110. Chapter 74 Pricing Stock Options 589 Figure 74-2 displays the payoff from this put option (see the Put worksheet in the file Optionfigures.xlsx). In short, a put option pays $1 for each dollar by which the stock price is below the exercise price. A put payoff can be written as Max(0,110–P). Note that the slope of the put payoff is –1 for a value of P less than the exercise price, and the slope of the put ­payoff is 0 for a value of P greater than the exercise price. Figure 74-2 Cash flows from a put option. An American put option can be exercised early, so the cash flows from an American put ­option cannot be determined without knowledge of the stock price at times before the ­expiration date. What parameters determine the value of an option? In their derivation of the Black-Scholes option-pricing model, Black, Scholes, and Merton showed that the value of a call or put option depends on the following parameters: ■ Current stock price. ■ The option’s exercise price. ■ Time (in years) until the option expires (referred to as the option’s duration). ■ Interest rate (per year on a compounded basis) on a risk-free investment (usually T-Bills) throughout the duration of the investment. This rate is called the risk-free rate. For example, if three-month T-Bills are paying 5 percent, the risk-free rate is computed as ln(1+0.05). (Calculating the logarithm transforms a simple interest rate into a compounded rate.) Compound interest simply means that at every instant, you are earning interest on your interest. ■ Annual rate (as a percentage of the stock price) at which dividends are paid. If a stock pays 2 percent of its value each year in dividends, the dividend rate is 0.02. 590 Microsoft Excel 2010: Data Analysis and Business Modeling ■ Stock volatility (measured on an annual basis). An annual volatility of, for example, 30 percent means that (approximately) the standard deviation of the annual percentage changes in the stock’s price is expected to be around 30 percent. During the Internet bubble of the late 1990s, the volatility of many Internet stocks exceeded 100 percent. I’ll show you two ways to estimate this important parameter. The Black-Scholes pricing formula requires that the price of the stock follows a lognormal random variable. See Chapter 68, “Using the Lognormal Random Variable to Model Stock Prices,” for further discussion of the lognormal random variable. How can I estimate the volatility of a stock based on historical data? To estimate the volatility of a stock based on data about the stock’s monthly returns, you can proceed as follows: ■ Determine the monthly return on the stock for a period of several years. ■ Determine for each month ln(1+monthly return). ■ Determine the standard deviation of ln(1+monthly return). This calculation gives you the monthly volatility. ■ Multiply the monthly volatility by volatility. 12 to convert monthly volatility to an annual This procedure is illustrated in the file Dellvol.xlsx, in which I estimate the annual volatility of Dell stock using monthly prices from the period August 1988 through May 2001. (See Figure 74-3, in which I’ve hidden several rows of data.) Figure 74-3 Computing the historical volatility for Dell. Copying from cell C2 to C3:C154 the formula (B2–B3)/B3 computes each month’s return on Dell stock. Then copying from D2 to D3:D154 the formula 1+C2 computes for each month 1+month’s return. Next I compute ln(1+ month’s return) for each month by copying from E2 to E3:E154 the formula LN(D2), and I compute the monthly volatility in cell H3 with the ­formula STDEV.S(E2:E154). Finally, I compute an estimate of Dell’s annual volatility with the formula SQRT(12)*H3. Dell’s annual volatility is estimated to be 57.8 percent. Chapter 74 Pricing Stock Options 591 How can I use Excel to implement the Black-Scholes formula? To apply the Black-Scholes formula in Microsoft Excel, you need input values for the ­following parameters: ■ S=Today’s stock price ■ t=Duration of the option (in years) ■ X=Exercise price ■ r=Annual risk-free rate (This rate is assumed to be continuously compounded.) ■ σ=Annual volatility of stock ■ y=Percentage of stock value paid annually in dividends Given these input values, the Black-Scholes price for a European call option can be computed as follows: Define Ln( d1 = 2 S )+(r – y + )t 2 X t and d2 = d2 – t Then the call price C is given by C = Se –ytN(d1 ) – Xe –rtN(d2 ) Here, N(x) is the probability that a normal random variable with a mean of 0 and a σ equal to 1 is less than or equal to x. For example, N(–1)=.16,N(0)=.5, N(1)=.84, and N(1.96)=.975. A normal random variable with a mean of 0 and a standard deviation of 1 is called a ­standard normal. The cumulative normal probability can be computed in Excel 2010 with the NORM.S.DIST function. Entering NORM.S.DIST(x, True or 1) returns the probability that a standard normal random variable is less than or equal to x. For example, entering the formula NORM.S.DIST(–1,True) in a cell will yield 0.16, which indicates that a normal random variable with a mean of 0 and a standard deviation of 1 has a 16 percent chance of assuming a value less than –1. The price of a European put P can be written as P = Se –yt (N(d1 ) – 1) – Xe –rt (N(d2 ) – 1) 592 Microsoft Excel 2010: Data Analysis and Business Modeling In the file Bstemp.xlsx (see Figure 74-4), I created a template that computes the value for a European call or put option. Enter the parameter values in B5:B10, and read the value of a European call in D13 and a European put in D14. Figure 74-4 Valuing European calls and puts. Note Valuing American options is beyond the scope of this book. Interested readers should refer to Luenberger’s excellent textbook. As an example, suppose that Cisco stock sells for $20 today and that you’ve been issued a seven-year European call option. Assume that the annual volatility of Cisco stock is 50 ­percent, and the risk-free rate during the seven-year period is estimated at 5 percent per year. Compounded, this translates to ln(1+.05)=.04879. Cisco does not pay dividends, so the annual dividend rate is 0. The value of the call option is calculated to be $10.64. A seven-year put option with an exercise price of $24 would be worth $7.69. How do changes in key parameters change the value of a call or put option? ■ In general, the effect of changing an input parameter on the value of a call or put is given in the following table: Parameter European call European put American call American put Stock price + - + - Exercise price - + - + Time to expiration ? ? + + Volatility + + + + Risk-free rate + - + - Dividends - + - + An increase in today’s stock price always increases the value of a call and decreases the value of a put. Chapter 74 Pricing Stock Options 593 ■ An increase in the exercise price always increases the value of a put and decreases the value of a call. ■ An increase in the duration of an option always increases the value of an American ­option. In the presence of dividends, an increase in the duration of an option can either increase or decrease the value of a European option. ■ An increase in volatility always increases option value. ■ An increase in the risk-free rate increases the value of a call because higher rates tend to increase the growth rate of the stock price (which is good for the call). This situation more than cancels out the fact that the option payoff is worth less as a result of the higher interest rate. An increase in the risk-free rate always decreases the value of a put because the higher growth rate of the stock tends to hurt the put, as does the fact that future payoffs from the put are worth less. Again, this assumes that interest rates do not affect current stock prices, but they do. ■ Dividends tend to reduce the growth rate of a stock price, so increased dividends ­reduce the value of a call and increase the value of a put. Using one-way and two-way data tables (see Chapter 17, “Sensitivity Analysis with Data Tables,” for details about how to work with data tables), you can, if you want, explore the specific effects of parameter changes on the value of calls and puts. How can I use the Black-Scholes formula to estimate a stock’s volatility? Earlier in this chapter, I showed how to use historical data to estimate a stock’s annual ­volatility. The problem with a historical volatility estimate is that the analysis looks b ­ ackward. What you really want is an estimate of a stock’s volatility looking forward. The implied ­volatility approach simply estimates a stock’s volatility as the volatility value that will make the Black-Scholes price match the option’s market price. In short, implied volatility extracts the volatility value implied by the option’s market price. You can easily use the Goal Seek command and the input parameters we’ve been using to compute an implied volatility. On July 22, 2003, Cisco was selling for $18.43. An October 2003 call option with a $17.50 exercise price was selling for $1.85. This option expires on October 18 (89 days in the future). Thus, the option has a duration of 89/374=0.2438 years. Cisco does not expect to pay dividends, and I’ve assumed a T-Bill rate of 5 percent and a ­corresponding risk-free rate of ln(1+.05)=0.04879. To determine the volatility for Cisco implied by this option price, you enter the relevant parameters in cells B5:B10 of the file Ciscoimpvol.xlsx, which is shown in Figure 74-5. 594 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 74-5 Using implied volatility to estimate Cisco’s volatility. Next you use the Goal Seek dialog box (see Figure 74-6) to determine the volatility (the value in cell B10) that makes the call price (the formula in D13) hit a value of $1.85. Figure 74-6 Goal Seek settings to find implied volatility. This option implies an annual volatility for Cisco of 34 percent, as you can see in Figure 74-5. Note The Web site www.Ivolatility.com provides an estimate of the volatility of any stock, either historical or implied. I don’t want somebody changing my neat option-pricing formulas. How can I protect the formulas in my worksheet so that nobody can change them? I’m sure that you have sent a worksheet to someone who then changed your carefully ­constructed formulas. Sometimes you want to protect a worksheet so that another user can only enter input data but not modify the worksheet’s formulas. As an example, I’ll show you how to protect all the formulas in the Black-Scholes template. (See the files Bstemp.xlsx and Bstempprotected.xlsx.) I begin by unlocking all the cells in the worksheet. Then I will lock the cells I want to protect. First, click the gray box in the upper-left corner of the worksheet, where the row and column headings intersect (next to the A and the 1). After you click this box, any format changes you make affect the entire worksheet. For example, if you select a bold format after clicking this box, all the cells in the worksheet will use the bold format. Chapter 74 Pricing Stock Options 595 After selecting the entire worksheet, click the Font dialog box launcher (the small arrow) on the Home tab. This displays the Format Cells dialog box, shown in Figure 74-7. On the Protection tab, clear the Locked check box, as shown in Figure 74-7, and then click OK. Now all cells in the worksheet are unlocked, which means that even if the worksheet is protected, you can still access these cells. Figure 74-7 Format Cells dialog box. Next, select all the formulas in the worksheet. To do this, press F5, which opens the Go To dialog box. Click Special, select Formulas, and click OK. Click the Font dialog box launcher again, and on the Protection tab, select the Locked check box. Selecting this box locks all the formulas. Now you can protect the worksheet, which will prevent a user from changing your formulas. Click Protect Sheet in the Changes group on the Review tab. In the Protect Sheet dialog box, select the Select Unlocked Cells check box, as shown in Figure 74-8. This option allows users of a template to select unlocked cells, but the formulas will be off-limits. Figure 74-8 Allowing user to access unlocked cells. 596 Microsoft Excel 2010: Data Analysis and Business Modeling Now, when you click any formula, you cannot see or change its contents. Go ahead and try to mess up a formula! The final result of protecting this workbook is saved in the file Bstempprotected.xlsx. How can I use option pricing to help my company make better investment decisions? Option pricing can be used to improve a company’s capital budgeting or financial decisionmaking process. The use of option pricing to evaluate actual investment projects is called real options. The idea of real options is credited to Judy Lewent, the former chief financial ­officer of Merck. Essentially, real options let you put an explicit value on managerial flexibility, which is often missed by traditional capital budgeting. The following two examples illustrate the ­concepts of real options. Note Refer to Luenberger’s book for a more detailed discussion of real options. Let’s say that you own an oil well. Today, your best guess is that the oil in the well is worth $50 million. In five years (if you own the well), you will make a decision to develop the oil well, at a cost of $70 million. A wildcatter is willing to buy the well today for $10 million. Should you sell the well? Of course, the value of the oil in five years might increase. Even if you assume that the value of the oil would increase by 5 percent a year, the oil would be worth only $63.81 million in five years. Traditional capital budgeting says that the well is worthless because the cost to develop it is more than the value of the oil in the well. But wait; in five years’ time, the value of the oil in the well will be different because many things (such as the global oil price) might change. There’s a chance that the oil will be worth at least $70 million in five years. If the oil is worth $80 million in five years, developing the well in five years would return $10 million. Essentially, you own a five-year European call option on this well, because the payoff from the well in five years is the same as the payoff on a European call option with a stock price of $50 million, an exercise price of $70 million, and a duration of five years. You can ­assume an annual volatility similar to the volatility of a typical oil company stock (for example, 30 ­percent). If you use a T-Bill rate of 5 percent, corresponding to a risk-free rate of 4.879 percent, in the file Oilwell.xlsx (see Figure 74-9), you can determine that the value of this call option is $11.47 million, which means that you should not sell the well for $10 million. Of course, you do not know the actual volatility for this oil well. Therefore, you can use a one-way data table to determine how the value of the option depends on a volatility Chapter 74 Pricing Stock Options 597 ­ stimate. (See Figure 74-9.) From the data table, you can see that as long as the oil well’s e volatility is at least 27 percent, your oil well “option” is worth more than $10 million. Figure 74-9 Oil well real options. As a second example, consider a biotech drug company that is developing a drug for a major pharmaceutical firm. The biotech company currently believes the value of the drug is $50 ­million. Of course, the value of the drug might drop over time. To protect against a price drop, the biotech company wants the drug to have a guaranteed value of $50 million in five years. If an insurance company wants to underwrite this liability, what is a fair price to charge? Essentially, the biotech company is asking for a payment of $1 million in five years for each $1 million by which the value of the drug in five years is below $50 million. This is equivalent to a five-year put option on the value of the drug. Assuming a T-Bill rate is 5 percent and the annual volatility on comparable drug stocks is 40 percent (see the file Drugabandon.xlsx, shown in Figure 74-10), the value of this option is $10.51 million. This type of option is often referred to as an abandonment option, but it is equivalent to a put option. (I also included a one-way data table, shown in Figure 74-10, to show how the value of the abandonment ­option depends on the assumed volatility, ranging from 30 to 45 percent of the drug’s value.) 598 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 74-10 Calculating an abandonment option. Problems 1. Use the monthly stock returns in the file Volatility.xlsx to determine estimates of annual volatility for Intel, Microsoft, and GE. 2. A stock is selling today for $42. The stock has an annual volatility of 40 percent and the annual risk-free rate is 10 percent. ❑ What is a fair price for a six-month European call option with an exercise price of $40? ❑ How much does the current stock price have to increase for the purchaser of the call option to break even in six months? ❑ What is a fair price for a six-month European put option with an exercise price of $40? ❑ How much does the current stock price have to decrease for the purchaser of the put option to break even in six months? ❑ What level of volatility would make the $40 call option sell for $6? (Hint: Use the Goal Seek command.) Chapter 74 Pricing Stock Options 599 3. On September 25, 2000, JDS Uniphase stock sold for $106.81 per share. On the same day, a $100 European put expiring on January 20, 2001, sold for $11.875. Compute an implied volatility for JDS Uniphase stock based on this information. Use a T-Bill rate of 5 percent. 4. On August 9, 2002, Microsoft stock was selling for $48.58 per share. A $35 European call option expiring on January 17, 2003, was selling for $13.85. Use this information to estimate the implied volatility for Microsoft stock. Use a T-Bill rate of 4 percent. 5. You have an option to buy a new plane in three years for $25 million. Your current ­estimate of the value of the plane is $21 million. The annual volatility for the change in the plane’s value is 25 percent, and the risk-free rate is 5 percent. What is the option to buy the plane worth? 6. The current price of copper is 95 cents per pound. The annual volatility for copper ­prices is 20 percent, and the risk-free rate is 5 percent. In one year, you have the option (if you want it) to spend $1.25 million to mine 8 million pounds of copper. The copper can be sold at whatever the copper price is in one year. It costs 85 cents to extract a pound of copper from the ground. What is the value of this situation to you? 7. You own the rights to a biotech drug. Your best estimate is that the current value of these rights is $50 million. Assuming that the annual volatility of biotech companies is 90 percent and the risk-free rate is 5 percent, what is the value of an option to sell the rights to the drug five years from now for $40 million? 8. Merck is debating whether to invest in a pioneer biotech project. The company ­estimates that the worth of the project is –$56 million. Investing in the pioneer project gives Merck the option to own, if it wants to, a much bigger technology that will be available in four years. If Merck does not participate in the pioneer project, it cannot own the bigger project. The bigger project will require $1.5 billion in cash four years from now. Currently, Merck estimates the net present value (NPV) of the cash flows from the bigger project to be $597 million. Assuming a risk-free rate of 10 percent and that the annual volatility for the bigger project is 35 percent, what should Merck do? (This is the problem that started the whole field of real options!) 9. Develop a worksheet that uses the following inputs to compute annual profit: ❑ Annual fixed cost ❑ Unit cost ❑ Unit price ❑ Annual demand=10,000–100*(price) Protect the cells used to compute annual demand and annual profit. Chapter 75 Determining Customer Value Questions answered in this chapter: ■ A credit-card company currently has an 80-percent retention rate. How will the ­company’s profitability improve if the retention rate increases to 90 percent or higher? ■ A long-distance phone company gives the competition’s customers an incentive to switch. How large an incentive should it give? Many companies undervalue their customers. When valuing a customer, a company should look at the net present value (NPV) of the long-term profits that the company earns from the customer. (For detailed information about net present value, see Chapter 8, “Evaluating Investments by Using Net Present Value Criteria.”) Failure to look at the long-term value of a customer often causes a company to make poor decisions. For example, a company might cut its customer service staff by 10 percent to save $1 million, but the resulting decrease in service quality might cause them to lose much more than $1 million in “customer value,” which would, of course, result in the company being less profitable. The following two ­examples show how to compute customer value. Answers to This Chapter’s Questions A credit-card company currently has an 80-percent retention rate. How will the ­company’s profitability improve if the retention rate increases to 90 percent or higher? This example is based on a discussion in Frederick Reichheld’s excellent book The Loyalty Effect (Harvard Business School Press, 2001). You can find the sample data I’ll use in the file Loyalty.xlsx, shown in Figure 75-1. Reichheld estimates the profitability of a credit-card ­customer based on the number of years the customer has held a card. For example, during the first year a customer has the credit card, the cardholder generates –$40 profit, which is the result of customer acquisition costs and the cost of setting up the customer’s account. During each successive year, the profit generated by the customer increases until a customer who has owned a card for 20 or more years generates $161 per year in profits. The credit-card company wants to determine how the value of a customer depends on the company’s retention rate. Currently, the company has an 80-percent retention rate, which means that at the end of each year, 20 percent (1–0.80) of all customers do not renew their card. (I refer to the 20 percent of customers who don’t renew as the annual churn rate.) The credit-card company wants to determine the long-term value of a customer for retention rates of 80 percent, 85 percent, 90 percent, 95 percent, and 99 percent. 601 602 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 75-1 Value of a credit-card customer. To determine the long-term value of a customer, you start with a cohort of, for example, 100 customers. (A cohort is a group of individuals having a statistical factor in common. The size 100 is arbitrary here, but round numbers make it easier to follow the analysis.) Then you ­determine how many of these customers are still around each year with the formula (Customers around for year t+1)=(Retention rate)*(Customers around for year t). You can ­assume that customers quit only at the end of each year. Then you use the NPV function to determine the total NPV (assuming a 15-percent discount rate) generated by the original cohort of 100 customers. The 15-percent discount rate implies that $1 earned one year from now is worth the same as $1.00/$1.15 of profit earned now. Dividing this number by the number of customers in the original cohort (100) gives you the value of an individual customer. I first assign the names in the cell range B6:B7 to the cell range C6:C7. Then I enter the ­number of original customers (100) in cell C9. Copying from cell C10 to the range C11:C38 the formula retention_rate*C9 generates the number of customers present for each year. For example, 80 customers will be present in Year 2. I compute the profit earned each year by multiplying the number of remaining customers by each customer’s profit. To make this calculation, copy from cell D9 to D10:D38 the formula C9*B9. In cell E4, I compute the average NPV generated by an individual customer with the formula (1+Interest_rate)*NPV(Interest_rate,D9:D38)/100. I am assuming cash flows at the beginning of the year and a 15-percent annual discount rate. The portion of the formula that reads NPV(Interest_rate,D9:D38) computes the average NPV generated by an individual ­customer assuming end-of-year cash flows. Multiplying by (1+Interest_rate) converts the ­end-of-year cash flow NPV to a beginning-of-year NPV. Chapter 75 Determining Customer Value 603 With an 80-percent retention rate, the average customer is worth $141.72. To determine how the value of an individual customer varies with a change in annual retention rate, I use a oneway data table. I enter the relevant annual retention rates in the cell range F9:F13. In cell G8, I enter the formula I want the data table to calculate (NPV per customer) with the formula =E4. Next, I select the table range (F8:G13) and then choose Data Table from the What-If Analysis command on the Data tab. After entering a column input cell of C6, I obtain the profit calculations shown in Figure 75-1. Notice that increasing the retention rate from 80 percent to 90 percent nearly doubles the value of each customer, which strongly argues for being “nice” to these customers and against pinching pennies on activities related to customer service. Understanding the value of a customer gives most companies a crucial lever that can be used to increase their profitability. A long-distance phone company gives the competition’s customers an incentive to switch. How large an incentive should it give? Let’s say that you work for a phone company in which the average long-distance customer spends $400 per year and the company generates a 10-percent profit margin on each dollar spent. At the end of each year, 50 percent of the company’s customers switch to the competition, and without any incentives, 30 percent of the competition’s customers switch to your company. You’re considering giving the competition’s customers a one-time incentive to switch companies. How large an incentive can you give and still break even? The key to analyzing this problem (which you can find in the file Phoneloyalty.xlsx, shown in Figure 75-2) is to look at the NPV for two situations: ■ Situation 1: 100 customers begin with the competition. ■ Situation 2: You pay the 100 customers who are with the competition a certain amount to switch to your company. Following through each situation for a period of time (for example, 20 years), you can use the Goal Seek command to determine the dollar amount x paid to a person switching to your company that makes you indifferent about the following two situations: ■ Situation 1: You have just paid 100 unloyal customers $x each to switch to your company. ■ Situation 2: The market consists of 100 unloyal customers. Assume that the analysis begins on June 30, 2014, and that customers switch ­ companies at most once per year. I assigned the range names in cells A2:A6 to cells B2:B6. The key step in the analysis is to realize that (year t+1 customers with us)= .3*(year t competitor customers)+.5*(year t our customers). Similarly (year t+1 customers with competition)=.7*(year t competition customers)+.5*(year t our customers). 604 Microsoft Excel 2010: Data Analysis and Business Modeling Figure 75-2 Phone incentive analysis. Next I enter 100 in cell D9 (customers with us) and 0 in cell E9 (customers with the c­ompetition). This customer alignment corresponds to the situation right after the incentive is offered to 100 customers. I’m assuming that customers who receive the incentive must stay with the company for at least one year. Copying from D10 to D11:D28 the formula (1–probleave)*D9+probcome*E9 generates the number of customers during each year. ­ (Years 2022 through 2029 are hidden in Figure 75-2.) Copying from E10 to E11:E28 the ­formula probleave*D9+(1–probcome)*E9 calculates the number of customers with the ­competition during each year. In cell F9, I generate the profit earned during the first year with the formula D9*annrevenue*profitmargin–switch_fee*100. Note that I have subtracted the cost of paying the 100 customers with the competition to switch. Copying from F10 to F11:F28 the formula D10*annrevenue*profitmargin generates profit during later years. In cell D5, I compute the NPV of the profits associated with the incentive by using the formula XNPV(0.1,F9:F28,B9:B28). (See Chapter 8 for a discussion of the XNPV function.) In a similar fashion, in the cell range G8:I28 I generate the profits earned each year from 100 customers who were originally with the competition. On June 30, 2014, 30 of these 100 customers will have switched (even without incentives). In cell F2, I compute the difference between the NPV with the incentive and the NPV without the incentive. Finally, I use the Goal Seek command to vary the size of the incentive (cell B2) to set F2 equal to 0. The Goal Seek dialog box is shown in Figure 75-3. An incentive of $34.22 makes the NPV of the two situations identical. Therefore, you could give incentives of up to $34.22 for a customer to switch and still have increased profitability. Chapter 75 Determining Customer Value 605 Figure 75-3 Goal Seek settings to determine the maximum incentive that increases profitability. Problems 1. Whirlswim Appliance is considering giving each of its customers free maintenance on each VCR purchased. The company estimates that this proposal will require it to pay an average of $2.50 for each VCR sold today (the cost in today’s dollars). Currently, the market consists of 72,000 consumers whose last purchase was from Whirlswim and 86,000 consumers whose last purchase was from a competitor. In a given year, 40 percent of all consumers purchase a VCR. If their last purchase was a Whirlswim, there is a 60-percent chance that their next purchase will be a Whirlswim. If their last purchase was not a Whirlswim, there is a 30-percent chance that their next purchase will be a Whirlswim. A purchase during the current year will lead to a $20 profit. The contribution to profit (and maintenance cost per purchaser) from a purchaser grows at 5 percent per year. Profits (over a 30-year horizon) are discounted at 10 percent per year. Suppose that you provide free maintenance. If the customer’s last purchase was a Whirlswim, the probability that the customer’s next purchase will be a Whirlswim will increase by an unknown amount between 0 percent and 10 percent. Similarly, if you give free maintenance and the customer’s last purchase was not a Whirlswim, the probability that their next purchase is a Whirlswim will increase by an unknown amount between 0 percent and 10 percent. Do you recommend that Whirlswim adopt the free maintenance policy? 2. Mr. D’s Supermarket is determined to please its customers with a customer advantage card. Currently, 30 percent of all shoppers are loyal to Mr. D’s. A loyal Mr. D’s customer shops at Mr. D’s 80 percent of the time. An unloyal Mr. D’s customer shops at Mr. D’s 10 percent of the time. A typical customer spends $150 per week, and Mr. D’s is running on a 4-percent profit margin. The customer advantage card will cost Mr. D’s an average of $0.01 per dollar spent. You believe Mr. D’s share of loyal customers will increase by an unknown amount between 2 percent and 10 percent. You also believe that the fraction of the time a loyal customer shops at Mr. D’s will increase by an unknown amount between 2 percent and 12 percent. Should Mr. D’s adopt a customer advantage card? Should Mr. D’s adopt the card if its profit margin is 8 percent instead of 4 percent? Chapter 76 The Economic Order Quantity Inventory Model Questions answered in this chapter: ■ An electronics store sells 10,000 cell phones per year. Each time an order is placed for a supply of cell phones, the store incurs an order cost of $10. The store pays $100 for each cell phone, and the cost of holding a cell phone in inventory for a year is assumed to be $20. When the store orders cell phones, how large an order should it make? ■ A computer manufacturing plant produces 10,000 servers per year. The cost to p ­ roduce each server is $2,000. The cost to set up a production run of servers is $200, and the cost to hold a server in inventory for a year is $500. The plant can produce 25,000 ­servers per year if it wants to. When the plant produces servers, how large a batch should it produce? When a store orders an item repeatedly, a natural question is, What quantity should the store order each time? If the store orders too many items, it incurs excessive inventory or holding costs. If the store orders too few items, it incurs excessive reordering costs. Somewhere, there must be a happy medium that minimizes the sum of annual inventory and order costs. Similarly, consider a manufacturing plant that produces batches of a product. What batch size minimizes the sum of annual inventory and setup costs? The two examples in this ­chapter show how to use the economic order quantity formula (developed in 1913 by F. Harris of Westinghouse Corporation) to answer these questions. Answers to This Chapter’s Questions An electronics store sells 10,000 cell phones per year. Each time an order is placed for a supply of cell phones, an order cost of $10 is incurred. The store pays $100 for each cell phone, and the cost of holding a cell phone in inventory for a year is assumed to be $20. When the store orders cell phones, how large an order should it make? The size of an order that minimizes the sum of annual inventory and ordering costs can be determined after the following parameters are known: ■ K=Cost per order ■ h=Cost of holding one unit in inventory for a year ■ D=Annual demand for product 607 608 Microsoft Excel 2010: Data Analysis and Business Modeling You can follow an example of how to work with these parameters by using the EOQ ­worksheet in the file Eoq.xlsx, which is shown in Figure 76-1. Figure 76-1 EOQ template. If q equals order size, annual inventory cost equals 0.5qh. (Throughout this example, I refer to this equation as Equation 1.) We derive Equation 1 because the average inventory level (0.5q) will be half the maximum inventory level. To see why the average inventory level is 0.5q, note that you can compute the average inventory level for a cycle (the time between the arrival of orders). At the beginning of a cycle, an order arrives, and the inventory level is q. At the end of the cycle, you are out of stock, and the inventory level is 0. Because demand occurs at a constant rate, the average inventory level during a cycle is simply the average of 0 and q or 0.5q. Maximum inventory level will equal q because orders are assumed to arrive at the ­instant that the inventory level is reduced to 0. Because D/q orders are placed per year, annual ordering cost equals (D/q)*K. (I refer to this equation as Equation 2.) Using calculus or the Excel Solver, you can show that the annual sum of inventory and ordering costs is minimized for a value of q equal to the economic order quantity (EOQ), which is calculated using the following formula. (I refer to this equation as Equation 3.) EOQ= 2KD h From this formula, you can see the following: ■ An increase in demand or ordering cost will increase the EOQ. ■ An increase in holding cost will decrease the EOQ. In the file Eoq.xlsx, I use Equation 3 to determine EOQ in cell C5. I determine annual holding cost in cell C6 by using Equation 1. I determine annual ordering cost in cell C7 with Equation 2. Notice that for EOQ, the annual ordering cost equals the annual holding cost, which will always be the case. In cell C8, I determine the total annual cost (ignoring the purchasing cost, which does not depend on my ordering strategy) with the formula C6+C7. Of course, you can use one-way and two-way data tables to determine the sensitivity of the EOQ and various costs to variations in K, h, and D. In this example, K=$10, D=10,000 cell Chapter 76 The Economic Order Quantity Inventory Model 609 phones per year, and h=$20 per cell phones. Inserting these values in cells C2:C4, I find the following: ■ Each order should be for 100 cell phones. ■ Annual holding and ordering costs each equal $1,000. The EOQ always sets annual holding costs equal to annual ordering costs. ■ Total annual costs (exclusive of purchasing costs) equal $2,000. When you are working with EOQ, keep the following in mind: ■ The presence of quantity discounts invalidates the EOQ because the annual purchase cost then depends on the order size. ■ The EOQ assumes that demand occurs at a relatively constant rate throughout the year. The EOQ should not be used for products for which there is seasonal demand. ■ Annual holding cost is usually assumed to be between 10 percent and 40 percent of a product’s unit purchasing cost. ■ I’ve included (in the EOQ Protected worksheet in the file Eoq.xlsx) a version of the EOQ worksheet in which all formulas are protected. When the sheet is protected, nobody can change the formulas. See Chapter 74, “Pricing Stock Options,” for instructions about how to protect a worksheet. More Info For more information about inventory modeling, interested readers can refer to my book Operations Research: Applications and Algorithms (Duxbury Press, 2007). A computer manufacturing plant produces 10,000 servers per year. The cost to produce each server is $2,000. The cost to set up a production run of servers is $200, and the cost to hold a server in inventory for a year is $500. The plant can produce 25,000 servers per year if it wants to. When the plant produces servers, how large a batch should it produce? With the EOQ model, you assume an order arrives the instant the order is placed. When a company manufactures a product instead of ordering it, an order must be produced and cannot arrive instantaneously. In such situations, instead of computing the cost-minimizing order quantity, you need to determine the cost-minimizing batch size. When a company produces a product internally instead of purchasing the product externally, the batch size that minimizes costs depends on the following parameters: ■ K=Cost of setting up a batch for production ■ h=Cost of holding each unit in inventory for a year ■ D=Annual demand for the product ■ R=Annual rate at which the product can be produced. For example, IBM might have the capacity to produce 25,000 servers per year. 610 Microsoft Excel 2010: Data Analysis and Business Modeling If q equals the size of each production batch, the annual holding cost equals 0.5*(q/R)*(R–D)*h. (I refer to this equation as Equation 4.) Equation 4 follows because each batch takes q/R years to produce, and during a production cycle, inventory increases at a rate of R–D. The maximum inventory level, which occurs at the completion of a batch, can be calculated as (q/R)*(R–D). The average inventory level will thus equal 0.5*(q/R)*(R–D). Because D/q batches are produced per year, annual setup cost equals KD/q (which I refer to as Equation 5). Using calculus or the Excel Solver, you can show that the batch size that ­minimizes the sum of annual setup and production-run costs is given by the following (which I refer to as Equation 6). This model is called the economic order batch (EOB) size. EOB= 2KDR h(R–D) From this formula, you can determine the following: ■ An increase in K or D will increase the EOB. ■ An increase in h or R will decrease the EOB. In the Cont Rate EOQ worksheet in the file Contrateeoq.xlsx, I constructed a template to ­determine the EOB, annual setup, and holding costs. The worksheet is shown in Figure 76-2. Figure 76-2 Template for computing EOB. For this example, K=$200, h=$500, D=10,000 units per year, and R=25,000 units per year. After entering these parameter values in the cell range C2:C5, I find the following: ■ The batch size that minimizes costs is 115.47 servers. Thus, the company should ­produce 115 or 116 servers in each batch. ■ The annual holding cost and setup costs equal $17,320.51. Again, the EOB will always set annual holding cost equal to annual setup cost. ■ Total annual cost (exclusive of variable production costs) is $34,641.02. ■ 86.6 batches per year will be produced. Chapter 76 The Economic Order Quantity Inventory Model 611 When you are working with the EOB model, keep the following in mind: ■ If the unit variable cost of producing a product depends on the batch size, the EOB model is invalid. ■ The EOB assumes that demand occurs at a relatively constant rate throughout the year. The EOB should not be used for products for which there is seasonal demand. ■ The annual holding cost is usually assumed to be between 10 percent and 40 percent of a product’s unit purchasing cost. ■ I’ve included (in the Protected worksheet in the file Contrateeoq.xlsx) a version of the EOB worksheet in which all formulas are protected. See Chapter 74 for instructions about how to protect a worksheet. Problems 1. An appliance store sells plasma TVs. Annual demand is estimated at 1,000 units. The cost to carry a TV in inventory for one year is $500, and the cost to place an order for plasma TVs is $400. ❑ How many TVs should be ordered each time an order is placed? ❑ How many orders per year should be placed? ❑ What are the annual inventory and ordering costs? 2. Suppose that the Waterford Crystal company can produce up to 100 iced-tea p ­ itchers per day. Further suppose that the plant is open 250 days per year, and that annual ­demand is for 20,000 pitchers. The cost to hold a pitcher in inventory for a year might be $10, and the cost to set up the facility to produce iced tea pitchers might be $40. ❑ What batch size would you recommend for iced-tea pitchers? ❑ How many batches per year should be produced? ❑ What are the annual setup and inventory costs for iced-tea pitchers? Chapter 77 Inventory Modeling with Uncertain Demand Questions answered in this chapter: ■ At what inventory level should I place an order if my goal is to minimize annual ­holding, ordering, and shortage costs? ■ What does the term 95-percent service level mean? In Chapter 76, “The Economic Order Quantity Inventory Model,” I showed how to use the economic order quantity (EOQ) to determine an optimal order quantity and production batch size. The examples assumed that demand occurred at a constant rate. Thus, if annual demand occurred at a rate of, for example, 1,200 units per year, monthly demand would equal 100 units. As long as demand occurs at a relatively constant rate, the EOQ is a good approximation of the cost-minimizing order quantity. In reality, demand during any time period is uncertain. When demand is uncertain, a natural question is how low to let the inventory level go before placing an order. The inventory level at which an order should be placed is called the reorder point. Clearly, a high reorder point will decrease shortage costs and increase holding costs. Similarly, a low reorder point will increase shortage costs and decrease holding costs. At some intermediate reorder point, the sum of shortage and holding costs is minimized. The first example in this chapter shows how to determine a reorder point that minimizes expected ordering, shortage, and holding costs based on the following two assumptions: ■ Each unit you are short is back ordered by a customer, and you incur the shortage cost cB. This cost is primarily a measure of the customer’s dissatisfaction caused by late ­receipt of an ordered item. ■ Each unit you are short results in a lost sale, and you incur the shortage cost cLS>cB. The lost sales cost includes the profit lost from the lost sale as well as the shortage cost included in cB. The second example shows how to determine the optimal reorder point based on a service level approach. For example, a 95-percent service level means that you set the reorder point at a level ensuring that, on average, 95 percent of all demand is met on time. It is usually ­difficult to determine the cost of a shortage in either the back-ordered case or the lost-sales case. For that reason, most companies set reorder points by using the service level approach. 613 614 Microsoft Excel 2010: Data Analysis and Business Modeling Note On this book’s companion Web site, for the back-ordered and lost-sales models, I’ve included a worksheet named Protected in which all formulas are protected for both the ­back-ordered and lost-sales cases. You can use these worksheets as templates. Answers to This Chapter’s Questions At what inventory level should I place an order if my goal is to minimize annual holding, ordering, and shortage costs? As I indicated in Chapter 76, the EOQ depends on the following parameters: ■ K=Cost per order . ■ h=Cost of holding one unit in inventory for a year. ■ D=Annual demand for the product. Because demand is now uncertain, you let D stand for the expected annual demand for the product. The Back-Order Case See the file Reorderpoint_backorder.xlsx, shown in Figure 77-1, for the data I’m using in this example. Let’s first suppose that each shortage results in the back-ordered units. In other words, a shortage does not result in any lost demand. Also assume that each unit you are short incurs a cost cB. In this case, the reorder point depends on the following quantities: ■ EOQ is the economic order quantity (the quantity ordered each time an order is placed) ■ K is the cost per order ■ h is the annual holding cost per unit ■ D is the mean annual demand ■ SOC is the cost per unit short ■ annsig is the standard deviation of annual demand ■ meanLT is the average lead time; that is, the average time between placing an order and the time the order is received ■ sigmaLT is the standard deviation of lead time Say that a department store wants to determine an optimal inventory policy for ordering electric mixers. They have the following information: ■ It costs $50 to place an order for mixers. ■ It costs $10 to hold a mixer in inventory for a year. Chapter 77 Inventory Modeling with Uncertain Demand 615 Figure 77-1 Determining reorder point when shortages are back ordered. ■ On average, the store sells 1,000 mixers per year. ■ All customers who try to purchase a mixer when the store is sold out of them return at a later date and buy a mixer when the mixer is in stock. The store incurs a penalty of $20 for each unit it is short. ■ The annual demand for mixers (based on historical data) has a standard deviation of 40.8. ■ Lead time is always two weeks (0.038 years), with a standard deviation of 0. After you enter K, h, and D in cells C2:C4, the spreadsheet computes the EOQ (100 mixers) in C5. After you enter SOC, annsig, meanLT, and sigmaLT in cells C7:C10, the spreadsheet computes in cell C14 the reorder point that minimizes the sum of expected annual holding and shortage costs (51.63 mixers). Thus, the department store should order 100 mixers whenever its stock decreases to 51.62 (or 52) mixers. The safety stock level associated with a given reorder point is reorder point–mean lead time demand. The department store maintains a safety stock level of 51.62–38.46=13.16 mixers, computed in cell C15. Essentially, the safety stock is always in inventory, resulting in extra holding costs. A higher level of safety stock will, of course, reduce shortages. The Lost-Sales Case Now suppose that each shortage results in a lost sale. The cost associated with a lost sale is usually estimated as the back-order penalty plus the profit associated with a unit sold. Suppose that the department store earns a $20 profit on each mixer it sells. The unit ­shortage cost for the lost-sales case is then $40 ($20 lost profit+$20 back-order penalty). In the file Reorderpoint_lostsales.xlsx, shown in Figure 77-2, you can see the work I did to estimate the reorder point for the lost-sales case. After entering in cell C7 of the spreadsheet the lost-sales cost of $40, I find that the optimal inventory policy is to order 100 mixers and place an order when inventory is down to 54.23 mixers. Our safety stock level is 15.77 mixers, and 2.4 percent of the store’s demand for mixers will be unmet. Notice that the assumption 616 Microsoft Excel 2010: Data Analysis and Business Modeling of a lost sale has increased the reorder point and reduced the probability of a shortage. This happens because the increased cost of a shortage (from $20 to $40) makes the store more eager to avoid shortages. Figure 77-2 Determining reorder point when sales will be lost. Increased uncertainty greatly increases the reorder point. For example, in the lost-sales case, if the standard deviation for lead time is one week (0.019 years) rather than 0, the reorder point increases to 79.50 mixers, and the safety stock more than doubles from the case in which our lead time was known with certainty. What does the term 95-percent service level mean? As stated earlier in the chapter, a 95-percent service level simply means that you want 95 percent of your demand to be met on time. Because estimating the back-order penalty and/or the penalty that results from a lost sale is often difficult, many companies set safety stock levels for products by setting a service level. Using the file Servicelevelreorder.xlsx (shown in Figure 77-3), you can determine the reorder point corresponding to any service level you want. Figure 77-3 Determination of reorder point using the service level approach. Chapter 77 Inventory Modeling with Uncertain Demand 617 As an example, consider a pharmacy that is trying to determine an optimal inventory policy for a drug it stocks. The pharmacy would like to meet 95 percent of demand for the drug on time. The following parameters are relevant. ■ Each order for the drug costs $50. ■ The cost to hold a unit of the drug in inventory for a year is $10. ■ Average demand per year for the drug is 1,000 units. ■ The standard deviation of annual demand is 69.28 units. ■ The time required to receive a shipment of the drug always takes exactly one month (0.083 years). You enter the service level you want (0.95) in cell C1 and all other parameters in cells C2:C4 and C7:C9. To determine the reorder point yielding the service level you want, click Solver in the Data Analysis group on the Data tab. The Solver model (see Figure 77-4) adjusts the reorder point until the percentage of demand met on time matches the service level you want. Under Options, choose the Multistart setting. (See Chapter 35, “Warehouse Location and the GRG Multistart and Evolutionary Solver Engines.”) Then you put a lower bound of .001 on the reorder point (to keep the Solver from trying a negative reorder point) and an upper bound of 10,000 (fairly arbitrary) on the reorder point. If the Solver bumps up against your upper bound, you should relax the bound. As you can see in Figure 77-3, the pharmacy should ­order 100 units of the drug whenever its inventory level drops to 90.23 units. This reorder point corresponds to a safety stock level of 6.90 units. Figure 77-4 Solver Parameters dialog box for determining the reorder point for a 95-percent service level. 618 Microsoft Excel 2010: Data Analysis and Business Modeling In the following table, I’ve listed the reorder point and safety stock levels corresponding to service levels between 80 percent and 99 percent. Service-level percentage Reorder point/units Safety stock/units 80 65.34 -17.99 85 71.85 -11.48 90 79.57 -3.76 95 90.23 6.90 99 108.44 25.11 Notice that moving from an 80-percent service level to a 99-percent service level increases the reorder point by almost 67 percent! Also note that you can attain a 90-percent service level with a reorder point less than the mean lead time demand (refer back to cell C10 in Figure 77-3). A 90-percent service level results in a negative safety stock level, which is ­possible because shortages occur only during the lead time and lead times usually cover a small portion of a year. Problems When working with Problems 1 and 2, assume that a restaurant serves an average of 5,000 bottles of wine per year. The standard deviation of the annual demand for wine is 1,000 bottles. The annual holding cost for a bottle of wine is $1. It costs $10 to place an order for wine, and it takes an average of three weeks (with a standard deviation of one week) for the wine to arrive. 1. Assume that when the restaurant is out of wine it incurs a penalty of $5 as the result of lost goodwill. Also, the restaurant earns a profit of $2 per bottle of wine. Determine an optimal ordering policy for the wine. 2. Determine an inventory policy for wine that yields a 99-percent service level. 3. A reorder point policy is often referred to as a two-bin policy. How can a reorder point policy be implemented in a situation in which two bins are used to store inventory? Chapter 78 Queuing Theory: The Mathematics of Waiting in Line Questions answered in this chapter: ■ What factors affect the number of people and the time we spend waiting in line? ■ What conditions should be met before analyzing the average number of people ­present or the average time spent in a queuing system? ■ Why does variability degrade the performance of a queuing system? ■ Can I easily determine the average time a person spends at airport security or waiting in line at a bank? We have all spent a lot of time waiting in lines, and you’ll soon see that a slight increase in service capacity can often greatly reduce the size of the lines we encounter. If you run a business, ensuring that your customers do not spend too much time waiting is important. Therefore, business people need to understand the mathematics of wait time, usually ­referred to as queuing theory. In this chapter, I’ll show you how to determine the service ­capacity needed to provide adequate service. Answers to This Chapter’s Questions What factors affect the number of people and the time we spend waiting in line? In this chapter, I’ll address queuing problems in which all arriving customers wait in one line for the first available service person. (To keep things simple, I’ll refer to service people as servers.) This model is a fairly accurate representation of the situations you face when you wait at a bank, at an airport security line, or at the post office. By the way, the idea of having customers wait in one line started about 1970, when banks and post-office branches realized that although waiting in one line does not reduce the average time customers spend waiting, it does reduce the variability of the time they spend in line, thereby creating a “fairer” system. Three main factors influence the time you spend in a queuing system: ■ The number of servers Clearly, the more servers, the less time on average customers spend in line, and fewer people on average will be present in the line. ■ The mean and the standard deviation of the time between arrivals The time between arrivals is called interarrival time. If the average interarrival time increases, the number of arrivals decreases, which results in shorter lines and less time spent in 619 620 Microsoft Excel 2010: Data Analysis and Business Modeling a queuing system. As you’ll soon see, an increase in standard deviation of i­nterarrival times increases the average time a customer spends in a queuing system and the ­average number of customers present. ■ The mean and the standard deviation of the time needed to complete ­service If the average service time increases, you will see an increase in the average time a customer spends in the system and in the number of customers present. As you’ll see, an increase in the standard deviation of service times increases the average time a customer spends in a queuing system and the average number of customers present. What conditions should be met before analyzing the average number of people present or the average time spent in a queuing system? When analyzing the time people spend waiting in lines, mathematicians talk about steady state characteristics of a system. Essentially, steady state means that a system has operated for a long time. More specifically, analysts would like to know the value of the following quantities in the steady state: ■ W=Average time a customer spends in the system ■ Wq=Average time a customer spends waiting in line before the customer is served ■ L=Average number of customers present in the system ■ Lq=Average number of customers waiting in line By the way, it is always true that L=(1/mean interarrival time)*W and Lq=(1/mean interarrival time)*Wq. To discuss the steady state of a queuing system meaningfully, the following must be the case: ■ The mean and standard deviation of both the interarrival times and the service times changes little over time. The technical phrase is that the distribution of interarrival and service times is stationary over time. ■ (1/mean service time)*(number of servers)>(1/(mean interarrival time)). I’ll refer to this equation as Equation 1. Essentially, if Equation 1 is true, you can serve more people per hour than are arriving. For example, if mean service time equals 2 minutes (or 1/30 of an hour), and mean ­interarrival time equals 1 minute (or 1/60 of an hour), Equation 1 tells you that 30*(number of ­servers)>60, or that the number of servers must be greater than or equal to 3 for a steady state to exist. If you cannot serve customers faster than they arrive, eventually you fall behind and never catch up, resulting in an infinite line. Chapter 78 Queuing Theory: The Mathematics of Waiting in Line 621 Why does variability degrade the performance of a queuing system? To see why variability degrades the performance of a queuing system, consider a one-server system in which customers arrive every 2 minutes and service times always equal 2 minutes. There will never be more than one customer in the system. Now suppose that customers ­arrive every 2 minutes, but half of all service times are 0.5 minutes and half are 3.5 minutes. Even though arrivals are totally predictable, the uncertainty in service time means that eventually the server falls behind and a line forms. For example, if the first four customers have 3.5 minute service times, after 12 minutes, four customers are waiting, which is illustrated in the following table. Time Event Present after event 0 minutes Arrival 1 person 2 minutes Arrival 2 people 3.5 minutes Service completed 1 person 4 minutes Arrival 2 people 6 minutes Arrival 3 people 7 minutes Service completed 2 people 8 minutes Arrival 3 people 10 minutes Arrival 4 people 10.5 minutes Service completed 3 people 12 minutes Arrival 4 people Can I easily determine the average time a person spends at airport security or waiting in line at a bank? The Model worksheet in the file Queuingtemplate.xlsx contains a template that you can use to determine approximate values for L, W, Lq, and Wq (usually within 10 percent of their true value). The worksheet is shown in Figure 78-1. Figure 78-1 Queuing template. 622 Microsoft Excel 2010: Data Analysis and Business Modeling After you enter the following data, the template computes Wq, Lq, W, and L. The parameters in cells B6:B9 can easily be estimated by using past data: ■ Number of servers (cell B5) ■ Mean interarrival time (cell B6) ■ Mean service time (cell B7) ■ Standard deviation of interarrival times (cell B8) ■ Standard deviation of service times (cell B9) Here’s an example of the template in action. You want to determine how the operating ­characteristics of an airline security line during the 9:00 A.M. to 5:00 P.M. shift depend on the number of agents working. In the Queuing Data worksheet in the file Queuingtemplate.xlsx, shown in Figure 78-2, I’ve tabulated interarrival times and service times. (Some rows have been hidden.) Figure 78-2 Airline interarrival and service times. By copying from cell B1 to C1 the formula AVERAGE(B4:B62), you find the mean interarrival time is 12.864 seconds and the mean service time is 77.102 seconds. Because mean service time is almost six times as large as mean interarrival time, you need at least six agents to guarantee a steady state. Copying from cell B2 to C2 the formula STDEV.S(B4:B62) tells you that the standard deviation of the interarrival times is 4.439 seconds, and the standard ­deviation of the service times is 48.051 seconds. Chapter 78 Queuing Theory: The Mathematics of Waiting in Line 623 Returning to the queuing template in the Model worksheet, if you enter these values in cells B6:B9 and enter six servers in cell B5, you find that disaster ensues. In the steady state, nearly 236 people will be in line (cell B19). You’ve probably been at the airport in this situation. I used a one-way data table (shown in Figure 78-3) to determine how changing the number of agents affects the system’s performance. In cells F10:F14, I entered the number of agents to consider (6 through 10). In cell G9, I enter the formula to compute L(=B19), and in H9, I enter the formula to compute W(=B18). Next, I select the table range (F8:H14) and then click Data Table from the What-If Analysis menu on the Data tab. After choosing cell B5 (the number of servers) as the row input cell, I obtain the data table shown in Figure 78-3. Notice that adding just one ticket agent to the original six agents reduces the expected number of customers present in line from 236 to fewer than 7. Adding the seventh agent reduces a customer’s average time in the system from 3,038 seconds (50.6 minutes) to 89 seconds (1.5 minutes). This example shows that a small increase in service capacity can greatly improve the performance of a queuing system. Figure 78-3 Sensitivity analysis for an airport security line. In cells F16:K22, I used a two-way data table to examine the sensitivity of the average time in the system (W) to changes in the number of servers and standard deviation of service times. The row input cell is B5, and the column input cell is B9. When seven agents are working, an increase in the standard deviation of service times from 40 seconds to 90 seconds results in a 29 percent increase in the mean time in the system (from 86.2 seconds to 111.8 seconds). Note Readers who are interested in a more extensive discussion of the queuing theory should refer to my book Operations Research: Applications and Algorithms (Duxbury Press, 2007). 624 Microsoft Excel 2010: Data Analysis and Business Modeling Problems A bank has six tellers. Use the following information to answer Problems 1–4: ■ Mean service time equals 1 minute. ■ Mean interarrival time equals 25 seconds. ■ Standard deviation of service times equals 1 minute. ■ Standard deviation of interarrival times equals 10 seconds. 1. Determine the average time a customer waits in line. 2. On average, how many customers are present in the bank line? 3. Would you recommend adding more tellers? 4. Suppose it costs $20 per hour to have a teller working and you value a customer’s time at $15 per hour. How many tellers should you have working? 5. Thirty women work on the fifth floor of a business school. Assume each woman uses the restroom three times a day (the office is open from 8 A.M. to 5 P.M.), and each visit takes 180 seconds on average, with a standard deviation of 90 seconds. Assume the standard deviation of time between arrivals to the restroom is 5 minutes. How many toilets would you recommend for the woman’s restroom? Chapter 79 Estimating a Demand Curve Questions answered in this chapter: ■ What do I need to know to price a product? ■ What is the meaning of elasticity of demand? ■ Is there any easy way to estimate a demand curve? ■ What does a demand curve tell us about a customer’s willingness to pay for our product? Every business must determine a price for each of its products. Pricing a product properly is difficult. In Chapter 80, “Pricing Products by Using Tie-Ins,” and Chapter 81, “Pricing Products by Using Subjectively Determined Demand,” I’ll describe some simple models that might aid you in pricing a product to maximize profitability. For further insights into pricing, refer to the excellent book Power Pricing, by Robert J. Dolan and Hermann Simon (Free Press, 1996). Answers to This Chapter’s Questions What do I need to know to price a product? Let’s consider a product such as a candy bar. In order to determine a profit-maximizing price, you need to know two things: ■ The variable cost of producing each unit of the product (I’ll call this UC). ■ The product’s demand curve. Simply put, a demand curve tells you the number of units of a product a customer will demand at each price. In short, if you charge a price of $p per unit, the demand curve gives you a number D(p), which equals the number of units of the product that will be demanded at price $p. Of course, a firm’s demand curve is constantly changing and often depends on factors beyond the firm’s control (such as the state of the economy and a competitor’s price). After you know UC and the demand curve, the profit corresponding to a price of $p is simply (p–UC)*D(p). After you have an equation for D(p), whi