Excel won’t let me type the letter ‘M’ !!!

The bugs my father reports to me usually sound impossible and it’s some incorrect assumption of his that’s causing the behaviour. But sometimes there are genuine bugs that leave me speechless “when I see it”.

Background

Sheet names in Excel should not contain the following characters:

character unicode description
/ U+002F solidus
\ U+005C reverse solidus
: U+003A colon
U+0027 apostrophe
[ U+005B left square bracket
] U+005D right square bracket
* U+002A asterisk
? U+003F question mark

The current version (2013) prevents the user from typing them at all while in Rename mode.

This check seem to be implemented using the raw key codes (before they are translated by the OS).

The bug itself

On Windows 7 (64bit), when using the Bulgarian (Typewriter) keyboard layout, Excel prevents the user from entering characters that would be invalid if the English layout was used.

character unicode description
б U+0431 Cyrillic small letter be
( U+0028 left parenthesis
М U+041C Cyrillic capital letter em
ч U+0447 Cyrillic small letter che
ц U+0431 Cyrillic small letter tse
; U+003B semicolon
/ U+002F solidus
Б U+0411 Cyrillic capital letter be

With the exception of the solidus, all other characters are otherwise valid and can be produced using the workaround below. The bug is rather annoying, since it prevents users from entering 5 letters (!). It probably affects other keyboard layouts as well.

Workarounds

References

Jordan Biserkov About Blog GitHub Links Projects

05 December 2014


Jordan@Biserkov.com     +359 88 60 222 93 UTC+2     @jbiserkov