Excel for Windows (Desktop Application)

Welcome to the Excel for Windows (Desktop Application) feedback forum! This is the place for users to send us suggestions and ideas on how to improve.

Take a look at the feedback that we are currently working on and what feedback we have already completed.

How can we improve Excel for Windows (Desktop Application)?

(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Python as an Excel scripting language

    Let us do scripting with Python! Yay! Not only as an alternative to VBA, but also as an alternative to field functions (=SUM(A1:A2))

    2,921 votes
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)

      We’ll send you updates on this idea

      194 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →

      Thanks for voting for this item. We’re going to investigate this for a future update to Excel.. of course the probability of getting it done goes up proportionately to the votes we get on this item, so please gather as many votes as you can!

      Also, would love to hear if you have preferences for ordering between Python or R.

      thanks
      ash [MS XL]

      edit: hello /r/python from reddit. Great to see insightful discussion along similar lines to what we’ve been bouncing around internally.

    • Intellisense for User Defined Functions

      Currently User Defined Functions (UDFs) in Excel will not show intellisense to tell the user what arguments need to be supplied. This makes them very difficult to use.

      There's a discussion here:
      http://stackoverflow.com/questions/16903587/the-quest-for-the-excel-custom-function-tooltip

      Whether the future of UDFs is in VBA or something else, the ability to define intellisense is vital.

      108 votes
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)

        We’ll send you updates on this idea

        7 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →

        Thanks for the suggestion Nick. We’ve got some related work we’re looking at soon, and we’ll be sure to carefully consider if we can get a fix in for this then. As always, more votes helps – so keep voting for the things you care about most.

        Thanks,
        John [MS XL]

      • R in Excel (RRO + MKL as scripting language in Excel)

        Microsoft recently acquired Revolution Analytics:

        http://revolutionanalytics.com/

        Revolution R Open with MKL is an open source derivative of R (RRO + MKL). Adding-in RRO to Excel is a natural fit and will extend the scripting utility of .xlsx in Enterprise environment. The package developments alone are worth considering this integration.

        95 votes
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)

          We’ll send you updates on this idea

          11 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
        • Create 64-bit compatible versions of MSComCtl and MSComCt2 controls

          We have been advised to consider upgrading to the 64-bit version of Office throughout our company. As a world leading financial institution we have a lot of users that use Excel applications that require large amount of memory and processing power.

          We have a dedicated VBA development team that make extensive use of the controls and we need 64-bit versions of the controls before the roll-out can go ahead as a large number of critical applications will no longer work in 64-bit Excel.

          87 votes
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)

            We’ll send you updates on this idea

            4 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
          • There should be a Worksheet.RowCount and Worksheet.ColumnCount properties that tell you what the last row or column with data is

            There is no good way of finding the last row or column with data in a worksheet.

            Three ways are of finding the last row or column are:
            1) used Worksheet.UsedRange. The problem with this is that if some of the cells in the range have had their contents cleared or deleted then they are still considered in the UsedRange. this means that the bottom-rightmost cell in the UsedRange may not have any data in it and cannot be accurately used to get the row or column count for the worksheet.

            2) Using range.end(xlup).row or range.end(xltoleft).column only works for a…

            63 votes
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)

              We’ll send you updates on this idea

              6 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
            • Range.Text should be able to return an array of results like Range.Value

              Range.Text should be able to return an array of results instead of only being able to return the text for a single cell. Its behavior should be consistent with Range.Value and Range.Value2.

              Additionally, Range.Text should never return a result like '#####' when the column width of the cell is too small. It should always return the text that would be visible if the column was wide enough (and calling Range.Columns.AutoFit before calling Range.Text should not be necessary).

              34 votes
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)

                We’ll send you updates on this idea

                2 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
              • Expose more events in VBA

                Please can we have the OnKeyPress, OnKeyUp and OnKeyDown events exposed in Excel please?

                It is a real and unnecessary pain to have to use the API to do this simple thing.

                32 votes
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)

                  We’ll send you updates on this idea

                  7 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                • There should be an event when an AutoFilter is changed

                  There is currently no event when an autofilter is changed. The autofilter could be in a normal range or in a table.

                  The current workaround is to create a hidden sheet with a formula that references the cells on the sheet with the autofilter and to catch the WorksheetCalculate event in order to know when someone changed or cleared an autofilter. Additionally for this to work, calculation must be set to Automatic. http://stackoverflow.com/questions/28979396/excel-vba-filter-change-event-handler

                  30 votes
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)

                    We’ll send you updates on this idea

                    1 comment  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                  • C# as a scripting language

                    Let us code macros directly in C#!

                    27 votes
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)

                      We’ll send you updates on this idea

                      6 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                    • Fix errors and incompleteness in macro recording

                      The macro recorder is a highly valued feature of Excel and is used by novices to generate code to automate repetitive operations and by more expert users as a quick way to confirm the appropriate properties and methods to use to achieve a desired effect.

                      There are some operations that the macro recorder does not record at all and others which it records incorrectly. This suggestion is that all such errors and omissions should be fixed when they are identified.

                      The latest to come to my attention was assigning a formula to a shape, to link its text to a…

                      17 votes
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)

                        We’ll send you updates on this idea

                        0 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                      • There should be a WorkbookAfterClose event

                        there is a WorkbookBeforeClose event but there is no corresponding WorkbookAfterClose event.

                        Note that the WorkbookBeforeClose is cancelable so there is no guarantee that the workbook will actually be closed after that event is triggered.

                        Currently in order to get the WorkbookAfterClose event, a workaround needs to be implemented: https://exceptionalcode.wordpress.com/2010/02/11/how-to-get-an-excel-vsto-workbook-closed-event/

                        12 votes
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)

                          We’ll send you updates on this idea

                          1 comment  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                        • Worksheet protection - UserInterfaceOnly setting should maintain between workbook openings

                          When developing VBA and/or VSTO solutions for Excel, you might come across the problem that a protected worksheet where the UserInterfaceOnly parameter was set to "True" cannot save its state to the next Excel session. This means that the UserInterfaceOnly setting cannot be maintained between workbook openings. Therefore, to re-establish the setting you have to unprotect and re-protect the specific worksheet (for example during the Workbook_Open event). Unfortunately, since Excel 2013 this might be a performance issue when handling a lot of worksheets (see https://msdn.microsoft.com/en-us/library/office/ff837594.aspx?f=255&MSPPError=-2147217396#xl15WhatsNewProtectingsheets - "Protecting Sheets takes longer"). On a modern desktop computer you would probably not even…

                          11 votes
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)

                            We’ll send you updates on this idea

                            0 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                          • Adding WorkSheet.BeforeChange event in Object Model

                            Worksheet Object does not fire a Worksheet.BeforeChange or Worksheet.Changing event. For our use case, which is for auditing and potentially preventing changes done to Excel Sheets by specific users, we get the event after things have changed.

                            We have a specific set of cells that should changeable by only a few users so we use .net interop to get user credentials from Active Directory.

                            10 votes
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)

                              We’ll send you updates on this idea

                              1 comment  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                            • Range.Value and Range.Value2 should work for non-contiguous ranges

                              Range.Value and Range.Value2 will return the values of only the first area in a range if the range has multiple areas.

                              If you are using, for example, SpecialCells to get the visible cells in a range, the range can have multiple areas and we should be able to use Range.Value and Range.Value2 to get all the visible cells values as an array instead of just getting them for the first area in the range.

                              8 votes
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)

                                We’ll send you updates on this idea

                                3 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                              • Fix object model implementation of Top10 Auto Filters

                                The current implementation of the Top10 auto-filters in Excel is horrible.

                                There are four 'Top 10' filters: xlTop10Items, xlTop10Percent, xlBottom10Items, xlBottom10Percent

                                Problem 1) The names are deceiving. They are not always 10 items or 10 percent. Better names would be Top X Items or Top N Items.

                                Problem 2) The Excel object model does not allow the original criteria to be retrieved. If you create a Top 10 Items filter with the value 15, then the Filter.Criteria1 property will be changed to a >= criteria depending on the data in the column and the original value of 15 has no…

                                7 votes
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)

                                  We’ll send you updates on this idea

                                  0 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                                • The function VBA.Format should be part of the Excel object model and not only the VBA language

                                  The Format (or VBA.Format) function is part of the VBA language, not the Excel object model. This means that this function is not available to .NET COM addins (VSTO, AddinExpress, Excel DNA). This can be a problem for the development of new addins using .NET or upgrading existing VBA addins to COM.

                                  Note that .NET has string.Format() and Microsoft.VisualBasic.Strings.Format() but neither of those has the same behavior as the VBA Format function especially with regards to dates.

                                  Note that there is a similar function that is part of the Excel object model: WorksheetFunction.Text(). However, this function still differs from the…

                                  6 votes
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)

                                    We’ll send you updates on this idea

                                    0 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Create Javascript API Editor in Office Now instead of after API set is complete

                                    It seems clear from https://excel.uservoice.com/forums/304921-excel-for-windows-desktop-application/suggestions/8843113-bring-vba-into-the-modern-world that while VBA will stay for a while, the future is to replace it with JavaScript. Cross-platform, modern, I don't entirely like it but I get it.

                                    So today I sat down to start learning JavaScript and consider building anything I would have put in VBA in it instead, and so far it appears I'd need to do so in Visual Studio or a text editor. Is this correct? That same link notes that you'll create "a more modern editor than the VBE" but only after broadening the API set (at which point you'll look…

                                    5 votes
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)

                                      We’ll send you updates on this idea

                                      2 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Make it posible to attach a template to the Empty Workbook-option on the Start Screen and File, New

                                      In previous versions of Excel you could create a Book.xlt and make that the default template for new workbooks by saving it in the XLSTART folder. That does not work with the Start Screen/Back Stage in Excel 2013 and 2016 which makes it imposibole to provide customers with a custom template for new workbooks with customized colors, fonts etc. Please make it posible to attach the Empty Workbook option to a customized template. (It still works in Word 2013)

                                      5 votes
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)

                                        We’ll send you updates on this idea

                                        1 comment  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                                      • DON'T use Python as an Excel scripting language

                                        DO NOT let us do scripting with Python! Yay!

                                        4 votes
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)

                                          We’ll send you updates on this idea

                                          5 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Spreadsheet Compare - use original number format when exporting results

                                          The Spreadsheet Compare tool included in Excel 2013 and the Inquire add-in has the ability to export the results of a comparison to a new spreadsheet in a handy tabular format.

                                          However the "Old Value" and "New Value" columns are formatted as text. If the number format in the spreadsheets being compared was "number, one decimal place", the Spreadsheet Compare output looks like this:
                                          22.0 (21.990702621768023)

                                          This makes it difficult to compare Old Value and New Value using formulae because one first has to strip out the value between parentheses and convert to number.

                                          My suggestion is to output the…

                                          4 votes
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)

                                            We’ll send you updates on this idea

                                            0 comments  ·  Macros and Add-ins  ·  Flag idea as inappropriate…  ·  Admin →
                                          ← Previous 1 3 4
                                          • Don't see your idea?

                                          Feedback and Knowledge Base

                                          How it works

                                          • Create a user account if you want to add a new suggestion or vote on existing suggestions.
                                          • Select one of the feedback forums listed.
                                          • Check out the ideas others have suggested and vote on your favorites.
                                          • Be sure to search for your suggestion but if you can’t find something similar enough, you can submit your own.
                                          • Keep suggestions focused on a single idea per post and limited to 25 words or less.
                                          • When you post an idea to our forum, others will be able to subscribe to it and make comments.