Details

Principles of Financial Modelling


Principles of Financial Modelling

Model Design and Best Practices Using Excel and VBA
The Wiley Finance Series 1. Aufl.

von: Michael Rees

63,99 €

Verlag: Wiley
Format: PDF
Veröffentl.: 16.03.2018
ISBN/EAN: 9781118903940
Sprache: englisch
Anzahl Seiten: 544

DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.

Beschreibungen

<p><b>The comprehensive, broadly-applicable, real-world guide to financial modelling</b></p> <p><i>Principles of Financial Modelling </i>– <i>Model Design and Best Practices Using Excel and VBA</i>covers the full spectrum of financial modelling tools and techniques in order to provide practical skills that are grounded in real-world applications. Based on rigorously-tested materials created for consulting projects and for training courses, this book demonstrates how to plan, design and build financial models that are flexible, robust, transparent, and highly applicable to a wide range of planning, forecasting and decision-support contexts. This book integrates theory and practice to provide a high-value resource for anyone wanting to gain a practical understanding of this complex and nuanced topic. Highlights of its content include extensive coverage of:</p> <ul> <li>Model design and best practices, including the optimisation of data structures and layout, maximising transparency, balancing complexity with flexibility, dealing with circularity, model audit and error-checking</li> <li>Sensitivity and scenario analysis, simulation, and optimisation</li> <li>Data manipulation and analysis</li> <li>The use and choice of Excel functions and functionality, including advanced functions and those from all categories, as well as of VBA and its key areas of application within financial modelling</li> </ul> <p>The companion website provides approximately 235 Excel files (screen-clips of most of which are shown in the text), which demonstrate key principles in modelling, as well as providing many examples of the use of Excel functions and VBA macros. These facilitate learning and have a strong emphasis on practical solutions and direct real-world application.</p> <p>For practical instruction, robust technique and clear presentation, <i>Principles of Financial Modelling</i> is the premier guide to real-world financial modelling from the ground up. It provides clear instruction applicable across sectors, settings and countries, and is presented in a well-structured and highly-developed format that is accessible to people with different backgrounds.</p>
<p>Preface xxv</p> <p>About the Author xxvii</p> <p>About the Website xxix</p> <p><b>Part One Introduction to Modelling, Core Themes and Best Practices 1</b></p> <p><b>Chapter 1 Models of Models 3</b></p> <p>Introduction 3</p> <p>Context and Objectives 3</p> <p>The Stages of Modelling 3</p> <p>Backward Thinking and Forward Calculation Processes 4</p> <p><b>Chapter 2 Using Models in Decision Support 7</b></p> <p>Introduction 7</p> <p>Benefits of Using Models 7</p> <p>Providing Numerical Information 7</p> <p>Capturing Influencing Factors and Relationships 7</p> <p>Generating Insight and Forming Hypotheses 8</p> <p>Decision Levers, Scenarios, Uncertainties, Optimisation,  Risk Mitigation and Project Design 8</p> <p>Improving Working Processes, Enhanced Communications and Precise Data Requirements 9</p> <p>Challenges in Using Models 9</p> <p>The Nature of Model Error 9</p> <p>Inherent Ambiguity and Circularity of Reasoning 10</p> <p>Inconsistent Scope or Alignment of Decision and Model 10</p> <p>The Presence on Biases, Imperfect Testing, False Positives and Negatives 11</p> <p>Balancing Intuition with Rationality 11</p> <p>Lack of Data or Insufficient Understanding of a Situation 12</p> <p>Overcoming Challenges: Awareness, Actions and Best Practices 13</p> <p><b>Chapter 3 Core Competencies and Best Practices: Meta-themes 15</b></p> <p>Introduction 15</p> <p>Key Themes 15</p> <p>Decision-support Role, Objectives, Outputs and Communication 16</p> <p>Application Knowledge and Understanding 17</p> <p>Skills with Implementation Platform 17</p> <p>Defining Sensitivity and Flexibility Requirements 18</p> <p>Designing Appropriate Layout, Input Data Structures and Flow 20</p> <p>Ensuring Transparency and Creating a User-friendly Model 20</p> <p>Integrated Problem-solving Skills 21</p> <p><b>Part Two Model Design and Planning 23</b></p> <p><b>Chapter 4 Defining Sensitivity and Flexibility Requirements 25</b></p> <p>Introduction 25</p> <p>Key Issues for Consideration 25</p> <p>Creating a Focus on Objectives and Their Implications 26</p> <p>Sensitivity Concepts in the Backward Thought and Forward Calculation</p> <p>Processes 26</p> <p>Time Granularity 30</p> <p>Level of Detail on Input Variables 30</p> <p>Sensitising Absolute Values or Variations from Base Cases 31</p> <p>Scenarios Versus Sensitivities 32</p> <p>Uncertain Versus Decision Variables 33</p> <p>Increasing Model Validity Using Formulae 34</p> <p><b>Chapter 5 Database Versus Formulae-driven Approaches 37</b></p> <p>Introduction 37</p> <p>Key Issues for Consideration 37</p> <p>Separating the Data, Analysis and Presentation (Reporting) Layers 37</p> <p>The Nature of Changes to Data Sets and Structures 39</p> <p>Focus on Data or Formulae? 40</p> <p>Practical Example 42</p> <p><b>Chapter 6 Designing the Workbook Structure 47</b></p> <p>Introduction 47</p> <p>Designing Workbook Models with Multiple Worksheets 47</p> <p>Linked Workbooks 47</p> <p>Multiple Worksheets: Advantages and Disadvantages 48</p> <p>Generic Best Practice Structures 49</p> <p>The Role of Multiple Worksheets in Best Practice Structures 49</p> <p>Type I: Single Worksheet Models 50</p> <p>Type II: Single Main Formulae Worksheet, and Several Data Worksheets 50</p> <p>Type III: Single Main Formulae Worksheet, and Several Data and Local Analysis Worksheets 51</p> <p>Further Comparative Comments 51</p> <p>Using Information from Multiple Worksheets: Choice (Exclusion) and Consolidation (Inclusion) Processes 52</p> <p>Multi-sheet or “Three Dimensional” Formulae 53</p> <p>Using Excel’s Data/Consolidation Functionality 54</p> <p>Consolidating from Several Sheets into a Database Using a Macro 55</p> <p>User-defined Functions 56</p> <p><b>Part Three Model Building, Testing and Auditing 57</b></p> <p><b>Chapter 7 Creating Transparency: Formula Structure, Flow and Format 59</b></p> <p>Introduction 59</p> <p>Approaches to Identifying the Drivers of Complexity 59</p> <p>Taking the Place of a Model Auditor 59</p> <p>Example: Creating Complexity in a Simple Model 60</p> <p>Core Elements of Transparent Models 61</p> <p>Optimising Audit Paths 62</p> <p>Creating Short Audit Paths Using Modular Approaches 63</p> <p>Creating Short Audit Paths Using Formulae Structure and Placement 67</p> <p>Optimising Logical Flow and the Direction of the Audit Paths 68</p> <p>Identifying Inputs, Calculations and Outputs: Structure and Formatting 69</p> <p>The Role of Formatting 70</p> <p>Colour-coding of Inputs and Outputs 70</p> <p>Basic Formatting Operations 73</p> <p>Conditional Formatting 73</p> <p>Custom Formatting 75</p> <p>Creating Documentation, Comments and Hyperlinks 76</p> <p><b>Chapter 8 Building Robust and Transparent Formulae 79</b></p> <p>Introduction 79</p> <p>General Causes of Mistakes 79</p> <p>Insufficient Use of General Best Practices Relating to Flow, Formatting,</p> <p>Audit Paths 79</p> <p>Insufficient Consideration Given to Auditability and Other Potential Users 79</p> <p>Overconfidence, Lack of Checking and Time Constraints 80</p> <p>Sub-optimal Choice of Functions 80</p> <p>Inappropriate Use or Poor Implementation of Named Ranges, Circular</p> <p>References or Macros 80</p> <p>Examples of Common Mistakes 80</p> <p>Referring to Incorrect Ranges or To Blank Cells 80</p> <p>Non-transparent Assumptions, Hidden Inputs and Labels 82</p> <p>Overlooking the Nature of Some Excel Function Values 82</p> <p>Using Formulae Which are Inconsistent Within a Range 83</p> <p>Overriding Unforeseen Errors with IFERROR 84</p> <p>Models Which are Correct in Base Case but Not in Others 85</p> <p>Incorrect Modifications when Working with Poor Models 85</p> <p>The Use of Named Ranges 85</p> <p>Mechanics and Implementation 86</p> <p>Disadvantages of Using Named Ranges 86</p> <p>Advantages and Key Uses of Named Ranges 90</p> <p>Approaches to Building Formulae, to Testing, Error Detection and Management 91</p> <p>Checking Behaviour and Detecting Errors Using Sensitivity Testing 91</p> <p>Using Individual Logic Steps 93</p> <p>Building and Splitting Compound Formulae 94</p> <p>Using Absolute Cell Referencing Only Where Necessary 96</p> <p>Limiting Repeated or Unused Logic 96</p> <p>Using Breaks to Test Calculation Paths 97</p> <p>Using Excel Error Checking Rules 97</p> <p>Building Error-checking Formulae 98</p> <p>Handling Calculation Errors Robustly 100</p> <p>Restricting Input Values Using Data Validation 100</p> <p>Protecting Ranges 101</p> <p><b>Dealing with Structural Limitations: Formulae and Documentation 102</b></p> <p>Chapter 9 Choosing Excel Functions for Transparency, Flexibility and Efficiency 105</p> <p>Introduction 105</p> <p>Key Considerations 105</p> <p>Direct Arithmetic or Functions, and Individual Cells or Ranges? 105</p> <p>IF Versus MIN/MAX 107</p> <p>Embedded IF Statements 109</p> <p>Short Forms of Functions 111</p> <p>Text Versus Numerical Fields 112</p> <p>SUMIFS with One Criterion 112</p> <p>Including Only Specific Items in a Summation 113</p> <p>AGGREGATE and SUBTOTAL Versus Individual Functions 114</p> <p>Array Functions or VBA User-defined Functions? 115</p> <p>Volatile Functions 115</p> <p>Effective Choice of Lookup Functions 116</p> <p><b>Chapter 10 Dealing with Circularity 117</b></p> <p>Introduction 117</p> <p>The Drivers and Nature of Circularities 117</p> <p>Circular (Equilibrium or Self-regulating) Inherent Logic 117</p> <p>Circular Formulae (Circular References) 118</p> <p>Generic Types of Circularities 119</p> <p>Resolving Circular Formulae 119</p> <p>Correcting Mistakes that Result in Circular Formulae 120</p> <p>Avoiding a Logical Circularity by Modifying the Model Specification 120</p> <p>Eliminating Circular Formulae by Using Algebraic (Mathematical) Manipulation 121</p> <p>Resolving a Circularity Using Iterative Methods 122</p> <p>Iterative Methods in Practice 123</p> <p>Excel’s Iterative Method 123</p> <p>Creating a Broken Circular Path: Key Steps 125</p> <p>Repeatedly Iterating a Broken Circular Path Manually and Using a VBA Macro 126</p> <p>Practical Example 128</p> <p>Using Excel Iterations to Resolve Circular References 129</p> <p>Using a Macro to Resolve a Broken Circular Path 129</p> <p>Algebraic Manipulation: Elimination of Circular References 130</p> <p>Altered Model 1: No Circularity in Logic or in Formulae 130</p> <p>Altered Model 2: No Circularity in Logic in Formulae 131</p> <p>Selection of Approach to Dealing with Circularities: Key Criteria 131</p> <p>Model Accuracy and Validity 132</p> <p>Complexity and Transparency 133</p> <p>Non-convergent Circularities 134</p> <p>Potential for Broken Formulae 138</p> <p>Calculation Speed 140</p> <p>Ease of Sensitivity Analysis 140</p> <p>Conclusions 141</p> <p><b>Chapter 11 Model Review, Auditing and Validation 143</b></p> <p>Introduction 143</p> <p>Objectives 143</p> <p>(Pure) Audit 143</p> <p>Validation 144</p> <p>Improvement, Restructuring or Rebuild 145</p> <p>Processes, Tools and Techniques 146</p> <p>Avoiding Unintentional Changes 146</p> <p>Developing a General Overview and Then Understanding the Details 147</p> <p>Testing and Checking the Formulae 151</p> <p>Using a Watch Window and Other Ways to Track Values 151</p> <p><b>Part Four Sensitivity and Scenario Analysis, Simulation and Optimisation 153</b></p> <p><b>Chapter 12 Sensitivity and Scenario Analysis: Core Techniques 155</b></p> <p>Introduction 155</p> <p>Overview of Sensitivity-related Techniques 155</p> <p>DataTables 156</p> <p>Overview 156</p> <p>Implementation 157</p> <p>Limitations and Tips 157</p> <p>Practical Applications 160</p> <p>Example: Sensitivity of Net Present Value to Growth Rates 160</p> <p>Example: Implementing Scenario Analysis 160</p> <p><b>Chapter 13 Using GoalSeek and Solver 163</b></p> <p>Introduction 163</p> <p>Overview of GoalSeek and Solver 163</p> <p>Links to Sensitivity Analysis 163</p> <p>Tips, Tricks and Limitations 163</p> <p>Practical Applications 164</p> <p>Example: Breakeven Analysis of a Business 165</p> <p>Example: Threshold Investment Amounts 166</p> <p>Example: Implied Volatility of an Option 167</p> <p>Example: Minimising Capital Gains Tax Liability 167</p> <p>Example: Non-linear Curve Fitting 169</p> <p><b>Chapter 14 Using VBA Macros to Conduct Sensitivity and Scenario Analyses 171</b></p> <p>Introduction 171</p> <p>Practical Applications 172</p> <p>Example: Running Sensitivity Analysis Using a Macro 172</p> <p>Example: Running Scenarios Using a Macro 173</p> <p>Example: Using a Macro to Run Breakeven Analysis with GoalSeek 173</p> <p>Example: Using Solver Within a Macro to Create a Frontier of Optimum Solutions 175</p> <p><b>Chapter 15 Introduction to Simulation and Optimisation 177</b></p> <p>Introduction 177</p> <p>The Links Between Sensitivity and Scenario Analysis,</p> <p>Simulation and Optimisation 177</p> <p>The Combinatorial Effects of Multiple Possible Input Values 177</p> <p>Controllable Versus Non-controllable: Choice Versus</p> <p>Uncertainty of Input Values 178</p> <p>Practical Example: A Portfolio of Projects 179</p> <p>Description 179</p> <p>Optimisation Context 180</p> <p>Risk or Uncertainty Context Using Simulation 180</p> <p>Further Aspects of Optimisation Modelling 182</p> <p>Structural Choices 182</p> <p>Uncertainty 183</p> <p>Integrated Approaches to Optimisation 183</p> <p>Modelling Issues and Tools 184</p> <p><b>Chapter 16 The Modelling of Risk and Uncertainty, and Using Simulation 187</b></p> <p>Introduction 187</p> <p>The Meaning, Origins and Uses of Monte Carlo Simulation 187</p> <p>Definition and Origin 187</p> <p>Limitations of Sensitivity and Scenario Approaches 188</p> <p>Key Benefits of Uncertainty and Risk Modelling and the Questions Addressable 189</p> <p>The Nature of Model Outputs 190</p> <p>The Applicability of Simulation Methods 190</p> <p>Key Process and Modelling Steps in Risk Modelling 191</p> <p>Risk Identification 191</p> <p>Risk Mapping and the Role of the Distribution of Input Values 191</p> <p>The Modelling Context and the Meaning of Input Distributions 192</p> <p>The Effect of Dependencies Between Inputs 192</p> <p>Random Numbers and the Required Number of Recalculations or Iterations 193</p> <p>Using Excel and VBA to Implement Risk and Simulation Models 194</p> <p>Generation of Random Samples 194</p> <p>Repeated Recalculations and Results Storage 195</p> <p>Example: Cost Estimation with Uncertainty and Event Risks Using Excel/VBA 196</p> <p>Using Add-ins to Implement Risk and Simulation Models 196</p> <p>Benefits of Add-ins 196</p> <p>Example: Cost Estimation with Uncertainty and Event Risks Using @RISK 197</p> <p><b>Part Five Excel Functions and Functionality 199</b></p> <p><b>Chapter 17 Core Arithmetic and Logical Functions 201</b></p> <p>Introduction 201</p> <p>Practical Applications 201</p> <p>Example: IF, AND, OR, NOT 202</p> <p>Example: MIN, MAX, MINA, MAXA 204</p> <p>Example: MINIFS and MAXIFS 204</p> <p>Example: COUNT, COUNTA, COUNTIF and Similar Functions 205</p> <p>Example: SUM, AVERAGE, AVERAGEA 206</p> <p>Example: SUMIF, SUMIFS, AVERAGEIF, AVERAGEIFS 206</p> <p>Example: PRODUCT 207</p> <p>Example: SUMPRODUCT 209</p> <p>Example: SUBTOTAL 209</p> <p>Example: AGGREGATE 210</p> <p>Example: IFERROR 212</p> <p>Example: SWITCH 215</p> <p><b>Chapter 18 Array Functions and Formulae 217</b></p> <p>Introduction 217</p> <p>Functions and Formulae: Definitions 217</p> <p>Implementation 217</p> <p>Advantages and Disadvantages 218</p> <p>Practical Applications: Array Functions 218</p> <p>Example: Capex and Depreciation Schedules Using TRANSPOSE 218</p> <p>Example: Cost Allocation Using SUMPRODUCT with TRANSPOSE 218</p> <p>Example: Cost Allocation Using Matrix Multiplication Using MMULT 219</p> <p>Example: Activity-based Costing and Resource Forecasting Using Multiple Driving Factors 220</p> <p>Example: Summing Powers of Integers from 1 Onwards 222</p> <p>Practical Applications: Array Formulae 225</p> <p>Example: Finding First Positive Item in a List 225</p> <p>Example: Find a Conditional Maximum 226</p> <p>Example: Find a Conditional Maximum Using AGGREGATE as an Array Formula 227</p> <p><b>Chapter 19 Mathematical Functions 229</b></p> <p>Introduction 229</p> <p>Practical Applications 229</p> <p>Example: EXP and LN 229</p> <p>Example: ABS and SIGN 232</p> <p>Example: INT, ROUNDDOWN, ROUNDUP, ROUND and TRUNC 233</p> <p>Example: MROUND, CEILING.MATH and FLOOR.MATH 235</p> <p>Example: MOD 236</p> <p>Example: SQRT and POWER 236</p> <p>Example: FACT and COMBIN 237</p> <p>Example: RAND() 238</p> <p>Example: SINE, ASIN, DEGREES and PI() 239</p> <p>Example: BASE and DECIMAL 241</p> <p><b>Chapter 20 Financial Functions 243</b></p> <p>Introduction 243</p> <p>Practical Applications 243</p> <p>Example: FVSCHEDULE 244</p> <p>Example: FV and PV 244</p> <p>Example: PMT, IPMT, PPMT, CUMIPMT, CUMPRINC and NPER 246</p> <p>Example: NPV and IRR for a Buy or Lease Decision 248</p> <p>Example: SLN, DDB and VDB 250</p> <p>Example: YIELD 252</p> <p>Example: Duration of Cash Flows 252</p> <p>Example: DURATION and MDURATION 253</p> <p>Example: PDURATION and RRI 254</p> <p>Other Financial Functions 255</p> <p><b>Chapter 21 Statistical Functions 257</b></p> <p>Introduction 257</p> <p>Practical Applications: Position, Ranking and Central Values 258</p> <p>Example: Calculating Mean and Mode 258</p> <p>Example: Dynamic Sorting of Data Using LARGE 260</p> <p>Example: RANK.EQ 261</p> <p>Example: RANK.AVG 262</p> <p>Example: Calculating Percentiles 262</p> <p>Example: PERCENTRANK-type Functions 263</p> <p>Practical Applications: Spread and Shape 264</p> <p>Example: Generating a Histogram of Returns Using FREQUENCY 265</p> <p>Example: Variance, Standard Deviation and Volatility 267</p> <p>Example: Skewness and Kurtosis 271</p> <p>Example: One-sided Volatility (Semi-deviation) 272</p> <p>Practical Applications: Co-relationships and Dependencies 273</p> <p>Example: Scatter Plots (<i>X–Y </i>Charts) and Measuring Correlation 274</p> <p>Example: More on Correlation Coefficients and Rank Correlation 275</p> <p>Example: Measuring Co-variances 277</p> <p>Example: Covariance Matrices, Portfolio Volatility and Volatility Time Scaling 277</p> <p>Practical Applications: Probability Distributions 280</p> <p>Example: Likelihood of a Given Number of Successes of an Oil Exploration Process 282</p> <p>Example: Frequency of Outcomes Within One or Two Standard Deviations 283</p> <p>Example: Creating Random Samples from Probability Distributions 283</p> <p>Example: User-defined Inverse Functions for Random Sampling 284</p> <p>Example: Values Associated with Probabilities for a Binomial Process 285</p> <p>Example: Confidence Intervals for the Mean Using Student (T) and Normal Distributions 285</p> <p>Example: the CONFIDENCE.T and CONFIDENCE.NORM Functions 287</p> <p>Example: Confidence Intervals for the Standard Deviation Using Chi-squared 289</p> <p>Example: Confidence Interval for the Slope of Regression Line (or Beta) 289</p> <p>Practical Applications: More on Regression Analysis and Forecasting 291</p> <p>Example: Using LINEST to Calculate Confidence Intervals for the Slope (or Beta) 291</p> <p>Example: Using LINEST to Perform Multiple Regression 292</p> <p>Example: Using LOGEST to Find Exponential Fits 293</p> <p>Example: Using TREND and GROWTH to Forecast Linear and Exponential Trends 294</p> <p>Example: Linear Forecasting Using FORECAST.LINEAR 295</p> <p>Example: Forecasting Using the FORECAST.ETS Set of Functions 296</p> <p><b>Chapter 22 Information Functions 299</b></p> <p>Introduction 299</p> <p>Practical Applications 300</p> <p>Example: In-formula Comments Using ISTEXT, ISNUMBER or N 300</p> <p>Example: Building a Forecast Model that Can Be Updated with Actual Reported Figures 300</p> <p>Example: Detecting Consistency of Data in a Database 301</p> <p>Example: Consistent use of “N/A” in Models 301</p> <p>Example: Applications of the INFO and CELL Functions: An Overview 303</p> <p>Example: Creating Updating Labels that Refer to Data or Formulae 303</p> <p>Example: Showing the User Which Recalculation Mode the File Is On 305</p> <p>Example: Finding the Excel Version Used and Creating Backward Compatible Formulae 305</p> <p>Example: File Location and Structural Information Using CELL, INFO, SHEET and SHEETS 306</p> <p><b>Chapter 23 Date and Time Functions 307</b></p> <p>Introduction 307</p> <p>Practical Applications 308</p> <p>Example: Task Durations, Resource and Cost Estimation 308</p> <p>Example: Keeping Track of Bookings, Reservations or Other Activities 308</p> <p>Example: Creating Precise Time Axes 309</p> <p>Example: Calculating the Year and Month of a Date 309</p> <p>Example: Calculating the Quarter in Which a Date Occurs 310</p> <p>Example: Creating Time-based Reports and Models from Data Sets 311</p> <p>Example: Finding Out on What Day of the Week You Were Born 311</p> <p>Example: Calculating the Date of the Last Friday of Every Month 311</p> <p>Example: the DATEDIF Function and Completed Time Periods 312</p> <p><b>Chapter 24 Text Functions and Functionality 313</b></p> <p>Introduction 313</p> <p>Practical Applications 314</p> <p>Example: Joining Text Using CONCAT and TEXTJOIN 314</p> <p>Example: Splitting Data Using the Text-to-columns Wizard 315</p> <p>Example: Converting Numerical Text to Numbers 316</p> <p>Example: Dynamic Splitting Text into Components I 316</p> <p>Example: Dynamic Splitting Text into Components II 317</p> <p>Example: Comparing LEFT, RIGHT, MID and LEN 317</p> <p>Example: Dynamic Splitting Text into Components III 318</p> <p>Example: Comparing FIND and SEARCH 319</p> <p>Example: the UPPER and LOWER Functions 319</p> <p>Example: the PROPER Function 319</p> <p>Example: the EXACT Function 320</p> <p>Example: Comparing REPLACE with SUBSTITUTE 320</p> <p>Example: the REPT Function 320</p> <p>Example: the CLEAN and TRIM Functions 321</p> <p>Example: Updating Model Labels and Graph Titles 322</p> <p>Example: Creating Unique Identifiers or Keys for Data Matching 323</p> <p><b>Chapter 25 Lookup and Reference Functions 325</b></p> <p>Introduction 325</p> <p>Practical Applications: Basic Referencing Processes 326</p> <p>Example: the ROW and COLUMN Functions 326</p> <p>Example: the ROWS and COLUMNS Functions 327</p> <p>Example: Use of the ADDRESS Function and the Comparison with CELL 327</p> <p>Practical Applications: Further Referencing Processes 328</p> <p>Example: Creating Scenarios Using INDEX, OFFSET or CHOOSE 328</p> <p>Example: Charts that Can Use Multiple or Flexible Data Sources 330</p> <p>Example: Reversing and Transposing Data Using INDEX or OFFSET 331</p> <p>Example: Shifting Cash Flows or Other Items over Time 334</p> <p>Example: Depreciation Schedules with Triangle Calculations 334</p> <p>Practical Applications: Combining Matching and Reference Processes 335</p> <p>Example: Finding the Period in Which a Condition is Met Using MATCH 335</p> <p>Example: Finding Non-contiguous Scenario Data Using Matching Keys 336</p> <p>Example: Creating and Finding Matching Text Fields or Keys 336</p> <p>Example: Combining INDEX with MATCH 337</p> <p>Example: Comparing INDEX-MATCH with V- and HLOOKUP 338</p> <p>Example: Comparing INDEX-MATCH with LOOKUP 343</p> <p>Example: Finding the Closest Matching Value Using Array and Other Function Combinations 344</p> <p>Practical Applications: More on the OFFSET Function and Dynamic Ranges 345</p> <p>Example: Flexible Ranges Using OFFSET (I) 345</p> <p>Example: Flexible Ranges Using OFFSET (II) 346</p> <p>Example: Flexible Ranges Using OFFSET (III) 347</p> <p>Example: Flexible Ranges Using OFFSET (IV) 347</p> <p>Practical Applications: The INDIRECT Function and Flexible Workbook or Data Structures 349</p> <p>Example: Simple Examples of Using INDIRECT to Refer to Cells and Other Worksheets 349</p> <p>Example: Incorporating Data from Multiple Worksheet Models and Flexible Scenario Modelling 351</p> <p>Example: Other Uses of INDIRECT – Cascading Drop-down Lists 352</p> <p>Practical Examples: Use of Hyperlinks to Navigate a Model, and Other Links to Data Sets 352</p> <p>Example: Model Navigation Using Named Ranges and Hyperlinks 353</p> <p><b>Chapter 26 Filters, Database Functions and PivotTables 355</b></p> <p>Introduction 355</p> <p>Issues Common to Working with Sets of Data 356</p> <p>Cleaning and Manipulating Source Data 356</p> <p>Static or Dynamic Queries 356</p> <p>Creation of New Fields or Complex Filters? 357</p> <p>Excel Databases and Tables 357</p> <p>Automation Using Macros 359</p> <p>Practical Applications: Filters 359</p> <p>Example: Applying Filters and Inspecting Data for Errors or Possible Corrections 359</p> <p>Example: Identification of Unique Items and Unique Combinations 362</p> <p>Example: Using Filters to Remove Blanks or Other Specified Items 363</p> <p>Example: Extraction of Data Using Filters 365</p> <p>Example: Adding Criteria Calculations to the Data Set 365</p> <p>Example: Use of Tables 366</p> <p>Example: Extraction of Data Using Advanced Filters 369</p> <p>Practical Applications: Database Functions 370</p> <p>Example: Calculating Conditional Sums and Maxima Using DSUM and DMAX 370</p> <p>Example: Implementing a Between Query 371</p> <p>Example: Implementing Multiple Queries 371</p> <p>Practical Applications: PivotTables 373</p> <p>Example: Exploring Summary Values of Data Sets 373</p> <p>Example: Exploring Underlying Elements of the Summary Items 376</p> <p>Example: Adding Slicers 376</p> <p>Example: Timeline Slicers 378</p> <p>Example: Generating Reports Which Ignore Errors or Other Specified Items 380</p> <p>Example: Using the GETPIVOTDATA Functions 380</p> <p>Example: Creating PivotCharts 382</p> <p>Example: Using the Excel Data Model to Link Tables 383</p> <p><b>Chapter 27 Selected Short-cuts and Other Features 387</b></p> <p>Introduction 387</p> <p>Key Short-cuts and Their Uses 387</p> <p>Entering and Modifying Data and Formulae 388</p> <p>Formatting 390</p> <p>Auditing, Navigation and Other Items 391</p> <p>Excel KeyTips 393</p> <p>Other Useful Excel Tools and Features 393</p> <p>Sparklines 393</p> <p>The Camera Tool 393</p> <p><b>Part Six Foundations of VBA and Macros 395</b></p> <p><b>Chapter 28 Getting Started 397</b></p> <p>Introduction 397</p> <p>Main Uses of VBA 397</p> <p>Task Automation 398</p> <p>Creating User-defined Functions 398</p> <p>Detecting and Reacting to Model Events 398</p> <p>Enhancing or Managing the User Interface 399</p> <p>Application Development 399</p> <p>Core Operations 399</p> <p>Adding the Developer Tab to Excel’s Toolbar 399</p> <p>The Visual Basic Editor 399</p> <p>Recording Macros 401</p> <p>Typical Adaptations Required When Using Recorded Code 402</p> <p>Writing Code 403</p> <p>Running Code 404</p> <p>Debugging Techniques 405</p> <p>Simple Examples 406</p> <p>Example: Using Excel Cell Values in VBA 406</p> <p>Example: Using Named Excel Ranges for Robustness and Flexibility 407</p> <p>Example: Placing a Value from VBA Code into an Excel Range 408</p> <p>Example: Replacing Copy/Paste with an Assignment 409</p> <p>Example: A Simple User-defined Function 409</p> <p>Example: Displaying a Message when a Workbook is Opened 410</p> <p><b>Chapter 29 Working with Objects and Ranges 413</b></p> <p>Introduction 413</p> <p>Overview of the Object Model 413</p> <p>Objects, Properties, Methods and Events 413</p> <p>Object Hierarchies and Collections 414</p> <p>Using Set. . .=. . . . 415</p> <p>Using the With. . .End With Construct 415</p> <p>Finding Alternatives to the Selection or Activation of Ranges and Objects 416</p> <p>Working with Range Objects: Some Key Elements 416</p> <p>Basic Syntax Possibilities and Using Named Ranges 416</p> <p>Named Ranges and Named Variables 417</p> <p>The CurrentRegion Property 417</p> <p>The xlCellTypeLastCell Property 418</p> <p>Worksheet Names and Code Names 419</p> <p>The UsedRange Property 419</p> <p>The Cells Property 420</p> <p>The Offset Property 421</p> <p>The Union Method 421</p> <p>InputBox and MsgBox 421</p> <p>Application.InputBox 422</p> <p>Defining Multi-cell Ranges 422</p> <p>Using Target to React to Worksheet Events 422</p> <p>Using Target to React to Workbook Events 423</p> <p><b>Chapter 30 Controlling Execution 425</b></p> <p>Introduction 425</p> <p>Core Topics in Overview 425</p> <p>Input Boxes and Message Boxes 425</p> <p>For. . .Next Loops 425</p> <p>For Each. . . In. . .Next 426</p> <p>If. . .Then 427</p> <p>Select Case. . .End Select 427</p> <p>GoTo 428</p> <p>Do. . .While/Until. . .Loop 428</p> <p>Calculation and Calculate 429</p> <p>Screen Updating 432</p> <p>Measuring Run Time 432</p> <p>Displaying Alerts 433</p> <p>Accessing Excel Worksheet Functions 433</p> <p>Executing Procedures Within Procedures 434</p> <p>Accessing Add-ins 435</p> <p>Practical Applications 435</p> <p>Example: Numerical Looping 435</p> <p>Example: Listing the Names of All Worksheets in a Workbook 436</p> <p>Example: Adding a New Worksheet to a Workbook 437</p> <p>Example: Deleting Specific Worksheets from a Workbook 437</p> <p>Example: Refreshing PivotTables, Modifying Charts and Working Through Other Object Collections 438</p> <p><b>Chapter 31 Writing Robust Code 441</b></p> <p>Introduction 441</p> <p>Key Principles 441</p> <p>From the Specific to the General 441</p> <p>Adapting Recorded Code for Robustness 442</p> <p>Event Code 442</p> <p>Comments and Indented Text 442</p> <p>Modular Code 443</p> <p>Passing Arguments ByVal or ByRef 443</p> <p>Full Referencing 445</p> <p>Using Worksheet Code Numbers 447</p> <p>Assignment Statements, and Manipulating Objects Rather Than Selecting or Activating Them 447</p> <p>Working with Ranges Instead of Individual Cells 448</p> <p>Data Types and Variable Declaration 448</p> <p>Choice of Names 449</p> <p>Working with Arrays in VBA 450</p> <p>Understanding Error Codes: An Introduction 451</p> <p>Further Approaches to Testing, Debugging and Error-handling 452</p> <p>General Techniques 452</p> <p>Debugging Functions 453</p> <p>Implementing Error-handling Procedures 454</p> <p><b>Chapter 32 Manipulation and Analysis of Data Sets with VBA 455</b></p> <p>Introduction 455</p> <p>Practical Applications 455</p> <p>Example: Working Out the Size of a Range 455</p> <p>Example: Defining the Data Set at Run Time Based on User Input 457</p> <p>Example: Working Out the Position of a Data Set Automatically 457</p> <p>Example: Reversing Rows (or Columns) of Data I: Placement in a New Range 459</p> <p>Example: Reversing Rows (or Columns) of Data II: In Place 460</p> <p>Example: Automation of Other Data-related Excel Procedures 461</p> <p>Example: Deleting Rows Containing Blank Cells 462</p> <p>Example: Deleting Blank Rows 463</p> <p>Example: Automating the Use of Filters to Remove Blanks or Other Specified Items 464</p> <p>Example: Performing Multiple Database Queries 468</p> <p>Example: Consolidating Data Sets That Are Split Across Various Worksheets or Workbooks 469</p> <p><b>Chapter 33 User-defined Functions 473</b></p> <p>Introduction 473</p> <p>Benefits of Creating User-defined Functions 473</p> <p>Syntax and Implementation 474</p> <p>Practical Applications 475</p> <p>Example: Accessing VBA Functions for Data Manipulation: Val, StrReverse and Split 476</p> <p>Example: A Wrapper to Access the Latest Excel Function Version 477</p> <p>Example: Replication of IFERROR for Compatibility with Excel 2003 478</p> <p>Example: Sum of Absolute Errors 479</p> <p>Example: Replacing General Excel Calculation Tables or Ranges 480</p> <p>Example: Using Application.Caller to Generate a Time Axis as an Array Function 480</p> <p>Example: User-defined Array Functions in Rows and Columns 482</p> <p>Example: Replacing Larger Sets of Excel Calculations: Depreciation Triangles 484</p> <p>Example: Sheet Reference Functions 485</p> <p>Example: Statistical Moments when Frequencies Are Known 487</p> <p>Example: Rank Order Correlation 489</p> <p>Example: Semi-deviation of a Data Set 491</p> <p>Index 493</p>
<p><b>MICHAEL REES, D.PHIL., MBA,</b> operates globally to help senior executives to solve their most complex problems in the areas of decision support, business strategy, value-creation, risk assessment, and optimisation. He combines practical experience from top firms with an exceptional analytic record, and is among the world’s leading authors and instructors in the field of financial and risk modelling. His special interest is in cases where issues in strategy, business economics, and valuation are best addressed using practical advanced quantitative approaches.</p> <p>He has a Doctorate in Mathematical Modelling and Numerical Algorithms, and a B.A. with First Class Honours in Mathematics, both from Oxford University in the UK. He has an MBA with distinction from INSEAD in France. He also studied for the Certificate of Quantitative Finance, graduating top of the class for course work, and receiving the Wilmott Award for the highest final exam mark. <p>He has approximately 30 years’ business and finance experience, in many sectors, including oil, gas, energy and resources, private equity, health care, biotechnology, chemicals, construction, engineering, and insurance.
<p><i>Principles of Financial Modelling</i> covers the full spectrum of financial modelling tools and techniques, which are drawn from the author’s years of experience in dealing with a wide variety of real-world applications, both from consulting projects and from conducting training courses. The book demonstrates how to plan, design and build financial models that are flexible, robust, and transparent, and which are applicable to many decision-support contexts, including forecasting, business planning, project evaluation and selection, portfolio optimisation, and resource allocation. </p> <p>The book includes extensive coverage of: <ul><li>Model design and best practices, including the optimisation of data structures and layout, maximising transparency, balancing complexity with flexibility, dealing with circularity, model audit and error-checking</li> <li>Sensitivity and scenario analysis, simulation, and optimisation</li> <li>Data manipulation and analysis</li></ul> <p><i>Principles of Financial Modelling</i> also provides practical examples of the use of most Excel functions, and an in-depth treatment of VBA and its key areas of application within financial modelling, including the automation of many tasks to improve efficiency in areas such as data analysis and manipulation, simulation, and user-defined functions.

Diese Produkte könnten Sie auch interessieren:

The Warren Buffett Way, 30th Anniversary Edition
The Warren Buffett Way, 30th Anniversary Edition
von: Robert G. Hagstrom, Peter Lynch, Bill Miller, Howard Marks
PDF ebook
22,99 €
The Warren Buffett Way, 30th Anniversary Edition
The Warren Buffett Way, 30th Anniversary Edition
von: Robert G. Hagstrom, Peter Lynch, Bill Miller, Howard Marks
EPUB ebook
22,99 €
Escaping the Housing Trap
Escaping the Housing Trap
von: Charles L. Marohn, Daniel Herriges
PDF ebook
19,99 €