• ベストアンサー

キーボードの数字キー及びテンキーを無効にするマクロ

お世話になります。上記質問タイトルに付きましてご質問させていただきます。 環境は、windowsXP、Excel2003です。 取扱い商品の物流を管理しているエクセルシートで、バーコードを読み込ませて商品コードを入力し、データ入力しています。 パートやアルバイトに入力操作をお願いしているのですが、キーボードの手入力のほうが入力しやすいらしく、手入力でデータ入力しているようです。ところが間違って入力していることがあり、キーボードの数字キーを無効にしたいと思いました。 少し調べたところ↓ -------------------------------------- Sub Keyboard09Off() For i = 44 To 90 Application.OnKey Chr(i), "" Next i End Sub -------------------------------------- このマクロで数字キーは無効になるのですが、まだテンキーは有効で さらに調べたところ↓ -------------------------------------- Sub Keyboardtenkey09Off() For i = 97 To 105 Application.OnKey Chr(i), "" Next i End Sub -------------------------------------- 自分では、これでテンキーが無効になると思ったのですが、うまくいかず。 どこが間違っているのでしょうか? 詳しい方いらっしゃいましたら、何卒ご教授お願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmmk16
  • ベストアンサー率46% (32/69)
回答No.1

0~9までを無効にしています For i = 96 To 105 Application.OnKey "{" & i & "}", "" Next i

sakura_002
質問者

お礼

ご教授頂きありがとうございます。 kmmk16様 せっかくお教え頂きましたが、こちら側のハードウェア的な都合で活用できなかった事、大変残念に思います。 mt2008様 商品コードの入力だけでなくその他の入力の際、数字キーを多用することがあり、外してしまうことは難しそうです。 再度、入力作業時には、バーコードリーダーを使用してもらう様、教育したいと思います。 ありがとうございました。

sakura_002
質問者

補足

kmmk16様 ご回答ありがとうございます。 テンキーも無効になりました。 ところが、数字キー・テンキーを無効にすると、バーコードリーダーも無効になってしまいました。 おそらく、バーコードリーダー自体がUSB接続で、コントロールパネル上ハードウェアとしてはキーボードの扱いになっており、リーダーで読み取ったデータは、バーコードリーダー専用のソフトが動いているわけではなく、キーボードの信号として入力され動作しているようなので、マクロにて数字キー・テンキーの入力を無効にすると、バーコードリーダーも無効になっているような気がします。 解決の方法が全く思いつかず、あきらめようと思ってますが、何かいいお考えがある方いらっしゃいましたら、ご連絡いただけないでしょうか? よろしくお願いいたします。

その他の回答 (1)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

まったくソフトウェア的な解決方法ではないのですが、キーボードの数字キーのキートップを外してしまってはいかがですか? バーコード以外で数字を打つ必要が有る場合は、他のキーボードを繋ぐか、スクリーンキーボードを使うことにします。 他のキーボードを使う場合は、管理者が貸し出す方式にすればバーコード入力の代わりに使う事もないでしょうし、スクリーンキーボードならバーコードで入力させた方が早いので、バーコード入力を使うようになると思います。

