xlPrecision 3.0
xlPrecision 3.0 Ranking & Summary
xlPrecision 3.0 description
xlPrecision 3.0 is an AddIn for Microsoft Excel offering users much more precise results from mathematical formulas than Excel, which also gets rid of the insidious binary conversion errors that plague spreadsheets
xlPrecision makes your calculation results up to 2,183.47 times more precise by providing up to 32,767 "significant digits" of precision, compared to only 15 with Excel alone. A special edition of xlPrecision created at the request of a number theorist provides over 2 Billion significant digits of precision.
xlPrecision also empowers you to use vastly larger (and vastly smaller) numbers than Excel allows on its own. With xlPrecision, you can use gigantic numbers with over 106 TIMES as many digits as Excel allows, as well as extremely tiny numbers with over 106 times as many zeroes to the right of the decimal.
Finally, xlPrecision offers many additional features that take you beyond Excel's capabilities in other ways. Save valuable time with xlPrecision's powerful Excluder functions. View your sorted data at a glance with the exceptional sorting function. Take control of your fractional data with the versatile fraction reducer.
How xlPrecision Works
 xlPrecision replaces Excel's arithmetic operators (+,  *, /, ^), comparison operators, (>, >=, <, <=, =), and many of its worksheet functions (SUM, MEDIAN, RANK, etc.), with custom worksheet functions, such as xlpADD, xlpMULTIPLY, xlpISLESS, xlpMEDIAN, etc. These functions provide vastly greater precision than Excel's builtin mathematical operators.
 Excel does not allow changing the behavior of its builtin operators and worksheet functions, so it is not possible for xlPrecision to apply high precision to your existing worksheet formulas. Using xlPrecision requires modifying your worksheet formulas by replacing Excel's builtin operators and functions with xlPrecision's custom worksheet functions. Of course, you only have to modify those formulas from which you want high precision.
