No.6ベストアンサー
- 回答日時:
単に、Changeイベントでもよいのですが、実際に、数値を入れるとか入れないとか、というのは、ユーザーの問題ですから、以下のマクロは、「Enter」に反応するように作られています。
つまり、入れない場合でも、Enterを入れれば、セルの移動が出来るようにしてありますが、結構、大掛かりなものになってしまいます。
別に、細かい設定を説明したりするつもりがありませんので、よろしかったら、お試しください。
標準モジュールの一番上に、ユーザー設定の場所がありますから、そこに書き込んでくれれば、ご希望どおりになりますが、キーは、必ず、「,(カンマ)」で区切らないといけません。
指定以外の場所にセルポインタがある場合は、Enter を入れれば、最初の場所(例A1)に戻ります。
'--------------------------------------------------
'ThisWorkbookへ
Option Explicit
Private Sub Workbook_Activate()
Dim myKey As String
On Error Resume Next
myKey = Mid$(MYKEYS, 1, InStr(MYKEYS, ",") - 1)
Application.Goto Worksheets(MYSHEET).Range(myKey)
'別のブックから、このブックへ来た場合
Call SetKeys
End Sub
Private Sub Workbook_Deactivate()
'別のブックを作業している時
Call SetOffKeys
End Sub
Private Sub Workbook_Open()
Dim myKey As String
'開けたとき
On Error Resume Next
myKey = Mid$(MYKEYS, 1, InStr(MYKEYS, ",") - 1)
Application.Goto Worksheets(MYSHEET).Range(myKey)
Call SetKeys
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'閉じる前
Call SetOffKeys
End Sub
'--------------------------------------------------
'=================================================
'標準モジュール
'-------------------------------------------------
Option Explicit
'===================================
'キーの設定(ユーザー設定)
Public Const MYKEYS As String = "A1,A5,C1"
Public Const MYSHEET As String = "Sheet1"
'===================================
Private myKeyAr As Variant 'キーを格納する配列変数
Sub SetKeys()
'設定用
Application.OnKey "~", "ReturnDirectrion2Cell"
Application.OnKey "{Enter}", "ReturnDirectrion2Cell"
End Sub
Sub SetOffKeys()
'解除用
Application.OnKey "~"
Application.OnKey "{Enter}"
End Sub
Private Sub ReturnDirectrion2Cell()
Dim i As Long
Dim myAdd As String
Dim NextAdd As String
'変数の確保をチェック
If IsArray(myKeyAr) = False Then
myKeyAr = Split(MYKEYS, ",")
End If
'除外条件
If ActiveSheet.Name <> MYSHEET Then
ActiveCell.Offset(1).Select
Exit Sub
End If
myAdd = ActiveCell.Address(0, 0)
For i = LBound(myKeyAr) To UBound(myKeyAr)
If StrComp(myKeyAr(i), myAdd) = 0 Then
If i < UBound(myKeyAr) Then
NextAdd = myKeyAr(i + 1)
Exit For
Else
NextAdd = myKeyAr(0)
End If
End If
Next i
If NextAdd <> "" Then
Range(NextAdd).Select
Else
Range(myKeyAr(0)).Select
End If
End Sub
No.5
- 回答日時:
飛びたい順にCtrlキーを押しながらセル選択
↓
セルが選択されている状態で名前ボックスに適当な名前入力
名前ボックスから定義した名前を選択したら設定しておいた
セルが選択されます。
セルに入力後エンターキーで次のセルに設定しておいた順に
ジャンプします。
No.4
- 回答日時:
ファイルを保存するときは必ずセル「A1 にカーソルを置」いておけば、「ファイルを開いた時に必ず、A1 にカーソルを置」いた状態にな
りますが…No.1
- 回答日時:
ブックを開いたらA1を選択、は↓でいけます。
シートの指定はなかったので考慮してません。
Private Sub Workbook_Open()
Range("A1").Select
End Sub
入力後に右のセルに移動するには↓でいけます。
ツール→オプション→編集→
入力後にセルを移動する方向を「右」
この回答への補足
A1 → A5 → C1 といった全く離れた位置へ飛びたいと言う事なんです。
そういう意味でジャンプと書いたつもりだったのですがうまく書けなくてすいません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル関数教えてください 3 2022/06/21 10:22
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- Excel(エクセル) Excel 数式を教えてください 2 2022/06/02 12:24
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) エクセルで一定の数値を超えたとき”一定数”、超えなかったら計算式を入れたい 3 2022/04/05 10:31
- Excel(エクセル) ある範囲のセルに何を入力すると、別のセルに○を表示させる 3 2022/04/05 15:51
- Excel(エクセル) エクセルのマクロについて質問があります。 sheet1に数字を入力してsheet2を印刷したいのです 2 2023/06/07 14:49
- Excel(エクセル) エクセルで、 A1セルに「A」という値、 B1セルに「B」という値が入っています。 どちらも表示形式 5 2023/02/22 23:05
- その他(Microsoft Office) IF関数について教えてください 2 2022/05/10 13:31
- Excel(エクセル) 【再度】Excelの関数について教えてください。 4 2023/07/28 13:06
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでエンターを押すと隣...
-
エクセルで行の一番上にセルに...
-
Excelのテーブル上のセルの保護...
-
名簿の漢字名を関数で半角カナ...
-
EXCEL 連動したドロップダウン...
-
エクセルで休日の「休」という...
-
【エクセル】入力規則のプルダ...
-
EXCELで縦の行全てに一括して文...
-
指定した行に飛ぶ事って可能で...
-
エクセル・・色の着いたセルの...
-
エクセルで決められた合計にな...
-
エクセルで空白に自動で文字を...
-
オートフィルを列すべて(一番...
-
Excelでセルを次の行の先頭の列...
-
Excelで数値をgからkgへ(÷1000)
-
空白部分に連番の数字を記入し...
-
番号を飛び番号の連番で入力し...
-
word vbaでword上の表の、任意...
-
エクセルで、複数の同一内容の...
-
エクセルで自動的に1~100...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelのテーブル上のセルの保護...
-
エクセルでエンターを押すと隣...
-
名簿の漢字名を関数で半角カナ...
-
EXCEL 連動したドロップダウン...
-
EXCELで縦の行全てに一括して文...
-
【エクセル】入力規則のプルダ...
-
エクセルで行の一番上にセルに...
-
エクセルで決められた合計にな...
-
エクセルで休日の「休」という...
-
オートフィルを列すべて(一番...
-
空白部分に連番の数字を記入し...
-
Excelでセルを次の行の先頭の列...
-
Googleスプレッドシートでの範...
-
EXCELのNOW()関数の...
-
エクセルで空白に自動で文字を...
-
指定した行に飛ぶ事って可能で...
-
エクセルのオートフィル機能で...
-
Excelで数値をgからkgへ(÷1000)
-
Excelで相対度数を求めたいので...
-
Excel入力規則とVLOOKUPの組み...
おすすめ情報