Using polish language on Windows 8.1, comma is the default decimal seperator on numerical keyboard. Is there a way to change it to dot?

I wouldn't like to change it in Excel or some other program, but permanently rebind that key to dot. Can I do that?

  • 1
    Have you tried changing your "Region and Language" settings? There is a "Decimal Symbol" option which allows you to change the character(s) used. Control Panel > View by: Small/Large icons > Region and Language > Advanced Settings – nonterrorist Apr 28 '14 at 20:25
  • 2
    @nonterrorist yes, I have. With no effect. – alex Apr 28 '14 at 20:46

I think the same problem sits in the German version of Windows 8. This way it is really annoying for example to enter a date or decimal number in Excel. The Numberpad becomes totally useless.

The Solution (sorry for German screenshots):

  1. Open Control Panel (Systemsteuerung) with rightclick on the windows icon in the lower left corner of your screen.
  2. Select the shortcut to change the format of Date, Time and Numbers (Datums-, Uhrzeit- oder Zahlenformat ändern): Control Panel
  3. Choose the Advanced Settings (Weitere Einstellungen): Region Settings
  4. Type in a dot instead of the comma (Dezimaltrennzeichen Komma --> Punkt): Change Format
  5. Repeat step 4 for the Currency (Währung) tab.
  6. Confirm changes with OK.

Hope this helps.

| improve this answer | |
  • 3
    unfortunately, this solution does not work. numpad dot still gives comma. – alex Jun 23 '14 at 16:53
  • 2
    Try changing the decimal separator to the dot in the currency tab as well. – Ryakna Oct 21 '14 at 11:11
  • Worked for me on Windows 8.1 with German(Swiss) Keyboard. – robsn Nov 18 '14 at 7:22
  • Didn't work on Icelandic keyboard. – snoram Jun 18 '16 at 22:51
  • 1
    Unforunately didn't work for me either (french belgian keyboard, win10); but I've found another solution. – Anto Aug 31 '16 at 0:39

You can do this using AutoHotKey with the following simple script:


Basically, because Windows is interpreting the number pad's . signal as a , in the Polish layout, you just have to rebind that keystroke to the standard keyboard's . command again.

You could also try the Microsoft Keyboard Layout Creator.

| improve this answer | |
  • This options seems only to work when this program (AutoHotKey) is open... :/ – snoram Jun 18 '16 at 22:45
  • @snoram yes and that is not an issue. – user1603548 Sep 20 '16 at 7:51
  • the Microsoft Keyboard Layout Creator did the job – TheFlow0360 May 8 '18 at 6:00
  • Microsoft Keyboard Layout Creator also did the job for me. It's a bit sloppy and counterintuitive on Windows 10, but it works. Thanks! – Tiago César Oliveira May 22 '19 at 8:59

The utility SharpKeys manipulates the windows ScancodeMap registry key, which can map any key to any other key. You don't need to know the scancodes, SharpKeys figures them out for you. You just press the key you want to remap, and press the key you want to map it to, and it will write it to the registry. SharpKeys doesn't run in the background - the registry key that it uses is part of Windows.

Unfortunately, it's not documented to work on Windows 8, and not guaranteed 100% on non-US keyboards, but the underlying Windows registry key will still be there, so there is a good chance it will work, and it almost certainly won't hurt to try.

| improve this answer | |
  • utility seems promising, but the installer doesn't even start on win 8.1 – alex Oct 22 '14 at 18:32
  • I have extracted the installer using "Universal Extractor" (it used the MSI Administrative Command Line unpack method), I ran the application and I have mapped my NUM_DEL to KEY_DOT_> (or something like that). IT WORKS. THANKS! (also, no need to reboot, logging out and in seems to be enough for the changes to apply). If you do not want to download an additional utility to extract the .msi, check out this link. – Gizmo Feb 14 '15 at 10:36
  • Great! Worked smoothly. – snoram Jun 18 '16 at 22:52
  • Finally, this worked for me. Only one issue: it works the other way round than I expected. Maps from right to left, not left to right. – Ralf Dec 17 '19 at 14:26

Microsoft Keyboard Layout Creator

Worked for making a Swedish keyboard numpad produce dot instead of comma.

Brief overview for Windows 10:

  • install and run downloaded app.
  • load existing keyboard (option in the menu)
  • modify and "Save as..."
  • generate installer (option in the menu)
  • run installer
  • reboot

At this point press Win+Space, and select your new keyboard layout.

| improve this answer | |
  • This is from 2007. Does not seem to work on Win10 anymore. – Ralf Dec 17 '19 at 13:57

I found it! It took "only" 2 years.

I used Keyboard Layout Manager (unfortunately the website is down). After installing (run as admin!) click New, select new name, your language and your current layout as template. Then just change , on numpad to . and confirm with Ok.

In my case I removed the old layout from keyboards list, so only the new one remained. After this, the language bar dissappeared. But after logout/login it reappeared again and... everything worked as expected! Yay!

Also, no DLL for your new layout is generated so it only works locally on any given computer, it's not a portable solution. There is also a registration fee for this software, but a freeware version can handle dot/comma substitution.

| improve this answer | |
  • Yes, this was also the only solution that worked for me. See also superuser.com/questions/280005/… on how to remove the backtick or accents – nachtigall Dec 22 '17 at 13:36
  • Dead link - site does not exist anymore. Google finds download links on fishy sources (informer, softpedia ...) – Ralf Dec 17 '19 at 13:58

I've found a clean solution for my French (Belgian) keyboard in Windows 10.

  1. In the Windows menu, search for "keyboard options" In the Windows menu, search for "keyboard options"

  2. Under "Languages", click on your keyboard's language and select "Options" Under "Languages", click on your keyboard's language and select "Options"

  3. There, under "Keyboard", I see my current keyboard as "Belgian (Comma)". Click on "Add a keyboard" and select the same keyboard but ending with "(Period)". Click on "Add a keyboard" and select the same keyboard but ending with "(Period)"

  4. Eventually remove the previous "Comma" keyboard to make sure you always use the "Period" one. Eventually remove the previous "Comma" keyboard to make sure you always use the "Period" one

  5. Voilà. . now properly prints . !

| improve this answer | |
  • 4
    From what I can see only Belgian has keyboards with comma/period, there's no such choice for other languages. – alex Aug 31 '16 at 8:20

I changed my keyboard to English (US) which fixed it for me.

Control Panel/Clock language and region/Change input methods

| improve this answer | |

Solved this in Windows 10 with Microsoft Keyboard Layout Creator 1.4 https://www.microsoft.com/en-us/download/details.aspx?id=22339

It requires .Net Framework 2.0, but I have latest 4.8.

  1. Open Microsoft Keyboard Layout Creator. I got some errors, but just pressed "Ignore" all time.
  2. File > Load existing Keyboard (find your current)
  3. Change comma to dot here:

enter image description here

  1. Press Project > Validate Layout and fix issues. In Russian case I deleted Alt+Ctrl+8 currency symbol (I didn`t even know it exists in default).
  2. Press Project > Build DLL and Setup package.
  3. Run setup.exe from build folder.
  4. Press magnifier icon and type language > go to "Language and Keyboard Settings".
  5. Select "language package enabled" version and press arrow up till it will be upper than.
  6. After that delete your previous language.
  7. In my case language bar in tray dissapeared after previous step, so I used this https://winaero.com/blog/enable-language-bar-windows-10/
| improve this answer | |
