No.2ベストアンサー
- 回答日時:
こんにちは。
#1の回答者です。
>IMEではなくATOKを使っています。
>Excle内だけでこの設定を有効にしたいのですがマクロを使った方法を使いたいと考えています。
念の為に、このようなキーボードスワップを見つけました。
KeySwap for XP
http://www.vector.co.jp/soft/winnt/util/se228667 …
私が、XPで使っていたものは、ソフトウェアごとに設定できましたが、上記のものはつかったことがありません。
以下は、単に、ESCだけを使えなくするプログラムです。
かなり昔に、話の行きがかりで作ったお蔵入りのコードで、いままで公開したことはありません。
その時は、それだけの勢いがありましたが、もう、私は、おなじようなものを作るだけの力は持っていません。設定は、特定のブックに対してでも、個人用マクロブックでも構いませんが、後者につけると、Excelを使う時には必ずESCが利かない状態になります。
本来は、解除用のプログラムもあるのですが、うまく働いていませんので、割愛しました。もちろん、ブックに取り付けたものですから、Excelを終了すれば解除されます。
'標準モジュールを新しく一つ設けてください。
'Auto_Openなど前のがあったら、削除してください。ただし、ThisWorkbook_Open()は構いません。
'実際に使う時は、失敗のErr の時のメッセージだけ残せばよいです。
'//新規の標準モジュール
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function RegisterHotKey Lib "user32.dll" (ByVal hWnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
'Private Declare Function UnregisterHotKey Lib "user32.dll" (ByVal hWnd As Long, ByVal id As Long) As Long 'これは使っていません。
Private Const VK_ESCAPE As Long = &H1B
Private HookFlg As Boolean
Sub Auto_Open()
Call Disabled_ESCAPEKey '起動時に設定
End Sub
Sub Disabled_ESCAPEKey() '設定
Dim rtn As Variant
Dim hWnd As Long
hWnd = FindWindow("XLMAIN", Application.Caption)
rtn = RegisterHotKey(hWnd, 1&, 0&, VK_ESCAPE)
If rtn = 0 Then
MsgBox "Not Success", vbCritical, "Err"
Else
HookFlg = True
MsgBox "Success Hotkey Hooked" 'うるさいかもしれません。
End If
End Sub
'//
No.1
- 回答日時:
こんにちは。
本来、IME側のプロパティのEscの設定が、文字を消去するように設定されているからです。
だから、IME側のキー設定を直せばよいです。
MS IMEなら、ツール-プロパティ-全般=編集操作=キー設定で変更をします。
しかし、Excel内で何かに割り当てというのでしたら、
個人用マクロブックの標準モジュールにこのようなコードはいかがですか?
'//個人用マクロブックの標準モジュール
Sub Auto_Open()
Application.OnKey "{ESC}", "SHOW_TIME" '何も反応させない時は、"{ESC}", "" でリセットになります。
End Sub
'//以下は、動いているかどうかを試すためのものです。
'//ステータスバー(下部左側)に日付と時間が出ます。
Sub SHOW_TIME()
Dim myTime As String
Dim STBtext As String
STBtext = Application.StatusBar
myTime = Format$(Date, "yy/mm/dd") & " " & Format$(Time(), "hh:mm")
If STBtext Like "##/##/##*" Then
Application.StatusBar = ""
Else
Application.StatusBar = myTime
End If
End Sub
'//
再起動するか、Auto_Openを実行すれば、設定が完了します。
IMEではなくATOKを使っています。
Excle内だけでこの設定を有効にしたいのですがマクロを使った方法を使いたいと考えています。
Sub Auto_Open()
Application.OnKey "{ESC}", ""
end sub
というのを試してみましたが、セル内にキーを入力中でない場合には
この機能は有効になるのですが
キーを入力中には無効となっており、
普通にキー入力が強制終了されてしまい使うことができません
どうすれば良いでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 全角文字「ヴ」の半角文字「ヴ」への変換方法について 3 2022/11/05 12:07
- iOS これは日本語入力の大発明ですか? 7 2022/12/21 07:17
- オンラインゲーム apexについて キーボードでデスボックスを漁っている時にescキー以外で漁るのを止める方法はありま 1 2023/05/19 10:30
- Excel(エクセル) セルに入力した小文字アルファベット、数字を大文字表示させるには? 3 2022/07/13 10:01
- タブレット Windowsタブレットの質問です。全画面表示を解除したいです。 タブレットモードにして「PDF X 1 2023/04/18 00:56
- Word(ワード) IMEパッドがショートカットキーで開かないのですが。。。 5 2023/06/11 09:23
- マウス・キーボード 不良表示キー(キーボード) 3 2022/04/27 10:53
- Excel(エクセル) Excel同士のデータの突合 3 2023/08/07 16:34
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- マウス・キーボード キーボード(半角/全角 漢字)のキーから 入力モード 2 2022/11/23 09:58
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
wordに常に赤字で訂正を入れる方法
-
RAM
-
エクセルでのみ句読点「。」が...
-
ワードでローマ字数字を入力す...
-
パワーポイント 文字の太さを...
-
①~⑳は記号で変換できますが、...
-
Wordの入力中と確定後の文字の...
-
文字の 縦/横の比率 を変更し...
-
ワードで英単語を入力すると文...
-
ワードなどで、文章中に縦棒を...
-
Illustratorの枠線を消したい
-
WORDの作成内容を固定したい(...
-
半角の『°(単位の度)』
-
エクセル、空白に下線について ...
-
テプラは半角数字が使えますか?
-
EXCELで○A(丸で囲まれたA)とい...
-
℃の半角表示
-
φという記号の出し方(IME)
-
Wordで下線と文字の間を空ける方法
-
半角の×(かける)は?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでのみ句読点「。」が...
-
エクセルの「塗りつぶし」の色...
-
wordに常に赤字で訂正を入れる方法
-
RAM
-
原稿用紙の設定
-
音声認識ができないで困っています
-
スペースキーで変換ができません
-
IE「自動構成スクリプトを使用...
-
Googleカレンダー 詳細時刻指定...
-
ワードで等幅フォント句読点を...
-
BUFFALO エアナビゲーターを削...
-
ワードで200字詰にはどうし...
-
リソース監視がしたい
-
ATOKがIMEにじどうてきにきりか...
-
ブラウザの設定でクッキーを使...
-
パソコンの共有設定は勝手に変...
-
8.1でスタートのアプリ検索がロ...
-
ATOK2006でExcelへの入力開始時...
-
ダウンロードの設定
-
3770Kオーバークロック
おすすめ情報