|
▼DONPON さん:
こんばんは。
>Excelのセル内で改行しようとするとき、通常は、「Alt+Enter」で
>できますが、これを「Enter」だけで改行できるように、VBAで作ろうと
>思いました。
Excelのインターフェースを敢えて替えるなんてことは
私は、絶対にしませんけどねえ!!
(それなら仕様書でAlt+Enterという仕様をくどいくらい説明します)
当該シートモジュールに
'======================================================
Private Declare Function GetAsyncKeyState Lib _
"User32.dll" (ByVal vKey As Long) As Long
'========================================================
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
For Each rng In Target
If key_code(13) = 13 Then
rng.Select
SendKeys "{F2}", True
SendKeys "%{ENTER}", True
End If
Next
End Sub
'=====================================================
Function key_code(code As Long) As Long
Dim inkey As Long
key_code = 0
inkey = GetAsyncKeyState(code)
If inkey <> 0 Then key_code = code
End Function
なんてすると、Enterキー改行、
マウスで別のセルの選択やTabでは改行はしません。
参考程度に見てください。
|
|