It also has a variety of interactive features allowing user interfaces that can completely hide the spreadsheet from the user, so the spreadsheet presents itself as a so-called application, or decision support system (DSS), via a custom-designed user interface, for example, a stock analyzer, The Windows version of Excel supports programming through Microsoft's Visual Basic for Applications (VBA), which is a dialect of Visual Basic.
Programming with VBA allows spreadsheet manipulation that is awkward or impossible with standard spreadsheet techniques.
Beginning with version 5.0 Excel recorded macros in VBA by default but with version 5.0 XLM recording was still allowed as an option. All versions of Excel, including Excel 2010 are capable of running an XLM macro, though Microsoft discourages their use.
Excel supports charts, graphs, or histograms generated from specified groups of cells.
These actions can then be repeated automatically by running the macro.
The macros can also be linked to different trigger types like keyboard shortcuts, a command button or a graphic.
VBA was removed from Mac Excel 2008, as the developers did not believe that a timely release would allow porting the VBA engine natively to Mac OS X.
It has been a very widely applied spreadsheet for these platforms, especially since version 5 in 1993, and it has replaced Lotus 1-2-3 as the industry standard for spreadsheets. using a grid of cells arranged in numbered rows and letter-named columns to organize data manipulations like arithmetic operations.
For example, suppose that the important design requirements are displayed visually; then, in response to a user's change in trial values for parameters, the curves describing the design change shape, and their points of intersection shift, assisting the selection of the best design.
Versions of Excel up to 7.0 had a limitation in the size of their data sets of 16K (2 Although supporting and encouraging the use of new XML-based formats as replacements, Excel 2007 remained backwards-compatible with the traditional, binary formats.
Certain features such as loop functions and screen prompt by their own properties, and some graphical display items, cannot be recorded but must be entered into the VBA module directly by the programmer.
Advanced users can employ user prompts to create an interactive program, or react to events such as sheets being loaded or changed.