関連するQ&A

  • ExcelのVBAマクロOnKeyでテンキーをトラップしたい

    ExcelVBAのOnkeyメソッドで数字キーの入力をトラップしたいのですが、 Application.OnKey "1", "KeyEvent1"  のように指定した場合数字キーはトラップできるのですがテンキーの数字キーがトラップできません。 どなたかテンキーのトラップ方法をご存知の方教えてください。

  • キーボードのテンキー(数字キー)が使えなくなりました

    キーボードのテンキー(数字キー)が使えなくなりました。 NUM LOCKは解除してあるのですが。 /*-+文字は使えるのですが数字が打てません・・ 今におもえば、ハイコントラストのを設定した時に何かいじくってような・・ 設定を戻そうとしてるんですが、さっぱりわかりません。 お手数ですが、どうか教えていただけませんでしょうか?

  • テンキーを使わずに、数字が入力出来てしまう。

    友人からの相談です。今回のトラブルが起こった過程は不明ですが、症状は次の通りです。 文字入力用のキーボード上で(テンキーではなく)、数字が入力される様に成ってしまいました。 キーの「M→0」「J→1」「K→2」「L→3」「U→4」「I→5」「O→6」「7→7」「8→8」「9→9」と成ります。 テンキーの無いキーボードから数字を入力する時に、「NumLK」キーで切り換えた状態と同じです。 但し、今使用しているキーボードは、「テンキー付」です。 「テンキー付」のキーボードで、この様な事が出来る事は知りませんでした。必要ないので。 いろいろキーをいじっている内に、機能を変更するキー操作をしてしまったのでは無いかと思います。元に戻す方法を教えて頂けませんでしょうか? 文字入力が出来無くて困っています。 なお、OSはXPです。 よろしくお願いいたします。

  • ノートPCキーボードのテンキーで数字のみ入力できなくなりました

    ソニーノートPC vaio VGN-E72B を使用しているのですが キーボードの入力モードが、ずっと「NumLk」オンの状態になってしまいました。 「NumLk」を押しても全く反応せず、オフになりません。 しかも、テンキー入力の数字キーのみ反応しません。 (m、j、k、l、u、i、o、7、8、9 のみ反応しません。) その他テンキーの、/*-+.enter は入力できます。 「shift+NumLk」、「Fn+NumLk」など色々試したのですが、NumLk解除も出来ません。 テンキーの数字のみ入力できないのは特に問題は無いのですが、 とにかくNumLkオフにしたいです。 何か設定があるのでしょうか? 教えていただけますようお願いします。

  • テンキーのエンターキーを押すとNumLKキーが有効になったり無効になったりします

    テンキーのエンターキーを押すとNumLKキーが有効になったり無効になったりします。 なので、エクセルでテンキーを使ってエンターキーで確定しながら数値を連続で入力しようとしてもバラバラでとんでもないことになってしまいます… 昨日までは大丈夫でした。 キーボードの故障でしょうか??

  • テンキーで半角数字を打つには?

    中古のXPノートパソコンを購入しました。右側に数字用のテンキーが付いているタイプです。普通のキーボードで文字を全角で打つ時に、半角数字が必要な時だけ右のテンキーで入力できるので、デスクトップパソコンと同じ感覚で打てるので便利でした。しかし、どこか余計なキーを押したらしく、文字を打つ場合に右のテンキーを使うと数字が全角で入力されてしまいます。キーボードの入力を数字に切り替えるとテンキーも半角に切り替わります。 これでは、キーボードの上にある数字キーと同じ動作ですから、テンキーが付いている意味がないのです。文字入力の時に、右のテンキーだけ半角数字が直接入力できるように設定する方法を教えてください。いつか、デスクトップパソコンでも同じことが起こったような記憶があります。なお、この現象はATOKでも、マイクロソフトのIMEでも同じです。

  • キーボードのテンキー

    DELLのデスクトップを使っています。 キーボード右側にテンキーがついていますが、テンキーの「Enter」キーを使って「Space」を入力することは可能でしょうか? 数字とスペースを織り交ぜて打ち込む作業を、テンキー上だけで済ませたいと思っているのですが、ご存知の方よろしくお願いします。

  • テンキーじゃない方の数字のキー

    テンキーじゃない方の数字のキーはなんと呼ぶのですか? キーボードにあるファンクションキーの下に並んでるやつです

  • キーボードのテンキー

    キーボードのテンキーで数字の入力だけが出来なくなりました。 TK-U12FYALG 0と5は無反応 その他のキーはカーソルキーと同じ反応がみられ、違いは押すとカーソルの移動幅や移動方向が違うことです。 テンキーの所だけが使えないので、数字は入力することは出来るし、 安いし買い換えればすむことなのでしょうが、直せるならこれをずっと使いたいので教えてくださいお願いします。

  • テンキーから数字を入力することができない。

    ThinkPadでパーソナル・コミュニケーションズを使用しています。OSはWindows2000です。 パーソナル・コミュニケーションズだけでUSB接続のテンキーから数字を入力することができません。他のアプリケーションからは、通常どおり入力することができます。 現象は、NumLockがONになっていても、数字が入らずにOFFの状態で矢印キーなどになってしまうというようなものです。 このような現象を解決すると書いてあったので、『IBM USB Numeric Keypad Driver 3.7 for Windows 98/Me/2000』をインストールしてみましたが、全く改善されませんでした。 ThinkPadではなく、Libletteで同じテンキーをUSB接続で使用してみると、通常どおりパーソナルコミュニケーションズで正しく動作することが確認できました。 どのようにすれば、Thinkpadのパーソナルコミュニケーションズでテンキーから数字を入力することができるようになるのでしょうか。よろしくお願いいたします。

専門家に質問してみよう