INFO: Visual Basic SendKeys Statement Is Case-Sensitive

Article translations Article translations
Article ID: 81466 - View products that this article applies to.
This article was previously published under Q81466
This article has been archived. It is offered "as is" and will no longer be updated.
Expand all | Collapse all


The SendKeys statement in Microsoft Visual Basic for Windows is case- sensitive with regards to the keystrokes sent. Sending an uppercase letter may be interpreted by the receiving application differently than the lowercase version of a letter.

More information

The following line of code sends an ALT+F key combination to the application that currently has the focus:
   SendKeys "%(F)"
NOTE: This is different from ALT+F:
   SendKeys "%(f)"
This can be a problem because some applications distinguish between an uppercase F and lowercase f when sent by the SendKeys statement.

For example, Microsoft Word versions 1.0b and earlier for Windows (WINWORD.EXE) do not distinguish the difference. However, Microsoft Word version 2.0 for Windows does distinguish the lowercase f sent by SendKeys.

When SendKeys (from Visual Basic for Windows) sends the ALT+F key combination, WINWORD.EXE version 2.0 interprets the keystroke as ALT+Shift+f, at which Word for Windows will simply beep. However, SendKeys using ALT+f will correctly activate the File menu.


Article ID: 81466 - Last Review: October 26, 2013 - Revision: 3.0
Applies to
  • Microsoft Visual Basic 2.0 Standard Edition
  • Microsoft Visual Basic 3.0 Professional Edition
  • Microsoft Visual Basic 2.0 Professional Edition
  • Microsoft Visual Basic 1.0 Standard Edition
kbnosurvey kbarchive kbinfo kbprogramming KB81466

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from