Why does VBA's Shift+F11 not always work?

David MeegoThere is an issue with the Shift+F11 keyboard shortcut which is used by Visual Basic for Applications (VBA) to Add Fields to Visual Basic. I was asked about it again recently and so decided to post the details on the blog.

The issue is that Shift+F11 does not work on some systems. It usually works on some workstations and not others.  The failure is quite often on workstations used by developers.

Most of the time you can just use the menus to select the Add Fields to Visual Basic choice and so it is not important that the keyboard shortcut is not working.  However, when working with modal windows, you cannot get access to the menus and you need to use the keyboard shortcut.

So... what is happening?

The answer is fairly simple, but it did take a while to find when the issue was first discovered.

Many developers use the Script Debugger at runtime mode as described in the Knowledge Base (KB) article below: 

Using the Script Debugger in runtime (KB 850487) Secure Link 

This turns on the Debug menu in the application and the Debug menu has Shift+F11 defined as Step Out.  This choice on the Debug menu takes precedence over the VBA choice on the Tools >> Customize menu and prevents the keyboard shortcut working for VBA.

The solution is simple.... either manually edit the Dex.ini to change the setting to ScriptDebugger=FALSE or use the Dex.ini Settings window in the Support Debugging Tool for Microsoft Dynamics GP to make the same change.

While this issue can be frustrating, it is not high priority as the Debug menu should never be left enabled in a live environment on user's workstations. 

Hope this explains it for you.

David