セルに情報を入力した後にEnterキーを押すと、Excelは通常、情報を保存してから、Enterキーを押したセルの下の次のセルに移動します。ただし、この動作は変更できます:

。 [Excelのオプション]ダイアログボックスを表示します。 (Excel 2007では、[Office]ボタンをクリックし、[Excelオプション]をクリックします。Excel2010以降のバージョンでは、リボンの[ファイル]タブを表示し、[オプション]をクリックします。)

。ダイアログボックスの左側にある[詳細]をクリックします。 (図1を参照)

。 [編集オプション]で、[Enterキーを押した後、選択範囲を移動する]チェックボックスがオンになっていることを確認します(デフォルトでオンになっているはずです)。

。 [方向]ドロップダウンリストを使用して、必要に応じて方向を変更します。

方向を変更すると、すべてのブックでのExcelの動作に影響します。

ブックごとにEnterキーの動作を変更する必要がある場合は、運が悪いと思うかもしれません。ただし、小さなクリエイティブなマクロコードを使用して、Enterの後に進む方向を指定し、ブックがアクティブ化されるたびにそのコードを実行することができます。

たとえば、特定のワークブックがあり、Enterキーを押した後は常に選択範囲を上に移動したいとします。この特定のワークブックでは、VBAエディターのthisWorkbookオブジェクトに次のコードを追加できます。

Private Sub Workbook_WindowActivate(ByVal Wn As Excel.Window)

bMove = Application.MoveAfterReturn     lMoveDirection = Application.MoveAfterReturnDirection

Application.MoveAfterReturn = True     Application.MoveAfterReturnDirection = xlUp End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window)

Application.MoveAfterReturn = bMove     Application.MoveAfterReturnDirection = lMoveDirection End Sub

ここには2つの別個のサブルーチンがあります。最初のものは、ブックのウィンドウがアクティブ化されるたびに実行されます。この場合、MoveAfterReturnプロパティとMoveAfterReturnDirectionプロパティに関連付けられた設定を変数に格納します。 (これらの変数についてはすぐに学習します。)次に、マクロはMoveAfterReturnプロパティをTrueに設定し、方向をxlUpに設定します。この特定のブックでデフォルトで別の方向に進みたい場合は、xlDown、xlToLeft、xlToRightなどの別のExcel定数を使用するだけです。

2番目のサブルーチンは、ワークブックウィンドウが非アクティブ化されるたびに実行されます。

この場合、MoveAfterReturnプロパティとMoveAfterReturnDirectionプロパティの値は、ブックが最初にアクティブ化される前の値にリセットされます。

これらのルーチンで使用される2つの変数、lMoveDirectionとbMoveは、モジュールの宣言部分で定義する必要があります。これにより、上記の両方のルーチンから変数にアクセスできます。

Public lMoveDirection As Long Public bMove As Boolean

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ excelribbon-ExcelTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(7220)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。

link:/ excel-Choosing_Direction_after_Enter_On_a_Workbook_Basis [ワークブックベースで入力した後の方向の選択]