|
▼ひげくま さん:
>▼じろう さん:
>>申し訳ないですが対処方法はありますか。
>
>今どういう状況で困っていて、それをどうしたいのでしょうか?
>これらを文章で明確に出来れば、それをそのままコーディングするだけだと思うのですが。
ありがとうございます。状況を説明しますと
sheet1,2においてEnterでセルに入力してもしなくても規則的に1つ右一つ飛び越し
2つ右あるいは1行改行で元に戻ると言う作業を実施したくスレッドを立ち上げた
のですがどうしても動きがうまく動作してくれずいまの状況です。
Keinさんに試行錯誤いただいたのですが私のPC上では動作が安定しません。
sheet1はCスタートで
Enterで1ヶ右→2ヶ右→2ヶ右→1ヶ右→K列が最終[一部結合セルがあるためKです]次にsheet2で
A列スタートで
E列まで1つづつEで2ヶ右→Tまで1つづつTで2つ右→Vで折り返し改行A列への
作業をしたかったのですが
[45823]にてKeinさんにコードを作成いただきテストしているのですが
下改行してしまったりしていまして、動作が・・・
こんな説明で解りますか。よろしくお願いします。
今下記のコードでsheet1はOK予定通り動いてくれています
但しsheet2が
A.B列は右C.D列は下改行E列右OK F列下改行H.I.J.K下Lからは希望通り動作しま
す。
Sub JumpCell3()
Dim Snm As String
If TypeName(Selection) <> "Range" Then Exit Sub
Snm = ActiveSheet.Name
With ActiveCell
Select Case .Column
Case 3, 8, 9, 10
If Snm = "Sheet1" Then
.Offset(, 1).Select
Else
.Offset(1).Select
End If
Case 4, 6
If Snm = "Sheet1" Then
.Offset(, 2).Select
Else
.Offset(1).Select
End If
Case 11
If Snm = "Sheet1" Then
.Offset(1, -8).Select
Else
.Offset(1).Select
End If
Case 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
If Snm = "Sheet2" Then
.Offset(, 1).Select
Else
.Offset(1).Select
End If
Case 4, 20
If Snm = "Sheet2" Then
.Offset(, 2).Select
Else
.Offset(1).Select
End If
Case 22
If Snm = "Sheet2" Then
.Offset(1, -21).Select
Else
.Offset(1).Select
End If
Case 129
If .Row = 14 Then
If Snm = "Sheet1" Or Snm = "Sheet2" Then
.Offset(40, -3).Select
Else
.Offset(1).Select
End If
Else
.Offset(1).Select
End If
Case 126
Select Case .Row
Case 54, 56, 58, 60
If Snm = "Sheet1" Or Snm = "Sheet2" Then
.Offset(, 11).Select
Else
.Offset(1).Select
End If
Case Else: .Offset(1).Select
End Select
Case Else
.Offset(1).Select
End Select
End With
End Sub
|
|