|
▼Kein さん:
>シートのアクティブイベントというのは「いったん他のシートに移動してから
>当該シートに戻ったとき」をトリガーにしてます。だからシートモジュール
>に入れただけでは、キーへの割り当てが出来ていないのです。
>で、こちらで試してみた結果、JmpCellのコードは以下のように修正する必要が
>あることが分かりました。
>
>Private Sub JmpCell()
> If TypeName(Selection) <> "Range" Then Exit Sub
> With ActiveCell
> Select Case .Column
> Case 4, 6: .Offset(, 2).Select
> Case 11: .Offset(1, -8).Select
> Case 129
> If .Row = 14 Then
> .Offset(40, -3).Select
> Else
> .Offset(1).Select
> End If
> Case 126
> Select Case .Row
> Case 54, 56, 58, 60: .Offset(, 11).Select
> Case Else: .Offset(1).Select
> End Select
> Case Else: .Offset(1).Select
> End Select
> End With
>End Sub
>
>お手数ですが直しておいて下さい。
Keinさん報告です。
下記の様に修正したところ動作してくれました。
問題ありませんか?
Private Sub JmpCell()
If TypeName(Selection) <> "Range" Then Exit Sub
With ActiveCell
Select Case .Column
Case 3: .Offset(, 1).Select ’★追加
Case 4, 6: .Offset(, 2).Select
Case 8: .Offset(, 1).Select ’★追加
Case 11: .Offset(1, -8).Select
Case 129
If .Row = 14 Then
.Offset(40, -3).Select
Else
.Offset(1).Select
End If
Case 126
Select Case .Row
Case 54, 56, 58, 60: .Offset(, 11).Select
Case Else: .Offset(1).Select
End Select
Case Else: .Offset(1).Select
End Select
End With
End Sub
同じbookにもう1sheetあるのですが下記コードです。
ちゃんと動いてくれません。
Private Sub JmpCell()
If TypeName(Selection) <> "Range" Then Exit Sub
With ActiveCell
Select Case .Column
Case 5: .Offset(, 2).Select ★ココ修正
Case 22: .Offset(1, -21).Select ★ココ修正
Case 129 ※ここから下のCase・Selectは何を意味してるのでしょうか?
If .Row = 14 Then
.Offset(40, -3).Select
Else
.Offset(1).Select
End If
Case 126
Select Case .Row
Case 54, 56, 58, 60: .Offset(, 11).Select
Case Else: .Offset(1).Select
End Select
Case Else: .Offset(1).Select
End Select
End With
End Sub
他にも転用したいのでKeinさん申し訳ないのですが
教えていただけませんか。
何度も申し訳ないのですが
よろしくお願いします。
|
|