Share via


Range.FindPrevious メソッド (Excel)

Find メソッドで開始された検索を続行します。 前回の検索条件に一致するセルを、上方向 (行のときは右から左、列のときは下から上) に検索し、見つかったセル ( Range オブジェクト) を返します。 選択またはアクティブなセルには影響しません。

構文

FindPrevious (Before)

expressionRange オブジェクトを表す変数です。

パラメーター

名前 必須 / オプション データ型 説明
Before 省略可能 バリアント型 (Variant) 指定したセルの上方 (行のときは左、列のときは上) のセルから検索を開始します。 これは、ユーザー インターフェイスから検索が実行されたときにアクティブなセルの場所に対応しています。 Before は範囲内の 1 つのセルである必要があることに注意してください。

このセルの前に検索が開始されることを忘れないでください。メソッドがこのセルに折り返されるまで、指定したセルは検索されません。 この引数が指定されていない場合、検索は範囲内の左上のセルの前に開始されます。

戻り値

範囲

注釈

検索は指定された範囲の最後に達すると、範囲の最初に戻って検索を繰り返します。 最初に戻ったときに検索を停止するには、最初に見つかったセルの位置を保存しておき、セルが見つかるたびに、その位置と保存しておいた位置を比較します。

この例では、FindPrevious メソッドを Find メソッドと FindNext メソッドと共に使用する方法を示します。 この例を実行する前に、列 B に Phoenix という単語が少なくとも 2 つ含まれていることを Sheet1 に確認してください。

Sub FindTest() 
 Dim fc As Range 
 Set fc = Worksheets("Sheet1").Columns("B").Find(what:="Phoenix") 
 MsgBox "The first occurrence is in cell " & fc.Address 
 Set fc = Worksheets("Sheet1").Columns("B").FindNext(after:=fc) 
 MsgBox "The next occurrence is in cell " & fc.Address 
 Set fc = Worksheets("Sheet1").Columns("B").FindPrevious(after:=fc) 
 MsgBox "The previous occurrence is in cell " & fc.Address 
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。