
No.1ベストアンサー
- 回答日時:
Access VBAでは、Tabキーを押したときのカーソルの移動幅を変更するために、以下の手順をお試しください。
Visual Basicエディタを開きます。
モジュールを選択し、コードを編集します。
カーソルの移動幅を変更するためのコードを追加します。
以下に、カーソル移動幅を変更する例を示します。
vba
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
Sub ChangeTabWidth()
' Tabキーを押したときのカーソル移動幅を変更する
Const VK_TAB As Long = &H9
Const GWL_WNDPROC As Long = -4
Const WM_KEYDOWN As Long = &H100
Const WM_GETDLGCODE As Long = &H87
Dim hWnd As Long
Dim PrevWndProc As Long
' カーソル移動幅を設定する値(ピクセル単位)
Dim tabWidth As Integer
tabWidth = 20 ' 例として20ピクセルに設定
' 現在のウィンドウプロシージャを取得
hWnd = Application.hWndAccessApp
PrevWndProc = GetWindowLong(hWnd, GWL_WNDPROC)
' ウィンドウプロシージャを変更
SetWindowLong hWnd, GWL_WNDPROC, AddressOf NewWndProc
' ウィンドウプロシージャの新しい定義
Function NewWndProc(ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Select Case uMsg
Case WM_KEYDOWN
If wParam = VK_TAB Then
' カーソル移動幅を設定
SendMessage hWnd, WM_GETDLGCODE, 0, ByVal 0&
SetCursorPos(tabWidth, 0)
NewWndProc = 1
Else
NewWndProc = CallWindowProc(PrevWndProc, hWnd, uMsg, wParam, lParam)
End If
Case Else
NewWndProc = CallWindowProc(PrevWndProc, hWnd, uMsg, wParam, lParam)
End Select
End Function
End Sub
上記のコードでは、ChangeTabWidthというサブルーチンを定義し、Tabキーが押されたときにカーソルの移動幅を変更します。tabWidthの値を適宜調整してください。
このコードを実行すると、Tabキーを押したときのカーソル移動幅が設定した値に変更されるはずです。
この方法はAccessのウィンドウプロシージャを変更することで実現しており、他の動作にも影響を与える可能性があります。
注意して使用してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
十字カーソルの輪郭が見えない
-
スターウォーズバトルフロントⅡ...
-
エクセルで特定の範囲内のみカ...
-
ノートパソコンがマウスもタッ...
-
ノートパソコンの画面の矢印が...
-
カーソル入りのスクリーンショ...
-
スクロールでビープ音が鳴るよ...
-
ワードでカーソルがページの外...
-
Wordのページが飛ぶ
-
エクセルのセルをドラッグしな...
-
文字入力の途中で、突然カーソ...
-
Wordのカーソルの位置について
-
マウスのカーソルは飛ぶ事があ...
-
パソコンのカーソルの移動をマ...
-
文字を打つと飛ぶ!
-
マウスカーソルの変更について
-
photoshopで謎のマーク
-
「.cur」のアイコン表示について
-
logicoolの「DPI感度レベル」っ...
-
Excelで、カーソルの移動が異常...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スターウォーズバトルフロントⅡ...
-
十字カーソルの輪郭が見えない
-
ノートパソコンがマウスもタッ...
-
カーソルが引っ掛かる
-
ノートパソコンの指でさわる部...
-
Wordのカーソルの位置について
-
photoshopで謎のマーク
-
キーボードを押しながらタッチ...
-
セルを示す四角のカーソル色の...
-
エクセルのセルをドラッグしな...
-
Wordのページが飛ぶ
-
マウスカーソルが画面外へ逃げる?
-
テキストボックス内でのカーソ...
-
文字入力の途中で、突然カーソ...
-
エクセルで特定の範囲内のみカ...
-
カーソルが勝手に下に暴走し、...
-
ポインターとカーソルは同じ意味?
-
マウスのカーソルは飛ぶ事があ...
-
文字を打つと飛ぶ!
-
Excelで、カーソルの移動が異常...
おすすめ情報