Download presentation
Presentation is loading. Please wait.
1
Microsoft Excel 2016 Spreadsheet program
Part of Microsoft Office package Organizer of data Big computing power Display charts and graphs Small databases Differences from previous versions Excel 2003: menus are completely reorganized Excel Mac: almost none 19 Aug 2016
2
Cells Work-book Cells Sheet operations Work-sheets, cells
References, columns and rows Name box and formula bar Sheet tabs Autocalculate Sheet operations Right-click Insert… Right-click Rename Right-click Tab Color… Right-click Move or Copy… Use file example.xlsx Use sheet Empty Write some numbers in column. Display their average, sum and how many they are in the info tab. Insert a new empty sheet. Rename it to "abcd". Colour the sheet's tab yellow Move the sheet after sheet What-If Delete the sheet. Duplicate sheet First. Delete it. 19 Aug 2016
3
Types Numbers’ formats
File Options Advanced Editing options Mac: does not exist, you must change configuration for entire computer in System Preferences -> Language & Regions -> Advanced… Types Home Numbers Mac: Format menu Cells… Set decimal separator for Excel only to point and thousands grouping symbol to comma. Put them back to the original Windows settings. 19 Aug 2016
4
Types Value (aligned to the right) Formula Text (aligned to the left)
Number: 23 or 56,45 or -0,4 or ,23 or (24) Currency: €34,2 or 9€ or 0,7 € Date: 3 Mar or 7/10/05 or Jun 2005 or 3-5 Time: 2:34 am or 17:28 Percentage: 34,5% Formula Everything which begins with = Text (aligned to the left) Everything else: alphanumeric characters and symbols Use apostrophe to convince Excel Use Sheet Empty Write the indicated values in general cells and check what Excel understands. Write a formula such as =A1 and check that the result is equal to A1. Force, in two different ways, Excel to accept 3-5 as text and not as date. Apply number formatting to column and type some values inside. Apply currency formatting to column and type some values inside. Apply date formatting to column and type some values inside. 19 Aug 2016
5
Data entry suggestions
Use the cells format dialog box before typing values! Pay attention to what Excel understands, especially dates! Pay special attention when converting between numbers and percentages! 0,02 2% 2 200% 0,56 % 0,0056 Use sheet Empty Write a column of decimal numbers representing interest rates, such as 0,5 1,25 3,5 4, ,25. Apply format percentage to the column and see what happens. Do the same thing but apply percentage format before typing values. 19 Aug 2016
6
Autotasks Autofill drag Repeat the same value Increment the value
When not satisfied of Excel behaviour: CTRL + drag Mac: ALT + drag Use sheet Empty Write in A1 1 and in A2 4. Select A1:A2 and drag down. Write in B1 4 and in B2 3. Select B1:B2 and drag down. Write in C1 1/10/2017 and in C2 1/11/2017. Select C1:C2 and drag down. Write in D1 7. Select D1 and drag down. Now select D1 and drag down pressing CTRL. Now select A1:A2 and drag down pressing CTRL. 19 Aug 2016
7
Paste Special Home Clipboard Paste Paste Value
Use sheet First Select D1:D5, copy it and paste it on F1:F5. Select E1:E5, copy it and paste it on J1:J5. Select E1:E5, copy it and paste its values on J1:J5. From Windows take a look at the files tab_delimited.txt, diesis_delimited.txt, space_delimited.txt, fixed using Notepad. Import in a new sheet file tab_delimited.txt Close Excel and reopen. Import in a new sheet file diesis_delimited.txt Import in a new sheet file space_delimited.txt Import in a new sheet file fixed.txt 9 Mar 2018
8
Importing data Data Get External Data From Text
Fixed fields or Delimited fields Restoring the Get External Data in the ribbon right-click on ribbon name customize the ribbon Mac: Excel Preferences Ribbon & Toolbar Use sheet First Select D1:D5, copy it and paste it on F1:F5. Select E1:E5, copy it and paste it on J1:J5. Select E1:E5, copy it and paste its values on J1:J5. From Windows take a look at the files tab_delimited.txt, diesis_delimited.txt, space_delimited.txt, fixed using Notepad. Import in a new sheet file tab_delimited.txt Close Excel and reopen. Import in a new sheet file diesis_delimited.txt Import in a new sheet file space_delimited.txt Import in a new sheet file fixed.txt 9 Mar 2018
9
Formula Choosing the cells Operations Errors Cell pointing with mouse
Cell name with keyboard Operations Mathematical operations: + - * / ^ Parenthesis Errors #DIV/0! Division by zero #NAME? Wrong cell name #REF! Wrong cell reference #NULL! Function’s arguments missing or too many #NUM! Wrong number in a function or too large number #VALUE! Wrong type in a function Use sheet First Write in F2 formula =E2/3 Write in F3 formula =E7/E8+C9*3 Write in F4 formula =C9^2 Write in F5 formula: E2 cube minus 2 times E3 everything divided by the sum of 7 by 24 and E4 divided by E5 19 Aug 2016
10
Formula references Relative A1 Dragging the formula
Absolute $A$1 Partial absolute $A1 A$1 F4 References from other sheets sheetname!A1 [filename.xls]sheetname!A1 Use sheet First. Write in cell F2 the square of E2 and drag it down. Now drag F2 to the right, towards G2. Write in cell H7 E4-C4. Now drag it up and look at the different errors produces while the references go beyond the number range. Use sheet logical In cell A22 write the euro/dollar conversion rate. In column G, with appropriate dollar formatting with 2 decimal digits, write the price of items in dollars, using an absolute reference and then using an appropriate partial absolute reference. In column H write available quantity multiplied by the shipping cost for small items. Now drag to column I to have the same for requested quantity, putting before the appropriate partial absolute reference. Multiply the prices in sheet Logical by value C2 in sheet First Multiply the prices in sheet Logical by value C2 in sheet First and add the available quantity 19 Aug 2016
11
Formulas Function Library
Warning: names are language dependent! Use the conversion table if studying in other languages Math & Trig SQRT, EXP, PI, LN, LOG ROUND, ROUNDDOWN, ROUNDUP ABS, RAND, RANDBETWEEN MAX, MIN, SUM, AVERAGE SUMIF, COUNTIF, AVERAGEIF Use sheet logical In column G put the square root of available quantities In column H put the exponential of prices In I2 write Greek Pi. Change the formatting to display 20 decimal digits. In column J put the square root of the natural logarithm of prices In column K put the logarithm in base 2 of prices. In column L put the logarithm in base 10 of prices, without using the second argument Use sheet First In column F round values of column E to 1 decimal digit. In column G write the absolute value of difference between column C and D In column H put 20 random numbers between 0 and 1 In column I put 20 random integer numbers between 7 and 20 In cell I23 calculate their maximum, in I24 minimum, in I25 sum, in I26 average Clear up sheet logical In G1 write the sum of available quantities for small items. In G2 write the average of available quantities for items with price <= 20 In G3 write the average price for items with a price < 20 In G4 write how many small items do we have In G5 write how many items with price<20 do we have 19 Aug 2016
12
Functions Logical Text IF(test; value if true; value if false)
AND is ( ) * ( ) , OR is ( ) + ( ) NOT Text LEN RIGHT, LEFT, CONCATENATE, REPT * Use sheet logical In column G write "cheap" if item costs less than 20 euros, otherwise write "expensive" In column H write "reorder now" for items with available quantity smaller than requested quantity, otherwise write a dash In column I write the difference between requested quantity and available quantity for items with available quantity smaller than requested quantity, otherwise write nothing In column J write “small and expensive” for items which are small and cost more than 30 euros, otherwise nothing. In column K write “ok” for items which are either small or cost less than 30 euros, otherwise write 3 multiplied by available quantity. In column L if item is small: if item has requested quantity>0 write “small and requested”, otherwise “small and unrequested”. If item is not small, write “large”. In column M write requested quantity by price plus the shipping cost (which depends on the size). * Use sheet text Fill in the indicated fields. 19 Aug 2016
13
Slide only for ISDM27006 Date functions
Date & Time NOW, TODAY WEEKDAY Serial number format and +/- operations Date exact calculation DAY, MONTH, YEAR DATE DATEDIF (the undocumented function) Use sheet Date 1 and fill in the indicated fields, applying appropriate number format to field with days difference. Use sheet Date 1 and fill in the indicated fields. 19 Aug 2016
14
Slide only for ISDM27006 Financial functions
net present value XNPV internal rate of return XIRR existence and uniqueness Loan T.A.N. Tasso Annuale Netto (Yearly Net Rate) T.A.E.G. Tasso Annuale Effettivo Globale (Yearly Real Global Rate) Use sheet NPV IRR Fill in the indicated fields in the three rectangles on the left. For the first investment, fill in the NPV table on the right. Use loan 1 Fill in the indicated fields. 19 Aug 2016
15
Slide only for ISDM27006 Mortgage loan
constant payments and constant interest rate PMT, IPMT, RATE, NPER adjustable interest rate Must build the table Constant payments and adjustable length Adjustable payments and constant length Use sheet loan 2 Clear cells C5:E14 and B16:B19. Fill in the table for a euro debt with a fixed rate of 6% to end up exactly in 9 years. Below, calculate: the payment to finish it in 20 years instead the interest rate in case the payment were for 15 years the number of years in case the rate were 5% and the payment were the number of years in case the rate were 15% and the payment were Use sheet loan 3 Clear cells C5:F14 Fill in the table, using adjustable payments and constant length, supposing a starting rate of 6% for 3 years, then AFTER 3 PAYMENTS the rate changes to 3% and after other 4 payments it changes to 20%. Do the same using constant payments and adjustable length. 19 Aug 2016
16
Functions Statistical AVERAGE, VAR.S, STDEV.S NORM.DIST, NORM.INV
Use sheet Statistics Fill in the indicated fields for: averages, variances, standard deviations calculation of probability calculation of Z value 19 Aug 2016
17
Visual Basic for Applications
Slide only for ISDM27006 Visual Basic for Applications Easy functions to expand Excel User-defined functions If Then Else Working with ranges Save the file as .xlsm ALT+F11 on notebook you might have to press Fn 19 Aug 2016
18
Visual Basic for Applications
Slide only for ISDM27006 Visual Basic for Applications Insert Module Mac: Open Microsoft Excel Objects, click on any sheet, go with the mouse away from the sheets, right-click -> Insert -> Module. Then open Module, click on it and write code in module’s sheet on the right. Do not write code in sheets Reset button 19 Aug 2016
19
Function declaration Comments MsgBox If Then Else Optional parameters
Slide only for ISDM Visual Basic for Applications Function declaration Optional parameters Comments MsgBox If Then Else ElseIf Nested Ifs ‘Build function Plus1 which accepts as input two numbers and returns their sum Function Plus1(a, b) Plus1 = a + b End Function ‘Build function Plus2 as Plus1 but second parameter is optional with default value 10 Function Plus2(a, Optional b = 10) Plus2 = a + b ‘Build function FuelConsumption1 which receives as input the start Km, the final Km and the Litres used per Km by your car and returns the amount of litres of fuel consumed Function FuelConsumption1(StartKM, FinishKM, Litres) FuelConsumption1 = (FinishKM - StartKM) / Litres ‘Build function FuelConsumption2 as FuelConsumption1 but with optional start Km default 0 and litres per Km default 45 Function FuelConsumption2(FinishKM, Optional StartKM = 0, Optional Litres = 45) FuelConsumption2 = (FinishKM - StartKM) / Litres ' this is a comment ‘ Insert a comment ' this also is a comment ' calculate TotalPrice given price and quantity (1 if missing) with a discount of 10% if quantity is at least 10 Function TotalPrice1(price, Optional quantity = 1) If quantity < 10 Then TotalPrice1 = quantity * price Else TotalPrice1 = quantity * price * 0.9 End If ‘ build TotalPrice2 as TotalPrice1 but it checks that quantity be >=1. If it is not, it sets it to 1. Function TotalPrice2(price, Optional quantity = 1) If quantity < 1 Then quantity = 1 TotalPrice2 = quantity * price TotalPrice2 = quantity * price * 0.9 ‘ build TotalPrice3 as TotalPrice2 but it warns the user in case it has to set quantity to 1 Function TotalPrice3(price, Optional quantity = 1) MsgBox ("Warning: quantity is smaller than 1, will set it to 1") TotalPrice3 = quantity * price TotalPrice3 = quantity * price * 0.9 ' calculate TotalPrice4 given price and quantity (1 if missing) with a discount of 10% if quantity is at least 10, 20% if at least 50 Function TotalPrice4(price, Optional quantity = 1) TotalPrice4 = quantity * price ElseIf quantity < 50 Then TotalPrice4 = quantity * price * 0.9 TotalPrice4 = quantity * price * 0.8 ' calculate TotalPrice4bis as before but with extra variable membership (Y or N) which gives an extra flat discount of 10 euro, AFTER applying percentage discount, to members Function TotalPrice4bis(price, membership, Optional quantity = 1) TotalPrice4bis = quantity * price TotalPrice4bis = quantity * price * 0.9 TotalPrice4bis = quantity * price * 0.8 If membership = "Y" Then TotalPrice4bis=TotalPrice4bis-10 ' calculate TotalPrice5 as before but with extra variable membership (Y or N) which gives an extra flat discount of 10 euro, BEFORE applying percentage discount, to members ‘ you have to rethink the function a little bit Function TotalPrice5(price, membership, Optional quantity = 1) TotalPrice5 = quantity * price - 10 TotalPrice5 = (quantity * price - 10) * 0.9 TotalPrice5 = (quantity * price - 10) * 0.8 TotalPrice5 = quantity * price TotalPrice5 = quantity * price * 0.9 TotalPrice5 = quantity * price * 0.8 ‘same as previous one, alternative solution! Function TotalPrice6(price, membership, Optional quantity = 1) TotalPrice6 = quantity * price TotalPrice6 = quantity * price + 10 TotalPrice6 = (quantity * price + 10) * 0.9 TotalPrice6 = (quantity * price) * 0.9 TotalPrice6 = (quantity * price + 10) * 0.8 ' we can make it shorter using a temporary variable. You can use as many variables as you want! Function TotalPrice8(price, membership, Optional quantity = 1) temp = quantity * price + 10 ElseIf membership = "N" Then temp = quantity * price MsgBox ("Membership must be Y or N, not " & membership & ". Returning -1") temp = -1 TotalPrice8 = temp TotalPrice8 = temp * 0.9 TotalPrice8 = temp * 0.8 19 Aug 2016
20
Internal functions: Ucase, Left, Sqr, isNumeric
Slide only for ISDM Visual Basic for Applications Internal functions: Ucase, Left, Sqr, isNumeric Range as parameter .Cells.Count .Rows.Count .Columns.Count For Each Next Summing ‘ modify TotalPrice6 (or 8 or 9) in such a way to recognize membership parameter y or yes or YES instead of Y If Ucase(Left(membership)) = "Y" Then Function howManyCells(r As Range) howManyCells = r.Cells.Count End Function Function howManyRows(r As Range) howManyRows = r.Rows.Count Function lastElement(r As Range) For Each x In r MsgBox(“found “ & x) LastElement = x Next Function OurSum(r As Range) OurSum = 0 OurSum = OurSum + x Function OurAverage(r As Range) s = 0 s = s + x OurAverage = s / r.Cells.Count Function OurAverage2(r As Range) OurAverage2 = OurSum(r) / r.Cells.Count ‘ skip this program and do the next one, which is more realistc Function OurAverageCorrect(r As Range) counter = 0 If x <> 0 Then counter = counter + 1 End If If counter > 0 Then OurAverageCorrect = s / counter Else MsgBox ("Pay attention, no element is different from 0!!! We return -99") OurAverageCorrect = -99 ‘ build a function which calculates the average of only positive values AND skips non numeric values Function OurAveragePositive(r As Range) If isNumeric(x) And x > 0 Then OurAveragePositive = s / counter OurAveragePositive = -99 19 Aug 2016
21
Data Forecasting What-If Analysis
Goal Seek… Scenario Manager… Add Summary Assigning cell’s name Data table… Select entire table One parameter: Column input cell Two parameters Use sheet What-if Follow the indications on the sheet using Goal Seek. Try now to have instead a variance of 100 using Goal Seek. Clear cells E8:E10 Follow the indications on the sheet using Scenario Manager building five different scenarios changing the values to some believable situations and assigning cell names to the cells which appear in the scenario summary. EXTRA: in a new sheet build a set of scenarios to buy a car. Your result function is the car' total cost in five years. It depends on: car price how much are you going to pay as car yearly tax how much are you going to pay in gasoline, which depends on how many kilometres are you planning to drive and on the car consumption rate how much are you going to pay in mechanical assistance, which depends on how many kilometres are you planning to drive and on how big the car is and produce the scenario summary. Follow the requests on the sheet using Data Table with one vertical variable. Follow the requests on the sheet using Data Table with two variables. EXTRA Build a sensitivity analysis for your car's problem, changing the kilometres per year. Build a sensitivity analysis for your car's problem, changing the kilometres per year and the gasoline price. 19 Aug 2016
22
Solver example My profession is writing books and giving seminars.
Each book requires 300 working hours and I earn euro. Each seminar requires 20 working hours and I earn euro. I want to maximize my earnings. The obvious choice would be to give as many seminars as possible. However, in order to be called by universities for seminars I need to write at least one book every year! Moreover, I have further constraints: I do not want to work more than 1600 hours per year I must give at least 4 seminars per year in order to advertise my books I have only euro funding and each book uses 500 euro, while each seminar uses 2500 euro How to maximize my earnings satisfying my constraints? 19 Aug 2016
23
Solver File Excel Options Add-Ins Go Solver
Solver – Risolutore Mac users: Tools Add-Ins Write variables, possibly using cell names Write objective and constraints Data Analysis Solver set variables (Variablenzellen, Celle variabili) set objective (Ziel, Obiettivo) set constraints (Nebenbedingungen, Vincoli) set constraints for integer and binary variables Solve (Lösen, Risolvi) Answer report (Antwort, Valori) Use sheet Solver Clear columns B and C. Write a formula objective. Set up the constraints. Set up the solver and solve the problem, producing an answer report. Now set up also the constraint on integer number of seminars. Use the solver and produce a new answer report. 19 Aug 2016
24
Printing Page Layout Page Setup
Orientation Scaling Margins Center on page Header/Footer Sheet Print area: Print Gridlines ViewWorkbook ViewsPage Break Preview For old Mac: Page Layout Breaks File Print Use sheet Long Apply: horizontal orientation, scaling such that it fits into one page horizontally (and as many pages are necessary vertically), centred horizontally header with current date and your name foot with page number and file name check that the same stock never splits and in case adjust slightly the splitting lines print the sheet on a PDF file 19 Aug 2016
25
Portable Document File format
Portable Document File .pdf PDF advantages Adobe Acrobat Reader and Adobe Acrobat File Save As… File Print choose printer Adobe PDF Protecting documents with Adobe Acrobat … is removed from this course! Using the previously produced PDF file: apply protection to restrict only modifications and save with a different file name apply protection to restrict only printing and save with a different file name apply protection to restrict opening and save with a different file name 19 Aug 2016
26
Saving in other formats
Excel document .xlsx Macro-enabled workbook .xlsm Excel document .xls Plain Text .txt .csv Always close Excel after saving in plain text Open a .xls file and convert it to .xlsx using the conversion tool. Save sheet Long as tab-delimited txt file long_text.txt. Close Excel. Open Excel and import long_text.txt. Make some formatting modifications to this sheet. Now save the file with the formatting. 19 Aug 2016
27
Automatic format Home Styles Format as Table
My table has headers Design Table styles Clear Mac: Table Table Styles Clear HomeStyles Conditional Formatting Apply a rule which looks good Manage rules… Edit Rule… Reverse Icon order Use sheet logical Apply automatic formatting to (after each formatting, remove formatting from the entire sheet) column F items with price larger than 20 column D duplicated values column B small items column D unique items column D items with quantity larger than 50, with formatting yellow background and blue bold character font the top 3 most expensive items the items with price below average apply data bar to available quantity Use sheet long apply colour scale to buy gain percentage from white to red passing through blue apply 3 traffic lights icons to buy price apply 3 traffic lights icons to sell price, starting with green below 20, yellow up to 50 and red above the same but hide the values 19 Aug 2016
28
Chart building Select cell range Insert Charts
Choose chart type and subtype Chart Tools Design Data Switch Row/Column Data Select Data Add/Edit Chart Layouts Chart Styles Location Use sheet First Build a clustered column plot using Nationality, number 1 and number 2 Switch rows with columns Add a new column of data and remove the Number 2 columns Modify the horizontal labels using "Person #" instead of nationality, then reapply nationalities Move the chart to an entirely new sheet 19 Aug 2016
29
Chart Tools Design Add Chart Element
Axes More axis options… Text Options Axis Titles / Chart Titles Legend / Gridlines Data Labels / Data Table double-click on an element Plot area Series Element of a series Using sheet First and the previous graph set new minimum and maximum for the vertical axis set a new step for vertical axis adopt a logarithmic vertical axis move the axes crossing such that it meets the vertical axis at 2 and the horizontal one after the third person put chart title above the chart put appropriate axes’ titles put data labels below the graph insert a legend remove all the gridlines colour the plot area paint the tallest bar (only that one) black Use Sheet Long and build a clustered column graph for buy price using logarithmic scale 19 Aug 2016
30
Chart types Multiple selection: CTRL/cmd + mouse 1 data series
Columns and bar plots Line and Area (not a math graph!) Pie Multiple data series Clustered and stacked columns/bar/lines/area Scatter (only tool for mathematical graphs) Bubble Use sheet First Build a clustered column plot using nationalities for the horizontal axis and as series "number 1" and "sum of two numbers". Build a column plot using nationalities and "number 1" Change it to: line graph, area graph bar plot pie chart. Extract a slice. Display slices' percentages. Build a clustered column plot using nationalities and "number 1" and "number 2" stacked column plot, 100% stacked column plot clustered line graph stacked line graph stacked area graph Use sheet long. Build a scatterplot using buy price and sell price. Change the symbol to a large red triangle. Use sheet Empty. in column A write x values from -2 to 6 with steps of 0,1 in column B write the values for parabolic function x^2-5*x+2 With these data draw a scatterplot with lines and a line graph Remove rows corresponding to x values between 2 and 4 Build a bubble chart using buy price, sell price and total buy, considering only the first 7 rows. Build a bubble chart using buy price, sell price and total buy, with the first 7 rows with bubbles painted blue and the next 7 painted yellow. 19 Aug 2016
31
Extra Sheet protection except some cells
InsertIllustrationsShapesInsert Shapes Non trasparent text box with arrow Sheet protection except some cells Review Changes Allow Users to Edit Ranges New Mac: select free range and Format Cells Protection uncheck Locked Protect Sheet… In a graph insert a non transparent text box with an arrow pointing to the tallest point of the graph Use sheet First Apply protection to the sheet letting the user modify only column "number 1". Remove the protection. 19 Aug 2016
32
Extras Hide and unhide Split and freeze pane
HomeCellsFormatVisibilityHide & Unhide… right-click Hide/Unhide… Split and freeze pane Put cursor in the top left of the lower pane View Window Freeze Panes Review Comments New Comment Use sheet long Hide columns C and D. Unhide them Freeze top row. Unfreeze it. Freeze top row and the first 3 columns. Unfreeze them. Put a comment in a cell 19 Aug 2016
33
Extras List (small database) Hyperlink Data Sort Data Filter
Add Field Data Filter Hyperlink Select area, right-click Remove Hyperlink Mac: either select exactly the cells with hyperlinks, or copy, paste values on another column and remove original column Use sheet long Sort the data by buy date and, in case they have the same buy date, alphabetically buy name. Sort the date in reverse chronological sell order. Apply a filtering to filer out all data traded in GBP and all data bought before 1/1/2000. Use sheet Empty Write some addresses and web pages. Remove all the hyperlink with a single action. 19 Aug 2016
34
PivotTable select a well-structured table Insert Tables PivotTable
Drag items from PivotTable Field List Left-click Value Field Settings Filter and Sort Options Group Field To restore fields’ pane: click on pivot table Analyze press Field List Options Tools PivotChart Old version of Mac: PivotChart does not exist Use sheet long. In a new sheet insert a pivot table and: display the average price of stocks by currency display the average price of stocks by currency and by sector build a pivot chart using these data display the average price of stocks by currency and the count of how many they are display the sum of total bought quantities by currency, filtering out those belonging to sector "finance" filter out all the stocks bought before 1/1/2000 display the sum of bought quantities by buying year and month 19 Aug 2016
35
Statistics with Excel Add-ins
File Excel Options Add-Ins Go Analysis ToolPak Analyse-Funktionen – Strumenti di Analisi Data Analysis Data Analysis Descriptive Statistics (Popolationskenngrößen) Histogram Display Chart Right-click Format Data Series No Gap Bin range (Klassenbereich) Use sheet long Build descriptive statistics for buy and sell price Build an histogram for buy and sell price. 19 Aug 2016
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.