• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Enterキーの移動方向を指定したい。)

ExcelのEntekii移動をコントロールするマクロの解読方法

このQ&Aのポイント
  • ExcelでEntekii(エンターキー)を押してのセル移動を制御するためのマクロが提供されましたが、マクロの記述が初歩的すぎて解読できない状況です。エンターキーを押すと右に移動し、一段下に移動する動作を特定の範囲で行いたいです。
  • マクロを組んだワークブックを閉じると、セル移動の設定が不正に変わる現象が発生しました。対処法として、ワークブックを閉じる時に実行するマクロ(WorkBook_BeforeClose関数)を使用しましたが、問題のワークブック以外にも影響が及び、セル移動の設定が正常になりませんでした。
  • B2からN28までの範囲でエンターキーを押してのセル移動を制御したいです。また、特定の範囲ではエンターキーを押すと右に移動し、一段下に移動するような動作を行いたいです。さらに、マクロを組んだワークブックを閉じる際にセル移動の設定が正常に戻るようにしたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.2

B2:N28以外にカーソルが移動できなくてもいいなら、 (1) B2:N28のロックをはずす。 (2) シートの保護で、「ロックされたセルの範囲の選択」をチェックしない。 (3) Excelのオプションの詳細設定で、「Enterキーを押した後にセルを移動する」の方向を右にする。 で、希望通りの動きをします。 >「同時に開いているワークブック」にも干渉しないようにすることは出来ないのでしょうか? セルの移動方向の設定はExcel全体に対するものなので、特定のシートやブックに対してだけ行うということはできません。 ブックごとに変えたいのなら、Workbook_WindowActivateに設定変更のマクロを記述してください。

yamagou
質問者

お礼

早速のご指導ありがとうございます。 アイディア次第で、シンプルな方法でも効果的なやり方が有るものなのですね! 下記の記述に教えて頂いた方法を併用しようと思います。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Target, Range("B2:N28")) Is Nothing Then Application.MoveAfterReturnDirection = xlToRight Else Application.MoveAfterReturnDirection = xlDown End If End Sub

その他の回答 (2)

  • chayamati
  • ベストアンサー率41% (260/624)
回答No.3

EXCEL2010のホームリボンに[テーブルとして書式設定]ツールがあります これで設定範囲内でカーソルが移動します。 EXCEL2007にもあったような?

yamagou
質問者

お礼

ご教授、ありがとうございます。 こんな便利なものが有るとは知りませんでした。 早速試してみました。 見出しが付くようなので、今回は使えませんが、応用の方法が一杯ありますね。

noname#222486
noname#222486
回答No.1

Euterはマークのとおり「改行」なので下方向。 Tabは横(左右)方向に移動です。 EuterとTabで上手くコントロールしましょう。

yamagou
質問者

お礼

ご指導、ありがとうございます。 更にshiftを併用すると自由自在ですね! また、よろしくお願い致します。

関連するQ&A