Major Features:
 Over 2,000 Times Higher Precision Than Excel
 Without xlPrecision, Excel provides a maximum of 15 digits of precision, or "significant digits". For example, if you divide 67 by 89, the result is an infinite number of digits long. But Excel rounds it off to 15 significant digits. xlPrecision provides up to 32,767 significant digits, more than 2,000 times more than Excel.
 But "significant digits" does not simply mean the number of decimal places. Significant digits is the quantity of digits from the leftmost nonzero digit to the rightmost nonzero digit. That series of digits can be anywhere relative to the decimal point. For example, if you multiply 987,654,321,098,765 by 123,456,789,012,345, the correct answer is an integer 30 digits long. Excel rounds it off to 15 digits. xlPrecision provides all 30 digits.
 No Binary Conversion Errors
 xlPrecision also eliminates binary conversion errors, which often hide undetected until suddenly making a spreadsheet give an incorrect result. Like all other spreadsheet programs, Excel converts your numbers to binary before sending them to the microprocessor to do the arithmetic. But the conversion is often approximate. Then, when the microprocessor completes the arithmetic and returns the binary result, Excel converts it back to base 10. That conversion, too, is often approximate. Though each error is small, they can still cause incorrect spreadsheet results.
 To see a simple example of a binary conversion error, subtract 1,000 from 1,000.8. The result looks like 0.8, but an error is hiding in there. To reveal the hidden error, rightclick the cell, choose Format Cells, select the Number category on the Number tab, increase Decimal Places to 15 or more, and click OK. Now it says 0.799999999999955. That’s a binary conversion error. Formulas in dependent cells are given the incorrect number no matter how it’s formatted.
 xlPrecision correctly returns 0.8 because it never converts the numbers to binary. xlPrecision does all calculations in base 10.
 Excel’s rounding functions can be used to mask some binary conversion errors, but not all. And, since those functions are based on the rounded digit’s decimal place rather than on the number of significant digits, you can’t always be sure what rounding formula is needed. Even worse is trying to use Excel's "Precision as Displayed" feature to get around binary conversion errors, because that can cause errors in other parts of the spreadsheet and workbook, and requires constant monitoring of most formulas to make sure that as many digits are displayed as possible or as required, without showing a binary conversion error. xlPrecision is a much better solution to binary conversion errors than Excel's rounding functions or Excel's "Precision as Displayed" feature.
 Very Large & Very Small Numbers
 xlPrecision lets you use vastly larger  and vastly smaller  numbers than you can with Excel alone.
 The largest number Excel can accept, use, or return is 1.79769313486231E+308. The smallest is 2.2250738585072E308. These numbers are formatted in "scientific notation". "E+308" means "move the decimal 308 places to the right", while "E308" means "move the decimal 308 places to the left".
 The largest number xlPrecision in Excel can accept, use, or return is 32,767 9's, which for comparison purposes here could be rounded off to 9.99999999999999E+32766.
 That number is 32,458 digits longer than Excel's largest  over 106 TIMES as many digits!
 xlPrecision's smallest number is 32,767 total characters long including the leading "0.", which in exponential notation is 1.00000000000000E32765. That's 32,457 digits longer (and therefore that much closer to zero) than Excel's smallest, or again over 106 times as many digits.
 Just to show only one example of what a difference this can make, the largest factorial Excel can calculate is 170! (which is 307 digits long), because 171! would require too many (310) digits. xlPrecision can calculate factorials up to 9,273!, which is 32,764 digits long (9274! would require 32,768 digits).
 If your spreadsheet calculations go beyond Excel's ability to store tiny numbers, Excel automatically and without warning converts the number to 0 instead of returning an error, as it correctly does if your spreadsheet calculations go beyond Excel's ability to store huge numbers. In addition to allowing vastly smaller numbers than Excel, xlPrecision does not convert to 0 if you exceed even xlPrecision's ability to use tiny numbers. Instead, xlPrecision correctly returns an error in that case.
 Data Control & Analysis Features
 xlPrecision offers many additional features that take you beyond Excel's capabilities in other ways. See Data Control & Analysis Features.
 xlPrecision offers many additional features that take you beyond Excel's capabilities in other ways. See Data Control & Analysis Features.
 Internationalization
 xlPrecision also provides:

 Internationalized currency symbols
 Internationalized decimal symbols
 Internationalized thousands separators
 This means that an xlPrecision formula that returns "$1,234,567.89" in the USA will return:

 "1.234.567,89 €" in Germany
 "1 234 567,89 €" in France
 "1 234 567.89 kr" in Estonia
 "1.234.567,89Lek" in Albania
 You can see this on your computer by following these steps:

 Enter the formula "=xlpADD(1234567.89,0,,TRUE,TRUE)" (requires xlPrecision to be installed; the Free Edition of xlPrecision will work for this example).
 Note that the result is formatted with your local currency symbol, decimal symbol, and thousands separator. You might want to increase the font size to make it easier to see the symbols.
 Open the "Regional and Language Options" Control Panel. (Start  Control Panel).
 On the "Regional Options" tab, change from your language to one of the choices in the list above, such as "German (Germany)".
 Click Apply. Note that Excel recalculates, and the formula now returns the number formatted with the currency symbol, decimal symbol, and thousands separator of the language you chose ("1.234.567,89 €" if you chose German).
 Remember to change back to your local language.
 Use xlPrecision in VBA
 xlPrecision's worksheet functions can also be used in Excel VBA (Visual Basic for Applications, Excel's programming language), as well as any other Automation (ActiveX, OLE, COM) client that can automate an Automation server. Here's how.
 xlPrecision's worksheet functions can also be used in Excel VBA (Visual Basic for Applications, Excel's programming language), as well as any other Automation (ActiveX, OLE, COM) client that can automate an Automation server. Here's how.
 High Precision in NonxlPrecision Functions
 xlPrecision replaces mathematical operators, comparison operators, and builtin worksheet functions with custom worksheet functions. Other worksheet functions, whether builtin or provided by an addin, do not use the xlPrecision worksheet functions, and so do not gain precision from them.
 If you're building a cell formula that uses other worksheet functions, and use xlPrecision functions instead of operators in the formula, then you gain precision between those other functions, but not within them.
 It's possible for addin worksheet functions to use xlPrecision instead of operators. xlPrecision, once installed, includes a DLL that can be called by other programming code, including the programming code that is used to build addin worksheet functions. If that code uses xlPrecision functions instead of mathematical operators, it can gain precision. Unless, of course, that same code also calls other functions that, in turn, use mathematical operators, at which point the extra precision is discarded.
 Microsoft is unlikely to ever be interested in using xlPrecision to add high precision to Excel's builtin formulas. However, in a future version of xlPrecision I plan to duplicate all of the relevant builtin Excel functions with equivalent highprecision xlPrecision functions.
 If you want high precision in custom functions provided by another Excel AddIn, you might want to contact the authors of that other AddIn and suggest that they use xlPrecision in a future version
 Not an Excel Problem
 Excel's limitation of 15 significant digits is not caused by Excel or Microsoft. All other spreadsheet programs, including Lotus 123 and Corel Quattro Pro, have the same limitation. The limitation is enforced by the microprocessor. All Intel, Intelcompatible, Macintosh, and UNIX microprocessors have the same limitation.
 The 15 significant digit limitation is part of an industry standard called "IEEE 754", which was created to achieve faster processing by sacrificing precision. IEEE 754 was ratified in 1985, by which time it had already become a de facto standard.
 xlPrecision does not use the microprocessor to perform arithmetic, except in cases where it can be 100% certain that IEEE 754 will have no effect and that no binary conversion error will occur, such as 5 x 5 = 25. As a result, the microprocessor is unable to require xlPrecision to adhere to IEEE 754. xlPrecision completely ignores IEEE 754.
 Data Control & Analysis Features. In addition to high precision, xlPrecision offers many data control, analysis, and other features:
 Excluder Functions

 xlPrecision's Excluder functions have no equivalents in Excel:
 xlpEXCLUDE: Excludes undesired characters and/or digits from a number or text.
 xlpEXCLUDENOTNUM: Excludes nonnumeric and other undesired characters and/or digits from a number or text.
 xlpEXTRACT: Extracts desired characters and/or digits from a number or text.
 xlpEXTRACTNUM: Extracts numeric and other desired characters from a number or text.
 Miscellaneous Functions

 These xlPrecision functions have no equivalents in Excel:
 xlpEVEN2: Rounds down to the next even integer, instead of rounding up like xlpEVEN.
 xlpFRAC: Returns the fractional portion of a decimal noninteger. Not to be confused with xlpMOD.
 xlpGCD2:Accepts negative numbers, does not truncate nonintegers, and can return certain nonintegers.
 xlpLCM2: Does not truncate nonintegers, and can return certain nonintegers.
 xlpMODTRUNC: Same as xlpMOD, but uses xlpTRUNC internally instead of xlpINT.
 xlpODD2: Rounds down to the next even integer, instead of rounding up like xlpODD.
 xlpREDUCEFRACTION: Returns a string formatted as /, and the character used to separate the numerator and denominator ("/" by default) can be customized. Can also simplify the reduced fraction by multiplying numerator and denominator by factors of 10 until both are integers. The simplified fraction is then reduced as much as possible, though the result may not be a reduction relative to the original fraction. Can also return reduced numerator, reduced divisor, divisor used for reduction, or all of these in an array.
 Miscellaneous Arguments

 Certain other xlPrecision functions offer arguments that let you go beyond the functionality offered by the equivalent lowprecision Excel function or feature:
 xlpEVEN: round_neg_toward_zero argument allows rounding negatives toward zero.
 xlpMOD: sign argument offers 5 choices for determining sign of result.
 xlpODD: round_neg_toward_zero argument allows rounding negatives toward zero.
 xlpSORT: Can sort top to bottom or left to right, sort down multiple rows or across multiple columns, and either retain the number of rows and columns of the source range or sort into a different selected number of rows and columns.
Enhancements:
 xlPrecision 3.0 adds three new functions:
 xlpLOG
 xlpLN
 xlpEXP
 xlPrecision 3.0 also adds xlpXLA, for getting the version of the xlPrecision.xla file.
 xlPrecision 3.0 also makes the Free Edition easier to use. For example:
 The Free Edition's popup windows now happen only every third calculation, down from every calculation in version 2.0.
 The Free Edition's popup windows now prompt for text only every 15th calculation, down from every fifth calculation in version 2.0.
 Free Edition popup windows that prompt for text (every 15th calculation) reach a maximum of only 12 characters, down from 25 in version 2.0. They still start at 3 characters.
 The text on the Free Edition's popup windows is now easier to read.
 The Free Edition now has 500 significant digits, up from 150 in version 2.0.
Requirements: Microsoft Excel 97 or later
WareSeeker Editor
xlPrecision 3.0 Screenshot
xlPrecision 3.0 Keywords
Bookmark xlPrecision 3.0
xlPrecision 3.0 Copyright
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com