
以前こちらで教えていただき、
以下のように文字を入力したら、右へ移動するようにしました。
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveCell.Offset(-1, 1).Select '入力をしたら右にセルが移動する
End Sub
上記コードでは、deleteを押すと セルが、右上に移動してしまって
困っています。
そこで、以下のようにしてみました。
Private Sub Worksheet_Activate()
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlToRight
End Sub
すると、今度は、別のエクセルデータを開いても右へセルが移動してしまい、
その都度オプションでカーソルの移動を下へ変更しなければいけなくなってしまいました。
やりたいことは、
決められた一つのファイルでのみ、エンターを押す、もしくは文字を入力する、DELETEを押す
上記の作業の後、セルが右へ1つ移動するというようにしたいのですが、
どのようにしたらよいでしょうか?
No.2ベストアンサー
- 回答日時:
こんにちは。
既存のApplication.MoveAfterReturn、Application.MoveAfterReturnDirection
を扱う記述やWorksheet_Changeイベント等すべてを排除した上で、
ThisWorkbook モジュールに以下の記述を貼り付けます。
この方法であれば、
ブックを閉じた後、
同時に開いた他のブックで作業する時、
既定の下方向へのカーソル移動へと設定を戻します。
コードを貼付けた直後は、Workbook_WindowActivate
が呼び出されるまで何もしませんから、
最初だけ、
Application.MoveAfterReturnDirection = xlToRightを別の方法で実行するか、
他のブックを開いて、アクティブブックを切り替える等して試してください。
尚、Application.MoveAfterReturnは変更する必要のないプロパティです。
' ' /// ThisWorkbook モジュール
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Application.MoveAfterReturnDirection = xlToRight
End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Application.MoveAfterReturnDirection = xlDown
End Sub
' ' ///
> 決められた一つのファイルでのみ、エンターを押す、もしくは文字を入力する、DELETEを押す
> 上記の作業の後、セルが右へ1つ移動するというようにしたいのですが、
「DELETEを押す」タイミングでカーソルを移動する、というのは、
Windowsでは馴染みのない挙動なので、意図を量りかねています。
通常は、[DEL]→[ENTER]キーという2つのストロークで、
カーソルを移動するものだと思います。
(これでも2ストロークですから、他の処理よりは手数少ない訳ですし)
ということで、差し当たり、
「DELETEを押す」タイミングでカーソルを移動することについては、
今回、何もしていません。
やるとすれば、Application.OnKey メソッドあたりを扱うことになると思いますが、
管理的に難しめです。
何故、その機能が必要なのか、補足説明頂ければ、
それに合わせた形で再度検討してみます。
取り敢えず、以上です。
ありがとうございます。
今回は急いでいたため、記載していただいたものをそのままコピーして
使用させていただきました。
また、「DELETEを押す」タイミングでカーソルを移動する。。。
ご指摘いただいたように、このような動きはするはずないですよね。
ただ、
以前使用していた(記載した内容)だと、
なぜかDELETEを押すとENTERを押さなくてもカーソルが勝手に移動してしまっていたので、
頭の中がごちゃごちゃになってしまっていたようです。
今回コピーさせていただいたソースが自分のやりたいことをすべてできたので
本当に満足しております。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- Visual Basic(VBA) vbaでセルに入力したときに,その横にあるセルを保護し入力不可にするマクロを作りたいです。 2 2022/04/24 20:59
- Visual Basic(VBA) Excelにて、シート1の行を削除するとシート2のシート1と同じ番号の行も削除したい 3 2022/05/08 04:24
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/05/26 17:19
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
このQ&Aを見た人はこんなQ&Aも見ています
-
値を入力後、自動的にアクティブセルが移動するマクロ
Excel(エクセル)
-
Excel VBA あるセルでENTERを押すと特定のセルへ移動したい
Excel(エクセル)
-
【エクセルVBA】一部シートのみエンターでカーソルが右にすすむようにしたい
Excel(エクセル)
-
-
4
Excelで指定桁数分を入力すると自動的に次のセルに移動するようにするには?
Excel(エクセル)
-
5
あるセルに特定の文字列を打つと、他のセルに決められた文字が自動入力するように
Excel(エクセル)
-
6
エクセルVBAを使いセルを指定した順番に異動させ
Excel(エクセル)
-
7
セルの自動移動
Excel(エクセル)
-
8
エクセル 1文字入力すると自動で横にセル移動
Windows Vista・XP
-
9
セルの書式設定のフォントやサイズの設定はできないの
Excel(エクセル)
-
10
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
11
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定のセルだけ結果がおかしい...
-
エクセルのdatedif関数を使って...
-
エクセルのVBAで集計をしたい
-
【マクロ】【配列】3つのシー...
-
vba テキストボックスとリフト...
-
エクセル ドロップダウンリスト...
-
【関数】同じ関数なのに、エラ...
-
Office2021のエクセルで米国株...
-
【マクロ】列を折りたたみ非表...
-
9月17日でサービス終了らし...
-
【マクロ】アクティブセルの時...
-
ページが変なふうに切れる
-
【条件付き書式】シートの中で...
-
【マクロ】3行に上から下に並...
-
【マクロ】オートフィルターの...
-
【マクロ】EXCELで読込したCSV...
-
【画像あり】オートフィルター...
-
他のシートの検索
-
エクセルの循環参照、?
-
Excelファイルを開くと私だけVA...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル
-
【マクロ】WEBシステムから保存...
-
エクセルの循環参照、?
-
エクセル ドロップダウンリスト...
-
エクセルのdatedif関数を使って...
-
特定のセルだけ結果がおかしい...
-
【マクロ】A列にある、日付(本...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【エクセル】期限アラートについて
-
iPhoneのExcelアプリで、別のシ...
-
【関数】同じ関数なのに、エラ...
-
Excelの新しい空白のブックを開...
-
【マクロ】3行に上から下に並...
-
【マクロ】宣言は、何のために...
-
VBA チェックボックスをオーバ...
-
Excelについての質問です 並べ...
-
【マクロ】アクティブセルの2...
-
【関数】不規則な文章から●●-●●...
おすすめ情報