アプリ版:「スタンプのみでお礼する」機能のリリースについて

マクロでenterキーを押すと指定のセルに移動したいのですが色んなネット情報で試しましたが今一分かりません、使い方はA1→B1→C1→D1と移動させD1からA2に移動させる方法です。
後はこの動きを400列ぐらい繰り返したいです。
セルが右に行く方法はマクロでもExcel設定の方で出来るのは知っていますが右4つ移動の左一段下の繰り返しプログラムを教えて頂けないでしょうか?
図々しいですがプログラムを書いていただけると幸いかと思います。
みなさま宜しくお願いします。javascript:void(0);

A 回答 (4件)

No.2です。



シートモジュール(シート名タブを右クリックで『コードの表示』で出てくる所)に、

Private Sub Worksheet_Change(ByVal Target As Range)

With Target
If Not Intersect(.Cells, Range("D:D")) Is Nothing Then
Cells(.Row + 1, "A").Select
End If
End With

End Sub

で宜しいでしょうか?
    • good
    • 1
この回答へのお礼

助かりました

めぐみんさん早々のご対応ありがとうございます。
上記のデーターを参考にトライしてみます。
有難うございました。

お礼日時:2021/10/28 17:59

こんにちは


範囲や始めるセルなどリセット方法を考える必要がありますが
こんなのはどうでしょう?
対象シートモジュールで入力しない場合の移動はデフォルトです
Option Explicit
Dim n As Integer
Private Sub Worksheet_Change(ByVal Target As Range)
If n < 3 Then '4列
Target.Offset(, 1).Select
n = n + 1
Else
Target.Offset(1, -3).Select
n = 0
End If
End Sub

また、
列全体や選択範囲をマウスやショートカットキーなどで選択して
該当シートのみで右移動にするのであれば、オプションから設定すれば良いのではないかと思います。

VBAで行うなら対象シートモジュールに(入力が無くとも移動)
Option Explicit
Dim tmp '念のためデフォルトを取得
Private Sub Worksheet_Activate()
tmp = Application.MoveAfterReturnDirection
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlToRight
End Sub
Private Sub Worksheet_Deactivate()
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = tmp
End Sub

行移動は範囲に依存する
列全体や選択範囲をマウスやショートカットキーなどで選択
    • good
    • 1
この回答へのお礼

助かりました

Qchan1962さん有難うございます。
データーを書き込んでいただき助かりました。
始めて教えて!gooをやりましたが色んな方々からご教授頂き
有難うございました。(←年齢ばれそう(笑))

お礼日時:2021/10/28 18:05

>マクロでenterキーを押すと指定のセルに移動したいのですが



Enterキーを押すってのは『セルへの入力確定』なのですか?
それとも『どうでも良いから押した時』なのですか?
    • good
    • 0
この回答へのお礼

早々の返信ありがとうございます。
Enterキーを押すってのは『セルへの入力確定』で会っています。
文章足らずですいません、計測機器をPCに繋いでExcelに計測値を飛ばした後にenterキーを押して次のセルに移動したいのです。
参考になるかどうかわかりませんがoffice2019となっております。
教えて!goo初心者ですが返信方法はこれで良いですか?

お礼日時:2021/10/28 16:55

こんにちは。



あまりテストしていませんが、例えば下記とかはどうでしょうか?
タブで、E1セルに移動した時に、A2セルへ移動するみたいな。
念のために、移動する前後で、イベントの無効、セルのセレクト、イベント
の有効とした方が安全かも知れませんが。。。
下手すると、無限ループに入る可能性があるので。
マクロでセル移動 → イベント発生 → セル移動 → イベント発生。。。

Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Target
Select Case .Address
Case "$E$1"
Range("A2").Select
End Select
End With
End Sub

イベントの無効、有効
https://xtech.nikkei.com/it/pc/article/NPC/20070 …
    • good
    • 0
この回答へのお礼

ありがとう

早々の返信ありがとおうございます。
上記を参考に試したいと思います。
有難うございました。

お礼日時:2021/10/28 16:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!