検索 : Excel(エクセル)

Excel VBAで検索するには Find を使います。パラメータを指定することで様々な検索が可能です。
探す範囲を指定し下記コードのパラメータを使用するのがもっとも単純かと思います。
LookAt:=xlWhole で完全一致検索、xlPart LookAt:=xlPart で部分検索ができます。
見つかったか見つからなかったかの判定は、Is Nothing で行います。

Excel Tipsメニューに戻る

スポンサーリンク



Excelシートコード

コマンドボタンクリックイベント
Private Sub CommandButton1_Click()
    Dim sr As String
    
    If FindString("bcd", sr) Then
        CommandButton1.Caption = "Find  Cell: " & sr
    Else
        CommandButton1.Caption = "Not Found"
    End If
End Sub

'列4から検索
'見つかれば、Trueをお返しsrowにセル位置が入る
Private Function FindString(sv As String, ByRef srow As String) As Boolean
    Dim trange As Range
            
    srow = ""
    FindString = False
    Set trange = ActiveSheet.UsedRange.Columns(4).Find(What:=sv, LookIn:=xlValues, LookAt:=xlPart)
    If Not trange Is Nothing Then
        srow = trange.Address
        FindString = True
    End If
End Function

スポンサーリンク



Excel Findコマンド

■expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

・expression 必ず指定
 Rangeオブジェクト式を指定

・What 必ず指定
 対象セル範囲内で検索する文字列等のデータ

・After 省略可能
 指定したセルの次から検索が開始

・LookIn 省略可能
 検索対象を指定 数式(xlFormulas)、値(xlValues)、コメント(xlComments)

・LookAt 省略可能
 完全に一致(xlWhole)、一部分でも一致(xlPart)

・SearchOrder 省略可能
 列方向(xlByColumns)、行方向(xlByRows)

・SearchDirection 省略可能
 検索の方向を指定 前方検索(xlNext:規定値)、後方検索(xlPrevious)

・MatchCase 省略可能
 大文字と小文字を区別するには、True を指定

・MatchByte 省略可能
 半角と全角を区別するには、True を指定

・SearchFormat 省略可能
 検索の書式を指定

Excel実行画面

・見つかった場合
見つかった場合

・見つからなかった場合
見つからなかった場合

スポンサーリンク






Excel Tipsメニューに戻る

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved